diff options
Diffstat (limited to 'plugins/config/interface.go')
-rw-r--r-- | plugins/config/interface.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/plugins/config/interface.go b/plugins/config/interface.go new file mode 100644 index 00000000..23279f53 --- /dev/null +++ b/plugins/config/interface.go @@ -0,0 +1,26 @@ +package config + +type Configurer interface { + // // UnmarshalKey takes a single key and unmarshals it into a Struct. + // + // func (h *HttpService) Init(cp config.Configurer) error { + // h.config := &HttpConfig{} + // if err := configProvider.UnmarshalKey("http", h.config); err != nil { + // return err + // } + // } + UnmarshalKey(name string, out interface{}) error + + // Unmarshal unmarshals the config into a Struct. Make sure that the tags + // on the fields of the structure are properly set. + Unmarshal(out interface{}) error + + // Get used to get config section + Get(name string) interface{} + + // Overwrite used to overwrite particular values in the unmarshalled config + Overwrite(values map[string]interface{}) error + + // Has checks if config section exists. + Has(name string) bool +} |