s3browser-backend/internal/errors/errors.go

30 lines
537 B
Go

package errors
import "fmt"
var (
ErrNotAuthenticated = ExtendError("UNAUTHENTICATED", "No valid authentication provided")
)
type ExtendedError struct {
Message string
Code string
}
func (err *ExtendedError) Error() string {
return err.Message
}
func (err *ExtendedError) Extensions() map[string]interface{} {
return map[string]interface{}{
"code": err.Code,
}
}
func ExtendError(code, format string, a ...interface{}) *ExtendedError {
return &ExtendedError{
Message: fmt.Sprintf(format, a...),
Code: code,
}
}