MINOR: utils: decoding configuration errors to HTTP status code

master
Dario Tranchitella 1 year ago
parent cfc7d1a74b
commit 13ba120c81
No known key found for this signature in database
GPG Key ID: 7F5CF6FE7E0A8C8
  1. 17
      misc/misc.go

@ -191,8 +191,25 @@ func ParseTimeout(tOut string) *int64 {
return nil
}
func GetHTTPStatusFromConfErr(err *configuration.ConfError) int {
switch err.Code() {
case configuration.ErrObjectDoesNotExist:
return http.StatusNotFound
case configuration.ErrObjectAlreadyExists:
return http.StatusConflict
case configuration.ErrNoParentSpecified:
return http.StatusBadRequest
default:
return http.StatusInternalServerError
}
}
func GetHTTPStatusFromErr(err error) int {
confError := &configuration.ConfError{}
switch {
case errors.As(err, &confError):
return GetHTTPStatusFromConfErr(confError)
case errors.Is(err, client_errors.ErrAlreadyExists):
return http.StatusConflict
case errors.Is(err, client_errors.ErrNotFound):

Loading…
Cancel
Save