diff options
author | Corey Hulen <corey@hulen.com> | 2017-09-25 13:30:33 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-09-25 13:30:33 -0700 |
commit | 81c18a01bd22437457da04b6cdb8d409beb54446 (patch) | |
tree | 1c1a28dc72fe8685259870e53643de9f558dad79 /jobs/schedulers.go | |
parent | 1bf2a2e8d5a552d23e16379e73c2d4aaefc9368f (diff) | |
download | chat-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.go | 21 |
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 |