diff options
Diffstat (limited to 'models/error.go')
-rw-r--r-- | models/error.go | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/models/error.go b/models/error.go index a434b8d6da..04f850def9 100644 --- a/models/error.go +++ b/models/error.go @@ -8,6 +8,32 @@ import ( "fmt" ) +type ErrNameReserved struct { + Name string +} + +func IsErrNameReserved(err error) bool { + _, ok := err.(ErrNameReserved) + return ok +} + +func (err ErrNameReserved) Error() string { + return fmt.Sprintf("name is reserved: [name: %s]", err.Name) +} + +type ErrNamePatternNotAllowed struct { + Pattern string +} + +func IsErrNamePatternNotAllowed(err error) bool { + _, ok := err.(ErrNamePatternNotAllowed) + return ok +} + +func (err ErrNamePatternNotAllowed) Error() string { + return fmt.Sprintf("name pattern is not allowed: [pattern: %s]", err.Pattern) +} + // ____ ___ // | | \______ ___________ // | | / ___// __ \_ __ \ @@ -15,6 +41,32 @@ import ( // |______//____ >\___ >__| // \/ \/ +type ErrUserAlreadyExist struct { + Name string +} + +func IsErrUserAlreadyExist(err error) bool { + _, ok := err.(ErrUserAlreadyExist) + return ok +} + +func (err ErrUserAlreadyExist) Error() string { + return fmt.Sprintf("user already exists: [name: %s]", err.Name) +} + +type ErrEmailAlreadyUsed struct { + Email string +} + +func IsErrEmailAlreadyUsed(err error) bool { + _, ok := err.(ErrEmailAlreadyUsed) + return ok +} + +func (err ErrEmailAlreadyUsed) Error() string { + return fmt.Sprintf("e-mail has been used: [email: %s]", err.Email) +} + type ErrUserOwnRepos struct { UID int64 } |