Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
These aliased values are added to avoid conflicting imports of standard `errors` package and this `errors` package where these functions are needed.
var ( ErrInvalid = Error{ Code: "bad_request", Message: "Request is not valid", Status: http.StatusBadRequest, } ErrNotFound = Error{ Code: "not_found", Message: "Requested entity not found", Status: http.StatusNotFound, } ErrConflict = Error{ Code: "conflict", Message: "An entity with conflicting identifier exists", Status: http.StatusConflict, } ErrInternal = Error{ Code: "internal_error", Message: "Some unexpected error occurred", Status: http.StatusInternalServerError, } )
Common error categories. Use `ErrX.WithXXX()` to clone and add context.
Functions ¶
func Errorf ¶
Errorf returns a formatted error similar to `fmt.Errorf` but uses the Error type defined in this package. returned value is equivalent to ErrInternal (i.e., errors.Is(retVal, ErrInternal) = true).
Types ¶
type Error ¶
type Error struct { Op string `json:"op"` Code string `json:"code"` Cause string `json:"cause,omitempty"` Message string `json:"message"` Status int `json:"status"` }
Error represents any error returned by the Entropy components along with any relevant context.
func (Error) HTTPStatus ¶ added in v0.1.1
HTTPStatus returns the http code for the error.
func (Error) Is ¶
Is checks if 'other' is of type Error and has the same code. See https://blog.golang.org/go1.13-errors.
func (Error) WithCausef ¶
WithCausef returns clone of err with the cause added. Use this when you need to provide description of the underlying technical root-cause which may be written in log for debugging purposes. Cause will be shown to the user only when the Message is empty.