本文整理匯總了Golang中github.com/mesosphere/mesos-dns/records.RecordGenerator類的典型用法代碼示例。如果您正苦於以下問題:Golang RecordGenerator類的具體用法?Golang RecordGenerator怎麽用?Golang RecordGenerator使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了RecordGenerator類的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: Reload
// Reload triggers a new state load from the configured mesos masters.
// This method is not goroutine-safe.
func (res *Resolver) Reload() {
t := records.RecordGenerator{}
err := t.ParseState(res.config, res.masters...)
if err != nil {
logging.VeryVerbose.Println("Warning: master not found; serving only static entries")
}
timestamp := uint32(time.Now().Unix())
// may need to refactor for fairness
res.rsLock.Lock()
defer res.rsLock.Unlock()
res.config.SOASerial = timestamp
res.rs = &t
logging.PrintCurLog()
}
示例2: Reload
// triggers a new refresh from mesos master
func (res *Resolver) Reload() {
t := records.RecordGenerator{}
// Being very conservative
res.leaderLock.RLock()
currentLeader := res.leader
res.leaderLock.RUnlock()
err := t.ParseState(currentLeader, res.config)
if err == nil {
timestamp := uint32(time.Now().Unix())
// may need to refactor for fairness
res.rsLock.Lock()
defer res.rsLock.Unlock()
res.config.SOASerial = timestamp
res.rs = &t
} else {
logging.VeryVerbose.Println("Warning: master not found; keeping old DNS state")
}
}