summaryrefslogtreecommitdiffstats
path: root/models/repo_list.go
diff options
context:
space:
mode:
Diffstat (limited to 'models/repo_list.go')
-rw-r--r--models/repo_list.go20
1 files changed, 11 insertions, 9 deletions
diff --git a/models/repo_list.go b/models/repo_list.go
index 4b76cbc08b..d1974d77e7 100644
--- a/models/repo_list.go
+++ b/models/repo_list.go
@@ -5,6 +5,7 @@
package models
import (
+ "context"
"fmt"
"strings"
@@ -57,7 +58,7 @@ func RepositoryListOfMap(repoMap map[int64]*repo_model.Repository) RepositoryLis
return RepositoryList(valuesRepository(repoMap))
}
-func (repos RepositoryList) loadAttributes(e db.Engine) error {
+func (repos RepositoryList) loadAttributes(ctx context.Context) error {
if len(repos) == 0 {
return nil
}
@@ -71,7 +72,7 @@ func (repos RepositoryList) loadAttributes(e db.Engine) error {
// Load owners.
users := make(map[int64]*user_model.User, len(set))
- if err := e.
+ if err := db.GetEngine(ctx).
Where("id > 0").
In("id", container.KeysInt64(set)).
Find(&users); err != nil {
@@ -83,7 +84,7 @@ func (repos RepositoryList) loadAttributes(e db.Engine) error {
// Load primary language.
stats := make(repo_model.LanguageStatList, 0, len(repos))
- if err := e.
+ if err := db.GetEngine(ctx).
Where("`is_primary` = ? AND `language` != ?", true, "other").
In("`repo_id`", repoIDs).
Find(&stats); err != nil {
@@ -104,7 +105,7 @@ func (repos RepositoryList) loadAttributes(e db.Engine) error {
// LoadAttributes loads the attributes for the given RepositoryList
func (repos RepositoryList) LoadAttributes() error {
- return repos.loadAttributes(db.GetEngine(db.DefaultContext))
+ return repos.loadAttributes(db.DefaultContext)
}
// SearchRepoOptions holds the search options
@@ -509,7 +510,8 @@ func SearchRepository(opts *SearchRepoOptions) (RepositoryList, int64, error) {
// SearchRepositoryByCondition search repositories by condition
func SearchRepositoryByCondition(opts *SearchRepoOptions, cond builder.Cond, loadAttributes bool) (RepositoryList, int64, error) {
- sess, count, err := searchRepositoryByCondition(opts, cond)
+ ctx := db.DefaultContext
+ sess, count, err := searchRepositoryByCondition(ctx, opts, cond)
if err != nil {
return nil, 0, err
}
@@ -528,7 +530,7 @@ func SearchRepositoryByCondition(opts *SearchRepoOptions, cond builder.Cond, loa
}
if loadAttributes {
- if err := repos.loadAttributes(sess); err != nil {
+ if err := repos.loadAttributes(ctx); err != nil {
return nil, 0, fmt.Errorf("LoadAttributes: %v", err)
}
}
@@ -536,7 +538,7 @@ func SearchRepositoryByCondition(opts *SearchRepoOptions, cond builder.Cond, loa
return repos, count, nil
}
-func searchRepositoryByCondition(opts *SearchRepoOptions, cond builder.Cond) (db.Engine, int64, error) {
+func searchRepositoryByCondition(ctx context.Context, opts *SearchRepoOptions, cond builder.Cond) (db.Engine, int64, error) {
if opts.Page <= 0 {
opts.Page = 1
}
@@ -549,7 +551,7 @@ func searchRepositoryByCondition(opts *SearchRepoOptions, cond builder.Cond) (db
opts.OrderBy = db.SearchOrderBy(fmt.Sprintf("CASE WHEN owner_id = %d THEN 0 ELSE owner_id END, %s", opts.PriorityOwnerID, opts.OrderBy))
}
- sess := db.GetEngine(db.DefaultContext)
+ sess := db.GetEngine(ctx)
var count int64
if opts.PageSize > 0 {
@@ -619,7 +621,7 @@ func SearchRepositoryIDs(opts *SearchRepoOptions) ([]int64, int64, error) {
cond := SearchRepositoryCondition(opts)
- sess, count, err := searchRepositoryByCondition(opts, cond)
+ sess, count, err := searchRepositoryByCondition(db.DefaultContext, opts, cond)
if err != nil {
return nil, 0, err
}