summaryrefslogtreecommitdiffstats
path: root/jobs/schedulers.go
diff options
context:
space:
mode:
authorCorey Hulen <corey@hulen.com>2017-09-25 13:30:33 -0700
committerGitHub <noreply@github.com>2017-09-25 13:30:33 -0700
commit81c18a01bd22437457da04b6cdb8d409beb54446 (patch)
tree1c1a28dc72fe8685259870e53643de9f558dad79 /jobs/schedulers.go
parent1bf2a2e8d5a552d23e16379e73c2d4aaefc9368f (diff)
downloadchat-81c18a01bd22437457da04b6cdb8d409beb54446.tar.gz
chat-81c18a01bd22437457da04b6cdb8d409beb54446.tar.bz2
chat-81c18a01bd22437457da04b6cdb8d409beb54446.zip
PLT-7542 Converting LDAP sync to the job server (#7452)
* PLT-7542 Converting LDAP sync to the job server * Fixing minor issues * Fixing build failure * Translate error message * Translate error message * Translate error message * Translate error message * Fixing merge * Fixing bad merge
Diffstat (limited to 'jobs/schedulers.go')
-rw-r--r--jobs/schedulers.go21
1 files changed, 21 insertions, 0 deletions
diff --git a/jobs/schedulers.go b/jobs/schedulers.go
index 28cf6808c..1cb4a6f28 100644
--- a/jobs/schedulers.go
+++ b/jobs/schedulers.go
@@ -18,6 +18,7 @@ type Schedulers struct {
DataRetention model.Scheduler
ElasticsearchAggregation model.Scheduler
+ LdapSync model.Scheduler
listenerId string
}
@@ -33,6 +34,10 @@ func InitSchedulers() *Schedulers {
schedulers.ElasticsearchAggregation = elasticsearchAggregatorInterface.MakeScheduler()
}
+ if ldaySyncInterface := ejobs.GetLdapSyncInterface(); ldaySyncInterface != nil {
+ schedulers.LdapSync = ldaySyncInterface.MakeScheduler()
+ }
+
return schedulers
}
@@ -47,6 +52,10 @@ func (schedulers *Schedulers) Start() *Schedulers {
if schedulers.ElasticsearchAggregation != nil && *utils.Cfg.ElasticsearchSettings.EnableIndexing {
go schedulers.ElasticsearchAggregation.Run()
}
+
+ if schedulers.LdapSync != nil && *utils.Cfg.LdapSettings.Enable {
+ go schedulers.LdapSync.Run()
+ }
})
schedulers.listenerId = utils.AddConfigListener(schedulers.handleConfigChange)
@@ -70,6 +79,14 @@ func (schedulers *Schedulers) handleConfigChange(oldConfig *model.Config, newCon
schedulers.ElasticsearchAggregation.Stop()
}
}
+
+ if schedulers.LdapSync != nil {
+ if !*oldConfig.LdapSettings.Enable && *newConfig.LdapSettings.Enable {
+ go schedulers.LdapSync.Run()
+ } else if *oldConfig.LdapSettings.Enable && !*newConfig.LdapSettings.Enable {
+ schedulers.LdapSync.Stop()
+ }
+ }
}
func (schedulers *Schedulers) Stop() *Schedulers {
@@ -83,6 +100,10 @@ func (schedulers *Schedulers) Stop() *Schedulers {
schedulers.ElasticsearchAggregation.Stop()
}
+ if schedulers.LdapSync != nil && *utils.Cfg.LdapSettings.Enable {
+ schedulers.LdapSync.Stop()
+ }
+
l4g.Info("Stopped schedulers")
return schedulers