mirror of
https://github.com/hanzoai/forge.git
synced 2026-10-30 15:00:39 +00:00
Source files keep their SPDX-License-Identifier and Hanzo copyright line; the Gitea, Gogs and LFS Test Server copyrights they used to repeat now live once in NOTICE, alongside LICENSE. The header lint accepts any copyright line above the SPDX line, so it no longer demands an upstream one. Co-authored-by: Hanzo Dev <[email protected]>
89 lines
2.1 KiB
Go
89 lines
2.1 KiB
Go
// Copyright 2026 Hanzo AI, Inc. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package user
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/hanzoai/git/modules/util"
|
|
)
|
|
|
|
// ErrUserAlreadyExist represents a "user already exists" error.
|
|
type ErrUserAlreadyExist struct {
|
|
Name string
|
|
}
|
|
|
|
// IsErrUserAlreadyExist checks if an error is a ErrUserAlreadyExists.
|
|
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)
|
|
}
|
|
|
|
// Unwrap unwraps this error as a ErrExist error
|
|
func (err ErrUserAlreadyExist) Unwrap() error {
|
|
return util.ErrAlreadyExist
|
|
}
|
|
|
|
// ErrUserNotExist represents a "UserNotExist" kind of error.
|
|
type ErrUserNotExist struct {
|
|
UID int64
|
|
Name string
|
|
}
|
|
|
|
// IsErrUserNotExist checks if an error is a ErrUserNotExist.
|
|
func IsErrUserNotExist(err error) bool {
|
|
_, ok := err.(ErrUserNotExist)
|
|
return ok
|
|
}
|
|
|
|
func (err ErrUserNotExist) Error() string {
|
|
return fmt.Sprintf("user does not exist [uid: %d, name: %s]", err.UID, err.Name)
|
|
}
|
|
|
|
// Unwrap unwraps this error as a ErrNotExist error
|
|
func (err ErrUserNotExist) Unwrap() error {
|
|
return util.ErrNotExist
|
|
}
|
|
|
|
// ErrUserProhibitLogin represents a "ErrUserProhibitLogin" kind of error.
|
|
type ErrUserProhibitLogin struct {
|
|
UID int64
|
|
Name string
|
|
}
|
|
|
|
// IsErrUserProhibitLogin checks if an error is a ErrUserProhibitLogin
|
|
func IsErrUserProhibitLogin(err error) bool {
|
|
_, ok := err.(ErrUserProhibitLogin)
|
|
return ok
|
|
}
|
|
|
|
func (err ErrUserProhibitLogin) Error() string {
|
|
return fmt.Sprintf("user is not allowed login [uid: %d, name: %s]", err.UID, err.Name)
|
|
}
|
|
|
|
// Unwrap unwraps this error as a ErrPermission error
|
|
func (err ErrUserProhibitLogin) Unwrap() error {
|
|
return util.ErrPermissionDenied
|
|
}
|
|
|
|
// ErrUserIsNotLocal represents a "ErrUserIsNotLocal" kind of error.
|
|
type ErrUserIsNotLocal struct {
|
|
UID int64
|
|
Name string
|
|
}
|
|
|
|
func (err ErrUserIsNotLocal) Error() string {
|
|
return fmt.Sprintf("user is not local type [uid: %d, name: %s]", err.UID, err.Name)
|
|
}
|
|
|
|
// IsErrUserIsNotLocal
|
|
func IsErrUserIsNotLocal(err error) bool {
|
|
_, ok := err.(ErrUserIsNotLocal)
|
|
return ok
|
|
}
|