diff options
author | Lunny Xiao <xiaolunwen@gmail.com> | 2014-03-13 11:57:58 +0800 |
---|---|---|
committer | Lunny Xiao <xiaolunwen@gmail.com> | 2014-03-13 11:57:58 +0800 |
commit | 9b845c11150102894a8bb453d86a335a7c2a64b8 (patch) | |
tree | eb2dfbc5a6f01094b0e2e3d397d776f1a7c63fc1 /models | |
parent | 08feaf3deda4c82579375779cb27a403c4e1d79a (diff) | |
parent | 3c67318d8fcc6f61d766496a092c4be688fe8e75 (diff) |
merge
Diffstat (limited to 'models')
-rw-r--r-- | models/repo.go | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/models/repo.go b/models/repo.go index 31c2ae63..c790dc90 100644 --- a/models/repo.go +++ b/models/repo.go @@ -49,6 +49,7 @@ var ( var ( ErrRepoAlreadyExist = errors.New("Repository already exist") + ErrRepoNotExist = errors.New("Repository does not exist") ) func init() { @@ -225,6 +226,30 @@ func initRepository(f string, user *User, repo *Repository, initReadme bool, rep return nil } +func GetRepositoryByName(user *User, repoName string) (*Repository, error) { + repo := &Repository{ + OwnerId: user.Id, + LowerName: strings.ToLower(repoName), + } + has, err := orm.Get(repo) + if err != nil { + return nil, err + } else if !has { + return nil, ErrRepoNotExist + } + return repo, err +} + +func GetRepositoryById(id int64) (repo *Repository, err error) { + has, err := orm.Id(id).Get(repo) + if err != nil { + return nil, err + } else if !has { + return nil, ErrRepoNotExist + } + return repo, err +} + // GetRepositories returns the list of repositories of given user. func GetRepositories(user *User) ([]Repository, error) { repos := make([]Repository, 0, 10) |