filebrowser/errors/errors.go

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,
}
}