From 91397481f020ad8cca4e8234c735a67d895bdda8 Mon Sep 17 00:00:00 2001 From: filifa Date: Sun, 14 Jul 2024 13:32:25 -0500 Subject: [PATCH] make a diffpatchresponse type --- internal/statsapi/client.go | 10 ++++++---- main.go | 2 +- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/internal/statsapi/client.go b/internal/statsapi/client.go index a740bf7..c3e8f11 100644 --- a/internal/statsapi/client.go +++ b/internal/statsapi/client.go @@ -19,10 +19,12 @@ func RequestFeed(gamePk string) ([]byte, error) { return DefaultClient.RequestFeed(gamePk) } -func RequestDiffPatch(gamePk, startTimecode, pushUpdateId string) ([]byte, error) { +func RequestDiffPatch(gamePk, startTimecode, pushUpdateId string) (DiffPatchResponse, error) { return DefaultClient.RequestDiffPatch(gamePk, startTimecode, pushUpdateId) } +type DiffPatchResponse []byte + type Client struct { baseURL url.URL httpClient *http.Client @@ -38,11 +40,11 @@ func NewClient(c *http.Client) *Client { } } -func ExtractPatches(diffPatch []byte) ([]jsonpatch.Patch, error) { +func (resp *DiffPatchResponse) ExtractPatches() ([]jsonpatch.Patch, error) { var patches []jsonpatch.Patch var objs []map[string]any - err := json.Unmarshal(diffPatch, &objs) + err := json.Unmarshal([]byte(*resp), &objs) if err != nil { return patches, err } @@ -83,7 +85,7 @@ func (c *Client) RequestFeed(gamePk string) ([]byte, error) { return c.get(url.String()) } -func (c *Client) RequestDiffPatch(gamePk, startTimecode, pushUpdateId string) ([]byte, error) { +func (c *Client) RequestDiffPatch(gamePk, startTimecode, pushUpdateId string) (DiffPatchResponse, error) { endpoint := url.URL{Path: "api/v1.1/game/" + gamePk + "/feed/live/diffPatch"} query := endpoint.Query() query.Add("language", "en") diff --git a/main.go b/main.go index f68ec6d..4f8e234 100644 --- a/main.go +++ b/main.go @@ -54,7 +54,7 @@ func updateFeed(feedResp []byte, gamePk, ts, updateId string) ([]byte, error) { return statsapi.RequestFeed(gamePk) } - patches, err := statsapi.ExtractPatches(diffPatchResp) + patches, err := diffPatchResp.ExtractPatches() if err != nil { return statsapi.RequestFeed(gamePk) }