Improvements on API error, swagger and status code (#428)

* improvements on API error, swagger and status code

* missing validation

* removing typo

* fix if-within-if

* fix handle app delete
This commit is contained in:
Pedro Nasser
2016-12-13 19:18:52 -02:00
committed by GitHub
parent 34d6c6e101
commit 32de7d5361
13 changed files with 103 additions and 88 deletions

View File

@@ -4,7 +4,6 @@ import (
"context"
"net/http"
"github.com/Sirupsen/logrus"
"github.com/gin-gonic/gin"
"github.com/iron-io/functions/api/models"
"github.com/iron-io/runner/common"
@@ -28,13 +27,15 @@ func (s *Server) handleRouteList(c *gin.Context) {
routes, err = s.Datastore.GetRoutes(ctx, filter)
}
if err != nil {
if err == models.ErrAppsNotFound {
log.WithError(err).Debug(models.ErrRoutesGet)
c.JSON(http.StatusNotFound, simpleError(err))
return
} else if err != nil {
log.WithError(err).Error(models.ErrRoutesGet)
c.JSON(http.StatusInternalServerError, simpleError(models.ErrRoutesGet))
c.JSON(http.StatusInternalServerError, simpleError(ErrInternalServerError))
return
}
log.WithFields(logrus.Fields{"routes": routes}).Debug("Got routes")
c.JSON(http.StatusOK, routesResponse{"Sucessfully listed routes", routes})
}