diff options
author | 2018-10-07 18:42:43 -0700 | |
---|---|---|
committer | 2018-10-08 15:31:58 -0700 | |
commit | 1f58b37a5e86603b16e137031c36f37580e9d410 (patch) | |
tree | 337a7299e91fe7640b64489357dfe7c0f00e2313 /api/category.go | |
parent | ddfe969d6cbc8d23326cb9a3ca9a265d4e9d3e45 (diff) | |
download | v2-1f58b37a5e86603b16e137031c36f37580e9d410.tar.gz v2-1f58b37a5e86603b16e137031c36f37580e9d410.tar.zst v2-1f58b37a5e86603b16e137031c36f37580e9d410.zip |
Refactor HTTP response builder
Diffstat (limited to 'api/category.go')
-rw-r--r-- | api/category.go | 29 |
1 files changed, 14 insertions, 15 deletions
diff --git a/api/category.go b/api/category.go index b8699e2b..63435176 100644 --- a/api/category.go +++ b/api/category.go @@ -16,29 +16,28 @@ import ( func (c *Controller) CreateCategory(w http.ResponseWriter, r *http.Request) { category, err := decodeCategoryPayload(r.Body) if err != nil { - json.BadRequest(w, err) + json.BadRequest(w, r, err) return } userID := request.UserID(r) category.UserID = userID if err := category.ValidateCategoryCreation(); err != nil { - json.BadRequest(w, err) + json.BadRequest(w, r, err) return } if c, err := c.store.CategoryByTitle(userID, category.Title); err != nil || c != nil { - json.BadRequest(w, errors.New("This category already exists")) + json.BadRequest(w, r, errors.New("This category already exists")) return } - err = c.store.CreateCategory(category) - if err != nil { - json.ServerError(w, err) + if err := c.store.CreateCategory(category); err != nil { + json.ServerError(w, r, err) return } - json.Created(w, category) + json.Created(w, r, category) } // UpdateCategory is the API handler to update a category. @@ -47,31 +46,31 @@ func (c *Controller) UpdateCategory(w http.ResponseWriter, r *http.Request) { category, err := decodeCategoryPayload(r.Body) if err != nil { - json.BadRequest(w, err) + json.BadRequest(w, r, err) return } category.UserID = request.UserID(r) category.ID = categoryID if err := category.ValidateCategoryModification(); err != nil { - json.BadRequest(w, err) + json.BadRequest(w, r, err) return } err = c.store.UpdateCategory(category) if err != nil { - json.ServerError(w, err) + json.ServerError(w, r, err) return } - json.Created(w, category) + json.Created(w, r, category) } // GetCategories is the API handler to get a list of categories for a given user. func (c *Controller) GetCategories(w http.ResponseWriter, r *http.Request) { categories, err := c.store.Categories(request.UserID(r)) if err != nil { - json.ServerError(w, err) + json.ServerError(w, r, err) return } @@ -84,14 +83,14 @@ func (c *Controller) RemoveCategory(w http.ResponseWriter, r *http.Request) { categoryID := request.RouteInt64Param(r, "categoryID") if !c.store.CategoryExists(userID, categoryID) { - json.NotFound(w, errors.New("Category not found")) + json.NotFound(w, r) return } if err := c.store.RemoveCategory(userID, categoryID); err != nil { - json.ServerError(w, err) + json.ServerError(w, r, err) return } - json.NoContent(w) + json.NoContent(w, r) } |