diff options
author | Ben Morrison <ben@gbmor.dev> | 2019-06-11 04:48:01 -0400 |
---|---|---|
committer | Ben Morrison <ben@gbmor.dev> | 2019-06-11 04:54:55 -0400 |
commit | fb328631e55830f3a2cab79bf18115324910c93c (patch) | |
tree | ce92b5e91f1588bd5dcafdd466c368f37bf5d2de /svc/conf.go | |
parent | 00eaadc6ed2859ccf3683486667fe20374893421 (diff) | |
download | getwtxt-fb328631e55830f3a2cab79bf18115324910c93c.tar.gz |
moved timed/periodic functions and types to periodic.go
Diffstat (limited to 'svc/conf.go')
-rw-r--r-- | svc/conf.go | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/svc/conf.go b/svc/conf.go index 8abb4a6..2e9d671 100644 --- a/svc/conf.go +++ b/svc/conf.go @@ -8,7 +8,6 @@ import ( "sync" "time" - "github.com/fsnotify/fsnotify" "github.com/spf13/viper" ) @@ -38,58 +37,6 @@ type Instance struct { Desc string `yaml:"Instance.Description"` } -// This is a wrapper for a *time.Ticker -// that adds another channel. It's used -// to signal to the ticker goroutines -// that they should stop the tickers -// and exit. -type tick struct { - isDB bool - t *time.Ticker - exit chan bool -} - -// Creates a new instance of a tick -func initTicker(db bool, interval time.Duration) *tick { - return &tick{ - isDB: db, - t: time.NewTicker(interval), - exit: make(chan bool, 1), - } -} - -// Sends the signal to stop the tickers -// and for their respective goroutines -// to exit. -func killTickers() { - ct := <-cTickC - dt := <-dbTickC - ct.exit <- true - dt.exit <- true -} - -// Waits for a signal from the database -// *tick. Either stops the ticker and -// kills the goroutine or it will -// update cache / push the DB to disk -func dataTimer(tkr *tick) { - for { - select { - case signal := <-tkr.t.C: - if tkr.isDB { - errLog("", pushDB()) - log.Printf("Database push took: %v\n", time.Since(signal)) - continue - } - cacheUpdate() - log.Printf("Cache update took: %v\n", time.Since(signal)) - case <-tkr.exit: - tkr.t.Stop() - return - } - } -} - // Called on start-up. Initializes everything // related to configuration values. func initConfig() { @@ -110,30 +57,6 @@ func initConfig() { bindConfig() } -// Called when a change is detected in the -// configuration file. Closes log file, -// closes database connection, stops all -// tickers, then binds new configuration -// values, opens new log file, connects to -// new database, and starts new cache and -// database tickers. -func reInit(e fsnotify.Event) { - log.Printf("%v. Reloading...\n", e.String()) - - if !confObj.StdoutLogging { - closeLog <- true - } - - killTickers() - killDB() - - bindConfig() - - initLogging() - initDatabase() - initPersistence() -} - // Registers either stdout or a specified file // to the default logger. func initLogging() { |