// Copyright 2015 The Gogs Authors. All rights reserved. // Use of this source code is governed by a MIT-style // license that can be found in the LICENSE file. package models 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) } // ____ ___ // | | \______ ___________ // | | / ___// __ \_ __ \ // | | /\___ \\ ___/| | \/ // |______//____ >\___ >__| // \/ \/ 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 } func IsErrUserOwnRepos(err error) bool { _, ok := err.(ErrUserOwnRepos) return ok } func (err ErrUserOwnRepos) Error() string { return fmt.Sprintf("user still has ownership of repositories [uid: %d]", err.UID) } type ErrUserHasOrgs struct { UID int64 } func IsErrUserHasOrgs(err error) bool { _, ok := err.(ErrUserHasOrgs) return ok } func (err ErrUserHasOrgs) Error() string { return fmt.Sprintf("user still has membership of organizations [uid: %d]", err.UID) } // __ __.__ __ .__ // / \ / \__| | _|__| // \ \/\/ / | |/ / | // \ /| | <| | // \__/\ / |__|__|_ \__| // \/ \/ type ErrWikiAlreadyExist struct { Title string } func IsErrWikiAlreadyExist(err error) bool { _, ok := err.(ErrWikiAlreadyExist) return ok } func (err ErrWikiAlreadyExist) Error() string { return fmt.Sprintf("wiki page already exists [title: %s]", err.Title) } // __________ ___. .__ .__ ____ __. // \______ \__ _\_ |__ | | |__| ____ | |/ _|____ ___.__. // | ___/ | \ __ \| | | |/ ___\ | <_/ __ < | | // | | | | / \_\ \ |_| \ \___ | | \ ___/\___ | // |____| |____/|___ /____/__|\___ > |____|__ \___ > ____| // \/ \/ \/ \/\/ type ErrKeyUnableVerify struct { Result string } func IsErrKeyUnableVerify(err error) bool { _, ok := err.(ErrKeyUnableVerify) return ok } func (err ErrKeyUnableVerify) Error() string { return fmt.Sprintf("Unable to verify key content [result: %s]", err.Result) } type ErrKeyNotExist struct { ID int64 } func IsErrKeyNotExist(err error) bool { _, ok := err.(ErrKeyNotExist) return ok } func (err ErrKeyNotExist) Error() string { return fmt.Sprintf("public key does not exist [id: %d]", err.ID) } type ErrKeyAlreadyExist struct { OwnerID int64 Content string } func IsErrKeyAlreadyExist(err error) bool { _, ok := err.(ErrKeyAlreadyExist) return ok } func (err ErrKeyAlreadyExist) Error() string { return fmt.Sprintf("public key already exists [owner_id: %d, content: %s]", err.OwnerID, err.Content) } type ErrKeyNameAlreadyUsed struct { OwnerID int64 Name string } func IsErrKeyNameAlreadyUsed(err error) bool { _, ok := err.(ErrKeyNameAlreadyUsed) return ok } func (err ErrKeyNameAlreadyUsed) Error() string { return fmt.Sprintf("public key already exists [owner_id: %d, name: %s]", err.OwnerID, err.Name) } type ErrKeyAccessDenied struct { UserID int64 KeyID int64 Note string } func IsErrKeyAccessDenied(err error) bool { _, ok := err.(ErrKeyAccessDenied) return ok } func (err ErrKeyAccessDenied) Error() string { return fmt.Sprintf("user does not have access to the key [user_id: %d, key_id: %d, note: %s]", err.UserID, err.KeyID, err.Note) } type ErrDeployKeyNotExist struct { ID int64 KeyID int64 RepoID int64 } func IsErrDeployKeyNotExist(err error) bool { _, ok := err.(ErrDeployKeyNotExist) return ok } func (err ErrDeployKeyNotExist) Error() string { return fmt.Sprintf("Deploy key does not exist [id: %d, key_id: %d, repo_id: %d]", err.ID, err.KeyID, err.RepoID) } type ErrDeployKeyAlreadyExist struct { KeyID int64 RepoID int64 } func IsErrDeployKeyAlreadyExist(err error) bool { _, ok := err.(ErrDeployKeyAlreadyExist) return ok } func (err ErrDeployKeyAlreadyExist) Error() string { return fmt.Sprintf("public key already exists [key_id: %d, repo_id: %d]", err.KeyID, err.RepoID) } type ErrDeployKeyNameAlreadyUsed struct { RepoID int64 Name string } func IsErrDeployKeyNameAlreadyUsed(err error) bool { _, ok := err.(ErrDeployKeyNameAlreadyUsed) return ok } func (err ErrDeployKeyNameAlreadyUsed) Error() string { return fmt.Sprintf("public key already exists [repo_id: %d, name: %s]", err.RepoID, err.Name) } // _____ ___________ __ // / _ \ ____ ____ ____ ______ _____\__ ___/___ | | __ ____ ____ // / /_\ \_/ ___\/ ___\/ __ \ / ___// ___/ | | / _ \| |/ // __ \ / \ // / | \ \__\ \__\ ___/ \___ \ \___ \ | |( <_> ) <\ ___/| | \ // \____|__ /\___ >___ >___ >____ >____ > |____| \____/|__|_ \\___ >___| / // \/ \/ \/ \/ \/ \/ \/ \/ \/ type ErrAccessTokenNotExist struct { SHA string } func IsErrAccessTokenNotExist(err error) bool { _, ok := err.(ErrAccessTokenNotExist) return ok } func (err ErrAccessTokenNotExist) Error() string { return fmt.Sprintf("access token does not exist [sha: %s]", err.SHA) } type ErrAccessTokenEmpty struct { } func IsErrAccessTokenEmpty(err error) bool { _, ok := err.(ErrAccessTokenEmpty) return ok } func (err ErrAccessTokenEmpty) Error() string { return fmt.Sprintf("access token is empty") } // ________ .__ __ .__ // \_____ \_______ _________ ____ |__|____________ _/ |_|__| ____ ____ // / | \_ __ \/ ___\__ \ / \| \___ /\__ \\ __\ |/ _ \ / \ // / | \ | \/ /_/ > __ \| | \ |/ / / __ \| | | ( <_> ) | \ // \_______ /__| \___ (____ /___| /__/_____ \(____ /__| |__|\____/|___| / // \/ /_____/ \/ \/ \/ \/ \/ type ErrLastOrgOwner struct { UID int64 } func IsErrLastOrgOwner(err error) bool { _, ok := err.(ErrLastOrgOwner) return ok } func (err ErrLastOrgOwner) Error() string { return fmt.Sprintf("user is the last member of owner team [uid: %d]", err.UID) } // __________ .__ __ // \______ \ ____ ______ ____ _____|__|/ |_ ___________ ___.__. // | _// __ \\____ \ / _ \/ ___/ \ __\/ _ \_ __ < | | // | | \ ___/| |_> > <_> )___ \| || | ( <_> ) | \/\___ | // |____|_ /\___ > __/ \____/____ >__||__| \____/|__| / ____| // \/ \/|__| \/ \/ type ErrRepoAlreadyExist struct { Uname string Name string } func IsErrRepoAlreadyExist(err error) bool { _, ok := err.(ErrRepoAlreadyExist) return ok } func (err ErrRepoAlreadyExist) Error() string { return fmt.Sprintf("repository already exists [uname: %s, name: %s]", err.Uname, err.Name) } type ErrInvalidCloneAddr struct { IsURLError bool IsInvalidPath bool IsPermissionDenied bool } func IsErrInvalidCloneAddr(err error) bool { _, ok := err.(ErrInvalidCloneAddr) return ok } func (err ErrInvalidCloneAddr) Error() string { return fmt.Sprintf("invalid clone address [is_url_error: %v, is_invalid_path: %v, is_permission_denied: %v]", err.IsURLError, err.IsInvalidPath, err.IsPermissionDenied) } type ErrUpdateTaskNotExist struct { UUID string } func IsErrUpdateTaskNotExist(err error) bool { _, ok := err.(ErrUpdateTaskNotExist) return ok } func (err ErrUpdateTaskNotExist) Error() string { return fmt.Sprintf("update task does not exist [uuid: %s]", err.UUID) } type ErrReleaseAlreadyExist struct { TagName string } func IsErrReleaseAlreadyExist(err error) bool { _, ok := err.(ErrReleaseAlreadyExist) return ok } func (err ErrReleaseAlreadyExist) Error() string { return fmt.Sprintf("release tag already exist [tag_name: %s]", err.TagName) } type ErrReleaseNotExist struct { ID int64 TagName string } func IsErrReleaseNotExist(err error) bool { _, ok := err.(ErrReleaseNotExist) return ok } func (err ErrReleaseNotExist) Error() string { return fmt.Sprintf("release tag does not exist [id: %d, tag_name: %s]", err.ID, err.TagName) } type ErrInvalidTagName struct { TagName string } func IsErrInvalidTagName(err error) bool { _, ok := err.(ErrInvalidTagName) return ok } func (err ErrInvalidTagName) Error() string { return fmt.Sprintf("release tag name is not valid [tag_name: %s]", err.TagName) } type ErrRepoFileAlreadyExist struct { FileName string } func IsErrRepoFileAlreadyExist(err error) bool { _, ok := err.(ErrRepoFileAlreadyExist) return ok } func (err ErrRepoFileAlreadyExist) Error() string { return fmt.Sprintf("repository file already exists [file_name: %s]", err.FileName) } // __________ .__ .__ __________ __ // \______ \__ __| | | |\______ \ ____ ________ __ ____ _______/ |_ // | ___/ | \ | | | | _// __ \/ ____/ | \_/ __ \ / ___/\ __\ // | | | | / |_| |_| | \ ___< <_| | | /\ ___/ \___ \ | | // |____| |____/|____/____/____|_ /\___ >__ |____/ \___ >____ > |__| // \/ \/ |__| \/ \/ type ErrPullRequestNotExist struct { ID int64 IssueID int64 HeadRepoID int64 BaseRepoID int64 HeadBarcnh string BaseBranch string } func IsErrPullRequestNotExist(err error) bool { _, ok := err.(ErrPullRequestNotExist) return ok } func (err ErrPullRequestNotExist) Error() string { return fmt.Sprintf("pull request does not exist [id: %d, issue_id: %d, head_repo_id: %d, base_repo_id: %d, head_branch: %s, base_branch: %s]", err.ID, err.IssueID, err.HeadRepoID, err.BaseRepoID, err.HeadBarcnh, err.BaseBranch) } type ErrPullRequestExist struct { ID int64 IssueID int64 HeadRepoID int64 BaseRepoID int64 HeadBarcnh string BaseBranch string } func (err ErrPullRequestExist) Error() string { return fmt.Sprintf("pull request already exist [id: %d, issue_id: %d, head_repo_id: %d, base_repo_id: %d, head_branch: %s, base_branch: %s]", err.ID, err.IssueID, err.HeadRepoID, err.BaseRepoID, err.HeadBarcnh, err.BaseBranch) } // _________ __ // \_ ___ \ ____ _____ _____ ____ _____/ |_ // / \ \/ / _ \ / \ / \_/ __ \ / \ __\ // \ \___( <_> ) Y Y \ Y Y \ ___/| | \ | // \______ /\____/|__|_| /__|_| /\___ >___| /__| // \/ \/ \/ \/ \/ type ErrCommentNotExist struct { ID int64 IssueID int64 } func IsErrCommentNotExist(err error) bool { _, ok := err.(ErrCommentNotExist) return ok } func (err ErrCommentNotExist) Error() string { return fmt.Sprintf("comment does not exist [id: %d, issue_id: %d]", err.ID, err.IssueID) } // .____ ___. .__ // | | _____ \_ |__ ____ | | // | | \__ \ | __ \_/ __ \| | // | |___ / __ \| \_\ \ ___/| |__ // |_______ (____ /___ /\___ >____/ // \/ \/ \/ \/ type ErrLabelNotExist struct { LabelID int64 RepoID int64 } func IsErrLabelNotExist(err error) bool { _, ok := err.(ErrLabelNotExist) return ok } func (err ErrLabelNotExist) Error() string { return fmt.Sprintf("label does not exist [label_id: %d, repo_id: %d]", err.LabelID, err.RepoID) } // _____ .__.__ __ // / \ |__| | ____ _______/ |_ ____ ____ ____ // / \ / \| | | _/ __ \ / ___/\ __\/ _ \ / \_/ __ \ // / Y \ | |_\ ___/ \___ \ | | ( <_> ) | \ ___/ // \____|__ /__|____/\___ >____ > |__| \____/|___| /\___ > // \/ \/ \/ \/ \/ type ErrMilestoneNotExist struct { ID int64 RepoID int64 } func IsErrMilestoneNotExist(err error) bool { _, ok := err.(ErrMilestoneNotExist) return ok } func (err ErrMilestoneNotExist) Error() string { return fmt.Sprintf("milestone does not exist [id: %d, repo_id: %d]", err.ID, err.RepoID) } // _____ __ __ .__ __ // / _ \_/ |__/ |______ ____ | |__ _____ ____ _____/ |_ // / /_\ \ __\ __\__ \ _/ ___\| | \ / \_/ __ \ / \ __\ // / | \ | | | / __ \\ \___| Y \ Y Y \ ___/| | \ | // \____|__ /__| |__| (____ /\___ >___| /__|_| /\___ >___| /__| // \/ \/ \/ \/ \/ \/ \/ type ErrAttachmentNotExist struct { ID int64 UUID string } func IsErrAttachmentNotExist(err error) bool { _, ok := err.(ErrAttachmentNotExist) return ok } func (err ErrAttachmentNotExist) Error() string { return fmt.Sprintf("attachment does not exist [id: %d, uuid: %s]", err.ID, err.UUID) } // .____ .__ _________ // | | ____ ____ |__| ____ / _____/ ____ __ _________ ____ ____ // | | / _ \ / ___\| |/ \ \_____ \ / _ \| | \_ __ \_/ ___\/ __ \ // | |__( <_> ) /_/ > | | \ / ( <_> ) | /| | \/\ \__\ ___/ // |_______ \____/\___ /|__|___| / /_______ /\____/|____/ |__| \___ >___ > // \/ /_____/ \/ \/ \/ \/ type ErrLoginSourceAlreadyExist struct { Name string } func IsErrLoginSourceAlreadyExist(err error) bool { _, ok := err.(ErrLoginSourceAlreadyExist) return ok } func (err ErrLoginSourceAlreadyExist) Error() string { return fmt.Sprintf("login source already exists [name: %s]", err.Name) } type ErrLoginSourceInUse struct { ID int64 } func IsErrLoginSourceInUse(err error) bool { _, ok := err.(ErrLoginSourceInUse) return ok } func (err ErrLoginSourceInUse) Error() string { return fmt.Sprintf("login source is still used by some users [id: %d]", err.ID) } // ___________ // \__ ___/___ _____ _____ // | |_/ __ \\__ \ / \ // | |\ ___/ / __ \| Y Y \ // |____| \___ >____ /__|_| / // \/ \/ \/ type ErrTeamAlreadyExist struct { OrgID int64 Name string } func IsErrTeamAlreadyExist(err error) bool { _, ok := err.(ErrTeamAlreadyExist) return ok } func (err ErrTeamAlreadyExist) Error() string { return fmt.Sprintf("team already exists [org_id: %d, name: %s]", err.OrgID, err.Name) } // ____ ___ .__ .___ // | | \______ | | _________ __| _/ // | | /\____ \| | / _ \__ \ / __ | // | | / | |_> > |_( <_> ) __ \_/ /_/ | // |______/ | __/|____/\____(____ /\____ | // |__| \/ \/ // type ErrUploadNotExist struct { ID int64 UUID string } func IsErrUploadNotExist(err error) bool { _, ok := err.(ErrAttachmentNotExist) return ok } func (err ErrUploadNotExist) Error() string { return fmt.Sprintf("attachment does not exist [id: %d, uuid: %s]", err.ID, err.UUID) }