summaryrefslogtreecommitdiffstats
path: root/jobs
diff options
context:
space:
mode:
Diffstat (limited to 'jobs')
-rw-r--r--jobs/server.go8
-rw-r--r--jobs/workers.go21
2 files changed, 20 insertions, 9 deletions
diff --git a/jobs/server.go b/jobs/server.go
index 8c5ee807d..40cfb1f64 100644
--- a/jobs/server.go
+++ b/jobs/server.go
@@ -13,6 +13,7 @@ import (
)
type JobServer struct {
+ Config model.ConfigFunc
Store store.Store
Workers *Workers
Schedulers *Schedulers
@@ -23,6 +24,13 @@ type JobServer struct {
LdapSync ejobs.LdapSyncInterface
}
+func NewJobServer(config model.ConfigFunc, store store.Store) *JobServer {
+ return &JobServer{
+ Config: config,
+ Store: store,
+ }
+}
+
func (srv *JobServer) LoadLicense() {
licenseId := ""
if result := <-srv.Store.System().Get(); result.Err == nil {
diff --git a/jobs/workers.go b/jobs/workers.go
index c984a43b8..415553981 100644
--- a/jobs/workers.go
+++ b/jobs/workers.go
@@ -13,6 +13,7 @@ import (
type Workers struct {
startOnce sync.Once
+ Config model.ConfigFunc
Watcher *Watcher
DataRetention model.Worker
@@ -24,7 +25,9 @@ type Workers struct {
}
func (srv *JobServer) InitWorkers() *Workers {
- workers := &Workers{}
+ workers := &Workers{
+ Config: srv.Config,
+ }
workers.Watcher = srv.MakeWatcher(workers, DEFAULT_WATCHER_POLLING_INTERVAL)
if srv.DataRetentionJob != nil {
@@ -50,19 +53,19 @@ func (workers *Workers) Start() *Workers {
l4g.Info("Starting workers")
workers.startOnce.Do(func() {
- if workers.DataRetention != nil && (*utils.Cfg.DataRetentionSettings.EnableMessageDeletion || *utils.Cfg.DataRetentionSettings.EnableFileDeletion) {
+ if workers.DataRetention != nil && (*workers.Config().DataRetentionSettings.EnableMessageDeletion || *workers.Config().DataRetentionSettings.EnableFileDeletion) {
go workers.DataRetention.Run()
}
- if workers.ElasticsearchIndexing != nil && *utils.Cfg.ElasticsearchSettings.EnableIndexing {
+ if workers.ElasticsearchIndexing != nil && *workers.Config().ElasticsearchSettings.EnableIndexing {
go workers.ElasticsearchIndexing.Run()
}
- if workers.ElasticsearchAggregation != nil && *utils.Cfg.ElasticsearchSettings.EnableIndexing {
+ if workers.ElasticsearchAggregation != nil && *workers.Config().ElasticsearchSettings.EnableIndexing {
go workers.ElasticsearchAggregation.Run()
}
- if workers.LdapSync != nil && *utils.Cfg.LdapSettings.Enable {
+ if workers.LdapSync != nil && *workers.Config().LdapSettings.Enable {
go workers.LdapSync.Run()
}
@@ -113,19 +116,19 @@ func (workers *Workers) Stop() *Workers {
workers.Watcher.Stop()
- if workers.DataRetention != nil && (*utils.Cfg.DataRetentionSettings.EnableMessageDeletion || *utils.Cfg.DataRetentionSettings.EnableFileDeletion) {
+ if workers.DataRetention != nil && (*workers.Config().DataRetentionSettings.EnableMessageDeletion || *workers.Config().DataRetentionSettings.EnableFileDeletion) {
workers.DataRetention.Stop()
}
- if workers.ElasticsearchIndexing != nil && *utils.Cfg.ElasticsearchSettings.EnableIndexing {
+ if workers.ElasticsearchIndexing != nil && *workers.Config().ElasticsearchSettings.EnableIndexing {
workers.ElasticsearchIndexing.Stop()
}
- if workers.ElasticsearchAggregation != nil && *utils.Cfg.ElasticsearchSettings.EnableIndexing {
+ if workers.ElasticsearchAggregation != nil && *workers.Config().ElasticsearchSettings.EnableIndexing {
workers.ElasticsearchAggregation.Stop()
}
- if workers.LdapSync != nil && *utils.Cfg.LdapSettings.Enable {
+ if workers.LdapSync != nil && *workers.Config().LdapSettings.Enable {
workers.LdapSync.Stop()
}