filebrowser/errors/errors.go
Laurynas Gadliauskas 3489df033e
feat: custome error messages (#14)
* feat: custome error messages

* errors: improve code

* errors: clean up imports

* errors: add translations

* errors: check if translation exists
2021-06-18 14:05:47 +03:00

45 lines
1.2 KiB
Go

package errors
import "errors"
var (
ErrEmptyKey = errors.New("empty key")
ErrExist = errors.New("the resource already exists")
ErrNotExist = errors.New("the resource does not exist")
ErrEmptyPassword = errors.New("password is empty")
ErrEmptyUsername = errors.New("username is empty")
ErrEmptyRequest = errors.New("empty request")
ErrScopeIsRelative = errors.New("scope is a relative path")
ErrInvalidDataType = errors.New("invalid data type")
ErrIsDirectory = errors.New("file is directory")
ErrInvalidOption = errors.New("invalid option")
ErrInvalidAuthMethod = errors.New("invalid auth method")
ErrPermissionDenied = errors.New("permission denied")
ErrInvalidRequestParams = errors.New("invalid request params")
ErrSourceIsParent = errors.New("source is parent")
ErrRootUserDeletion = errors.New("user with id 1 can't be deleted")
)
type HTTPError struct {
Err error
Type string
}
func (e *HTTPError) Error() string {
if e.Err == nil {
return e.Type
}
return e.Err.Error()
}
func (e *HTTPError) Unwrap() error {
return e.Err
}
func NewHTTPError(err error, errType string) error {
return &HTTPError{
Err: err,
Type: errType,
}
}