14 lines
640 B
Go
14 lines
640 B
Go
package naming
|
|
|
|
// Resolver dose name resolution and watches for the resolution changes.
|
|
type Resolver interface {
|
|
// Get gets a snapshot of the current name resolution results for target.
|
|
Get(target string) map[string]string
|
|
// Watch watches for the name resolution changes on target. It blocks until Stop() is invoked. The watch results are obtained via GetUpdate().
|
|
Watch(target string)
|
|
// GetUpdate returns a name resolution change when watch is triggered. It blocks until it observes a change. The caller needs to call it again to get the next change.
|
|
GetUpdate() (string, string)
|
|
// Stop shuts down the NameResolver.
|
|
Stop()
|
|
}
|