commit 49e200e1bf5862fe2a396ba4b3fa1646aa09e3ee from: Oliver Lowe date: Thu Feb 03 00:05:22 2022 UTC Remove unnecessary parseAPIResponse function All this did was wrap the usual standard library JSON decode procedure. commit - 9feb16b3670b92265319b98dbd2bdcb5d8f21db7 commit + 49e200e1bf5862fe2a396ba4b3fa1646aa09e3ee blob - 34a31310531c880fa5377514dc2fc12e2824bc68 blob + 0042626d8b6c62497ccda2ee3b29aa3ec02ba68d --- icinga.go +++ icinga.go @@ -50,6 +50,7 @@ package icinga import ( + "encoding/json" "errors" "net/http" ) @@ -92,8 +93,8 @@ func Permissions(c *Client) ([]string, error) { return nil, errors.New(resp.Status) } defer resp.Body.Close() - apiresp, err := parseAPIResponse(resp.Body) - if err != nil { + var apiresp apiResponse + if err := json.NewDecoder(resp.Body).Decode(&apiresp); err != nil { return nil, err } return apiresp.Results[0].Permissions, nil blob - c2a79861f1e2ae314c22000331bd19aef8938768 blob + 2c74044e18d07503f9b09c5b2134ab2851706ba2 --- response.go +++ response.go @@ -24,17 +24,9 @@ type response struct { Error error } -func parseAPIResponse(r io.Reader) (apiResponse, error) { +func parseResponse(r io.Reader) (*response, error) { var apiresp apiResponse if err := json.NewDecoder(r).Decode(&apiresp); err != nil { - return apiResponse{}, err - } - return apiresp, nil -} - -func parseResponse(r io.Reader) (*response, error) { - apiresp, err := parseAPIResponse(r) - if err != nil { return nil, err } // Confusingly the top-level status field in an API response contains