aboutsummaryrefslogtreecommitdiff
path: root/models
diff options
context:
space:
mode:
authorUnknwon <u@gogs.io>2017-04-07 16:00:25 -0400
committerUnknwon <u@gogs.io>2017-04-07 16:00:25 -0400
commit9e3c83372f19853ac1dc164e2fcf58d9779ac0f0 (patch)
tree166972d800ff862afc91120889f0fe0c5fa45854 /models
parent809db853fa3938885aae98b058ed524b6f4aef84 (diff)
api/repo: improve migration error handling
Diffstat (limited to 'models')
-rw-r--r--models/error.go13
-rw-r--r--models/errors/repo.go13
-rw-r--r--models/repo.go2
-rw-r--r--models/user.go3
4 files changed, 16 insertions, 15 deletions
diff --git a/models/error.go b/models/error.go
index 801a91f8..08548c7d 100644
--- a/models/error.go
+++ b/models/error.go
@@ -93,19 +93,6 @@ func (err ErrUserHasOrgs) Error() string {
return fmt.Sprintf("user still has membership of organizations [uid: %d]", err.UID)
}
-type ErrReachLimitOfRepo struct {
- Limit int
-}
-
-func IsErrReachLimitOfRepo(err error) bool {
- _, ok := err.(ErrReachLimitOfRepo)
- return ok
-}
-
-func (err ErrReachLimitOfRepo) Error() string {
- return fmt.Sprintf("user has reached maximum limit of repositories [limit: %d]", err.Limit)
-}
-
// __ __.__ __ .__
// / \ / \__| | _|__|
// \ \/\/ / | |/ / |
diff --git a/models/errors/repo.go b/models/errors/repo.go
index 1995a5b4..15adb2b0 100644
--- a/models/errors/repo.go
+++ b/models/errors/repo.go
@@ -21,6 +21,19 @@ func (err RepoNotExist) Error() string {
return fmt.Sprintf("repository does not exist [id: %d, user_id: %d, name: %s]", err.ID, err.UserID, err.Name)
}
+type ReachLimitOfRepo struct {
+ Limit int
+}
+
+func IsReachLimitOfRepo(err error) bool {
+ _, ok := err.(ReachLimitOfRepo)
+ return ok
+}
+
+func (err ReachLimitOfRepo) Error() string {
+ return fmt.Sprintf("user has reached maximum limit of repositories [limit: %d]", err.Limit)
+}
+
type InvalidRepoReference struct {
Ref string
}
diff --git a/models/repo.go b/models/repo.go
index 476a7868..4741bdd6 100644
--- a/models/repo.go
+++ b/models/repo.go
@@ -1019,7 +1019,7 @@ func createRepository(e *xorm.Session, doer, owner *User, repo *Repository) (err
// CreateRepository creates a repository for given user or organization.
func CreateRepository(doer, owner *User, opts CreateRepoOptions) (_ *Repository, err error) {
if !owner.CanCreateRepo() {
- return nil, ErrReachLimitOfRepo{owner.MaxRepoCreation}
+ return nil, errors.ReachLimitOfRepo{owner.RepoCreationNum()}
}
repo := &Repository{
diff --git a/models/user.go b/models/user.go
index 79774ae8..64249971 100644
--- a/models/user.go
+++ b/models/user.go
@@ -610,8 +610,9 @@ func getVerifyUser(code string) (user *User) {
if b, err := hex.DecodeString(hexStr); err == nil {
if user, err = GetUserByName(string(b)); user != nil {
return user
+ } else if !errors.IsUserNotExist(err) {
+ log.Error(2, "GetUserByName: %v", err)
}
- log.Error(4, "user.getVerifyUser: %v", err)
}
return nil