From b6da06df98e73ecc71b5c993379e1e599d1078b1 Mon Sep 17 00:00:00 2001 From: John Bintz <27256+johnbintz@users.noreply.github.com> Date: Tue, 22 Feb 2022 09:00:42 -0500 Subject: [PATCH] clean up some code repetition --- server/joplin.go | 58 ++++++++++++++++++------------------------------ 1 file changed, 22 insertions(+), 36 deletions(-) diff --git a/server/joplin.go b/server/joplin.go index 156319e..476e88e 100644 --- a/server/joplin.go +++ b/server/joplin.go @@ -78,6 +78,24 @@ func (s *noteResponse) GetFrontendBody() ([]byte, error) { return res, nil } +func handleGetResponse(url string, responseTarget interface{}) error { + resp, err := http.Get(url) + if err != nil { + return err + } + + defer resp.Body.Close() + + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return err + } + + err = json.Unmarshal(body, responseTarget) + + return err +} + func performSearch(query string) (searchResponse, error) { params := appConfig.BaseParams() params.Add("query", query+"*") @@ -87,25 +105,9 @@ func performSearch(query string) (searchResponse, error) { url := appConfig.BaseURL() + "/search?" + params.Encode() - resp, err := http.Get(url) - if err != nil { - return response, err - } + err := handleGetResponse(url, &response) - defer resp.Body.Close() - - body, err := ioutil.ReadAll(resp.Body) - if err != nil { - return response, err - } - - err = json.Unmarshal(body, &response) - - if err != nil { - return response, err - } - - return response, nil + return response, err } func retrieveNote(ID string) (noteResponse, error) { @@ -116,23 +118,7 @@ func retrieveNote(ID string) (noteResponse, error) { url := appConfig.BaseURL() + "/notes/" + ID + "?" + params.Encode() - resp, err := http.Get(url) - if err != nil { - return response, err - } + err := handleGetResponse(url, &response) - defer resp.Body.Close() - - body, err := ioutil.ReadAll(resp.Body) - if err != nil { - return response, err - } - - err = json.Unmarshal(body, &response) - - if err != nil { - return response, err - } - - return response, nil + return response, err }