diff options
Diffstat (limited to 'app/scheme.go')
-rw-r--r-- | app/scheme.go | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/app/scheme.go b/app/scheme.go index f1dc256b2..c44690954 100644 --- a/app/scheme.go +++ b/app/scheme.go @@ -4,8 +4,10 @@ package app import ( - "github.com/mattermost/mattermost-server/model" "net/http" + + "github.com/mattermost/mattermost-server/model" + "github.com/mattermost/mattermost-server/store" ) func (a *App) GetScheme(id string) (*model.Scheme, *model.AppError) { @@ -146,3 +148,15 @@ func (a *App) IsPhase2MigrationCompleted() *model.AppError { return nil } + +func (a *App) SchemesIterator(batchSize int) func() []*model.Scheme { + offset := 0 + return func() []*model.Scheme { + var result store.StoreResult + if result = <-a.Srv.Store.Scheme().GetAllPage("", offset, batchSize); result.Err != nil { + return []*model.Scheme{} + } + offset += batchSize + return result.Data.([]*model.Scheme) + } +} |