aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUnknwon <u@gogs.io>2017-03-23 14:27:34 -0400
committerUnknwon <u@gogs.io>2017-03-23 14:27:34 -0400
commitbeee6e03b15e594f396fb2fb769b58e543ef1794 (patch)
tree471a20e88e3ee8c1bfcd39d6bef2f420ed618287
parent902372067cad9cfe7360473d1b985217a308a949 (diff)
error: move ErrRepoNotExist -> errors.RepoNotExist
-rw-r--r--cmd/serv.go2
-rw-r--r--models/access.go4
-rw-r--r--models/error.go15
-rw-r--r--models/errors/repo.go15
-rw-r--r--models/pull.go2
-rw-r--r--models/repo.go10
-rw-r--r--modules/context/repo.go4
-rw-r--r--routers/api/v1/admin/org_repo.go3
-rw-r--r--routers/api/v1/api.go2
-rw-r--r--routers/api/v1/repo/repo.go2
-rw-r--r--routers/org/teams.go2
-rw-r--r--routers/repo/http.go2
-rw-r--r--routers/repo/pull.go4
13 files changed, 35 insertions, 32 deletions
diff --git a/cmd/serv.go b/cmd/serv.go
index 41ec7c7c..763dc864 100644
--- a/cmd/serv.go
+++ b/cmd/serv.go
@@ -162,7 +162,7 @@ func runServ(c *cli.Context) error {
repo, err := models.GetRepositoryByName(owner.ID, repoName)
if err != nil {
- if models.IsErrRepoNotExist(err) {
+ if errors.IsRepoNotExist(err) {
fail(_ACCESS_DENIED_MESSAGE, "Repository does not exist: %s/%s", owner.Name, repoName)
}
fail("Internal error", "Fail to get repository: %v", err)
diff --git a/models/access.go b/models/access.go
index 75af8485..0d3259de 100644
--- a/models/access.go
+++ b/models/access.go
@@ -8,6 +8,8 @@ import (
"fmt"
log "gopkg.in/clog.v1"
+
+ "github.com/gogits/gogs/models/errors"
)
type AccessMode int
@@ -109,7 +111,7 @@ func (u *User) GetRepositoryAccesses() (map[*Repository]AccessMode, error) {
for _, access := range accesses {
repo, err := GetRepositoryByID(access.RepoID)
if err != nil {
- if IsErrRepoNotExist(err) {
+ if errors.IsRepoNotExist(err) {
log.Error(4, "GetRepositoryByID: %v", err)
continue
}
diff --git a/models/error.go b/models/error.go
index 72edb560..801a91f8 100644
--- a/models/error.go
+++ b/models/error.go
@@ -305,21 +305,6 @@ func (err ErrLastOrgOwner) Error() string {
// |____|_ /\___ > __/ \____/____ >__||__| \____/|__| / ____|
// \/ \/|__| \/ \/
-type ErrRepoNotExist struct {
- ID int64
- UID int64
- Name string
-}
-
-func IsErrRepoNotExist(err error) bool {
- _, ok := err.(ErrRepoNotExist)
- return ok
-}
-
-func (err ErrRepoNotExist) Error() string {
- return fmt.Sprintf("repository does not exist [id: %d, uid: %d, name: %s]", err.ID, err.UID, err.Name)
-}
-
type ErrRepoAlreadyExist struct {
Uname string
Name string
diff --git a/models/errors/repo.go b/models/errors/repo.go
index 9abcaaa9..1995a5b4 100644
--- a/models/errors/repo.go
+++ b/models/errors/repo.go
@@ -6,6 +6,21 @@ package errors
import "fmt"
+type RepoNotExist struct {
+ ID int64
+ UserID int64
+ Name string
+}
+
+func IsRepoNotExist(err error) bool {
+ _, ok := err.(RepoNotExist)
+ return ok
+}
+
+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 InvalidRepoReference struct {
Ref string
}
diff --git a/models/pull.go b/models/pull.go
index 9db6791b..d7a8e36f 100644
--- a/models/pull.go
+++ b/models/pull.go
@@ -88,7 +88,7 @@ func (pr *PullRequest) AfterSet(colName string, _ xorm.Cell) {
func (pr *PullRequest) loadAttributes(e Engine) (err error) {
if pr.HeadRepo == nil {
pr.HeadRepo, err = getRepositoryByID(e, pr.HeadRepoID)
- if err != nil && !IsErrRepoNotExist(err) {
+ if err != nil && !errors.IsRepoNotExist(err) {
return fmt.Errorf("getRepositoryByID.(HeadRepo) [%d]: %v", pr.HeadRepoID, err)
}
}
diff --git a/models/repo.go b/models/repo.go
index 751850d8..0f448ba6 100644
--- a/models/repo.go
+++ b/models/repo.go
@@ -1366,7 +1366,7 @@ func DeleteRepository(uid, repoID int64) error {
if err != nil {
return err
} else if !has {
- return ErrRepoNotExist{repoID, uid, ""}
+ return errors.RepoNotExist{repoID, uid, ""}
}
// In case is a organization.
@@ -1503,9 +1503,9 @@ func GetRepositoryByName(ownerID int64, name string) (*Repository, error) {
if err != nil {
return nil, err
} else if !has {
- return nil, ErrRepoNotExist{0, ownerID, name}
+ return nil, errors.RepoNotExist{0, ownerID, name}
}
- return repo, err
+ return repo, repo.LoadAttributes()
}
func getRepositoryByID(e Engine, id int64) (*Repository, error) {
@@ -1514,9 +1514,9 @@ func getRepositoryByID(e Engine, id int64) (*Repository, error) {
if err != nil {
return nil, err
} else if !has {
- return nil, ErrRepoNotExist{id, 0, ""}
+ return nil, errors.RepoNotExist{id, 0, ""}
}
- return repo, nil
+ return repo, repo.loadAttributes(e)
}
// GetRepositoryByID returns the repository by given id if exists.
diff --git a/modules/context/repo.go b/modules/context/repo.go
index 4a3ccf97..d3475e43 100644
--- a/modules/context/repo.go
+++ b/modules/context/repo.go
@@ -111,7 +111,7 @@ func (r *Repository) PullRequestURL(baseBranch, headBranch string) string {
func RetrieveBaseRepo(ctx *Context, repo *models.Repository) {
// Non-fork repository will not return error in this method.
if err := repo.GetBaseRepo(); err != nil {
- if models.IsErrRepoNotExist(err) {
+ if errors.IsRepoNotExist(err) {
repo.IsFork = false
repo.ForkID = 0
return
@@ -180,7 +180,7 @@ func RepoAssignment() macaron.Handler {
// Get repository.
repo, err := models.GetRepositoryByName(owner.ID, repoName)
if err != nil {
- if models.IsErrRepoNotExist(err) {
+ if errors.IsRepoNotExist(err) {
if ctx.Query("go-get") == "1" {
earlyResponseForGoGetMeta(ctx)
return
diff --git a/routers/api/v1/admin/org_repo.go b/routers/api/v1/admin/org_repo.go
index 71c84ad0..050f4577 100644
--- a/routers/api/v1/admin/org_repo.go
+++ b/routers/api/v1/admin/org_repo.go
@@ -6,13 +6,14 @@ package admin
import (
"github.com/gogits/gogs/models"
+ "github.com/gogits/gogs/models/errors"
"github.com/gogits/gogs/modules/context"
)
func GetRepositoryByParams(ctx *context.APIContext) *models.Repository {
repo, err := models.GetRepositoryByName(ctx.Org.Team.OrgID, ctx.Params(":reponame"))
if err != nil {
- if models.IsErrRepoNotExist(err) {
+ if errors.IsRepoNotExist(err) {
ctx.Status(404)
} else {
ctx.Error(500, "GetRepositoryByName", err)
diff --git a/routers/api/v1/api.go b/routers/api/v1/api.go
index 6a9c5441..ad235540 100644
--- a/routers/api/v1/api.go
+++ b/routers/api/v1/api.go
@@ -52,7 +52,7 @@ func repoAssignment() macaron.Handler {
// Get repository.
repo, err := models.GetRepositoryByName(owner.ID, repoName)
if err != nil {
- if models.IsErrRepoNotExist(err) {
+ if errors.IsRepoNotExist(err) {
ctx.Status(404)
} else {
ctx.Error(500, "GetRepositoryByName", err)
diff --git a/routers/api/v1/repo/repo.go b/routers/api/v1/repo/repo.go
index 7ff47a2d..99ae391d 100644
--- a/routers/api/v1/repo/repo.go
+++ b/routers/api/v1/repo/repo.go
@@ -291,7 +291,7 @@ func parseOwnerAndRepo(ctx *context.APIContext) (*models.User, *models.Repositor
repo, err := models.GetRepositoryByName(owner.ID, ctx.Params(":reponame"))
if err != nil {
- if models.IsErrRepoNotExist(err) {
+ if errors.IsRepoNotExist(err) {
ctx.Status(404)
} else {
ctx.Error(500, "GetRepositoryByName", err)
diff --git a/routers/org/teams.go b/routers/org/teams.go
index 503739de..abd2fd9e 100644
--- a/routers/org/teams.go
+++ b/routers/org/teams.go
@@ -121,7 +121,7 @@ func TeamsRepoAction(ctx *context.Context) {
var repo *models.Repository
repo, err = models.GetRepositoryByName(ctx.Org.Organization.ID, repoName)
if err != nil {
- if models.IsErrRepoNotExist(err) {
+ if errors.IsRepoNotExist(err) {
ctx.Flash.Error(ctx.Tr("org.teams.add_nonexistent_repo"))
ctx.Redirect(ctx.Org.OrgLink + "/teams/" + ctx.Org.Team.LowerName + "/repositories")
return
diff --git a/routers/repo/http.go b/routers/repo/http.go
index b385a13a..e1cc5f96 100644
--- a/routers/repo/http.go
+++ b/routers/repo/http.go
@@ -66,7 +66,7 @@ func HTTPContexter() macaron.Handler {
repo, err := models.GetRepositoryByName(owner.ID, repoName)
if err != nil {
- ctx.NotFoundOrServerError("GetRepositoryByName", models.IsErrRepoNotExist, err)
+ ctx.NotFoundOrServerError("GetRepositoryByName", errors.IsRepoNotExist, err)
return
}
diff --git a/routers/repo/pull.go b/routers/repo/pull.go
index aa61dcd9..51d34877 100644
--- a/routers/repo/pull.go
+++ b/routers/repo/pull.go
@@ -42,7 +42,7 @@ var (
func parseBaseRepository(ctx *context.Context) *models.Repository {
baseRepo, err := models.GetRepositoryByID(ctx.ParamsInt64(":repoid"))
if err != nil {
- ctx.NotFoundOrServerError("GetRepositoryByID", models.IsErrRepoNotExist, err)
+ ctx.NotFoundOrServerError("GetRepositoryByID", errors.IsRepoNotExist, err)
return nil
}
@@ -718,7 +718,7 @@ func parseOwnerAndRepo(ctx *context.Context) (*models.User, *models.Repository)
repo, err := models.GetRepositoryByName(owner.ID, ctx.Params(":reponame"))
if err != nil {
- ctx.NotFoundOrServerError("GetRepositoryByName", models.IsErrRepoNotExist, err)
+ ctx.NotFoundOrServerError("GetRepositoryByName", errors.IsRepoNotExist, err)
return nil, nil
}