Skip to content

Commit

Permalink
add initial code for daemon reload
Browse files Browse the repository at this point in the history
  • Loading branch information
majestrate committed Jan 28, 2017
1 parent 07d70d2 commit c1c1725
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 0 deletions.
1 change: 1 addition & 0 deletions srnd.go
Expand Up @@ -33,6 +33,7 @@ func main() {
break
}
srnd.ReloadTemplates()
daemon.Reload()
}
log.Println("Shutting down...")
daemon.End()
Expand Down
35 changes: 35 additions & 0 deletions vendor/srnd/daemon.go
Expand Up @@ -323,6 +323,21 @@ func (self *NNTPDaemon) modifyFeedPolicy(feedname string, policy FeedPolicy) (er
return
}

func (self *NNTPDaemon) reloadFeeds() {
log.Println("close all feeds")
// close all feeds
feeds := self.activeFeeds()
for _, feed := range feeds {
self.removeFeed(feed.State.Config.Name)
}
// register feeds from config
log.Println("registering feeds")
for _, f := range self.conf.feeds {
self.register_feed <- f
}

}

// remove a persisted feed from the daemon
// does not modify feeds.ini
func (self *NNTPDaemon) removeFeed(feedname string) (err error) {
Expand Down Expand Up @@ -656,6 +671,26 @@ func (self *NNTPDaemon) loadFromInfeed(msgid string) {
self.infeed_load <- msgid
}

// reload all configs etc
func (self *NNTPDaemon) Reload() {
log.Println("reload daemon")
conf := ReadConfig()
if conf == nil {
log.Println("failed to reload config")
return
}
script, ok := conf.frontend["markup_script"]
if ok {
err := SetMarkupScriptFile(script)
if err != nil {
log.Println("failed to reload script file", err)
}
}
self.conf = conf
self.reloadFeeds()
log.Println("reload daemon okay")
}

func (self *NNTPDaemon) pollfeeds() {

for {
Expand Down

0 comments on commit c1c1725

Please sign in to comment.