diff options
Diffstat (limited to 'jobs/server.go')
-rw-r--r-- | jobs/server.go | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/jobs/server.go b/jobs/server.go index dd3448842..7920cb2d5 100644 --- a/jobs/server.go +++ b/jobs/server.go @@ -11,10 +11,13 @@ import ( ) type JobServer struct { - Store store.Store - Jobs *Jobs + Store store.Store + Workers *Workers + Schedulers *Schedulers } +var Srv JobServer + func (server *JobServer) LoadLicense() { licenseId := "" if result := <-server.Store.System().Get(); result.Err == nil { @@ -44,3 +47,27 @@ func (server *JobServer) LoadLicense() { l4g.Info(utils.T("mattermost.load_license.find.warn")) } } + +func (server *JobServer) StartWorkers() { + if *utils.Cfg.JobSettings.RunJobs { + Srv.Workers = InitWorkers().Start() + } +} + +func (server *JobServer) StartSchedulers() { + if *utils.Cfg.JobSettings.RunJobs { + Srv.Schedulers = InitSchedulers().Start() + } +} + +func (server *JobServer) StopWorkers() { + if Srv.Workers != nil { + Srv.Workers.Stop() + } +} + +func (server *JobServer) StopSchedulers() { + if Srv.Schedulers != nil { + Srv.Schedulers.Stop() + } +} |