From c753b5dfeb5a40ef2c82b2aaa573711c1c508d60 Mon Sep 17 00:00:00 2001 From: Anis Elleuch Date: Thu, 26 Jan 2017 01:01:29 +0100 Subject: [PATCH] madmin: All APIs return ErrorResponse error type (#3632) Avoid returning errors.New("Got HTTP Status") in all APIs --- pkg/madmin/heal-commands.go | 12 ++++++------ pkg/madmin/lock-commands.go | 5 ++--- pkg/madmin/{service.go => service-commands.go} | 4 ++-- 3 files changed, 10 insertions(+), 11 deletions(-) rename pkg/madmin/{service.go => service-commands.go} (97%) diff --git a/pkg/madmin/heal-commands.go b/pkg/madmin/heal-commands.go index 09a2f791b..7544a8f89 100644 --- a/pkg/madmin/heal-commands.go +++ b/pkg/madmin/heal-commands.go @@ -19,7 +19,6 @@ package madmin import ( "encoding/xml" - "errors" "fmt" "net/http" "net/url" @@ -207,7 +206,8 @@ func (adm *AdminClient) listObjectsHeal(bucket, prefix, marker, delimiter string } if resp.StatusCode != http.StatusOK { - return toBeHealedObjects, errors.New("Got HTTP Status: " + resp.Status) + return toBeHealedObjects, httpRespToErrorResponse(resp) + } err = xml.NewDecoder(resp.Body).Decode(&toBeHealedObjects) @@ -309,7 +309,7 @@ func (adm *AdminClient) ListBucketsHeal() ([]BucketInfo, error) { } if resp.StatusCode != http.StatusOK { - return []BucketInfo{}, errors.New("Got HTTP Status: " + resp.Status) + return []BucketInfo{}, httpRespToErrorResponse(resp) } var listBucketsHealResult ListBucketsHealResponse @@ -364,7 +364,7 @@ func (adm *AdminClient) HealBucket(bucket string, dryrun bool) error { } if resp.StatusCode != http.StatusOK { - return errors.New("Got HTTP Status: " + resp.Status) + return httpRespToErrorResponse(resp) } return nil @@ -398,7 +398,7 @@ func (adm *AdminClient) HealObject(bucket, object string, dryrun bool) error { } if resp.StatusCode != http.StatusOK { - return errors.New("Got HTTP Status: " + resp.Status) + return httpRespToErrorResponse(resp) } return nil @@ -430,7 +430,7 @@ func (adm *AdminClient) HealFormat(dryrun bool) error { } if resp.StatusCode != http.StatusOK { - return errors.New("Got HTTP Status: " + resp.Status) + return httpRespToErrorResponse(resp) } return nil diff --git a/pkg/madmin/lock-commands.go b/pkg/madmin/lock-commands.go index 5b7e15cb9..7285a82d5 100644 --- a/pkg/madmin/lock-commands.go +++ b/pkg/madmin/lock-commands.go @@ -19,7 +19,6 @@ package madmin import ( "encoding/json" - "errors" "io" "io/ioutil" "net/http" @@ -118,7 +117,7 @@ func (adm *AdminClient) ListLocks(bucket, prefix string, olderThan time.Duration } if resp.StatusCode != http.StatusOK { - return nil, errors.New("Got HTTP Status: " + resp.Status) + return nil, httpRespToErrorResponse(resp) } return getLockInfos(resp.Body) @@ -150,7 +149,7 @@ func (adm *AdminClient) ClearLocks(bucket, prefix string, olderThan time.Duratio } if resp.StatusCode != http.StatusOK { - return nil, errors.New("Got HTTP Status: " + resp.Status) + return nil, httpRespToErrorResponse(resp) } return getLockInfos(resp.Body) diff --git a/pkg/madmin/service.go b/pkg/madmin/service-commands.go similarity index 97% rename from pkg/madmin/service.go rename to pkg/madmin/service-commands.go index d5c732cb1..37869cd6e 100644 --- a/pkg/madmin/service.go +++ b/pkg/madmin/service-commands.go @@ -92,7 +92,7 @@ func (adm *AdminClient) ServiceStatus() (ServiceStatusMetadata, error) { // Check response http status code if resp.StatusCode != http.StatusOK { - return ServiceStatusMetadata{}, errors.New("Got HTTP Status: " + resp.Status) + return ServiceStatusMetadata{}, httpRespToErrorResponse(resp) } // Unmarshal the server's json response @@ -129,7 +129,7 @@ func (adm *AdminClient) ServiceRestart() error { } if resp.StatusCode != http.StatusOK { - return errors.New("Got HTTP Status: " + resp.Status) + return httpRespToErrorResponse(resp) } return nil }