Documentation ¶
Index ¶
- Variables
- func Register(name string, adapter Config)
- type Config
- type ConfigContainer
- type IniConfig
- type IniConfigContainer
- func (c *IniConfigContainer) Bool(key string) (bool, error)
- func (c *IniConfigContainer) DIY(key string) (v interface{}, err error)
- func (c *IniConfigContainer) Float(key string) (float64, error)
- func (c *IniConfigContainer) Int(key string) (int, error)
- func (c *IniConfigContainer) Int64(key string) (int64, error)
- func (c *IniConfigContainer) Set(key, value string) error
- func (c *IniConfigContainer) String(key string) string
- func (c *IniConfigContainer) Strings(key string) []string
- type JsonConfig
- type JsonConfigContainer
- func (c *JsonConfigContainer) Bool(key string) (bool, error)
- func (c *JsonConfigContainer) DIY(key string) (v interface{}, err error)
- func (c *JsonConfigContainer) Float(key string) (float64, error)
- func (c *JsonConfigContainer) Int(key string) (int, error)
- func (c *JsonConfigContainer) Int64(key string) (int64, error)
- func (c *JsonConfigContainer) Set(key, val string) error
- func (c *JsonConfigContainer) String(key string) string
- func (c *JsonConfigContainer) Strings(key string) []string
Constants ¶
This section is empty.
Variables ¶
var (
DEFAULT_SECTION = "default" // default section means if some ini items not in a section, make them in default section,
)
Functions ¶
Types ¶
type Config ¶
type Config interface {
Parse(key string) (ConfigContainer, error)
}
Config is the adapter interface for parsing config file to get raw data to ConfigContainer.
type ConfigContainer ¶
type ConfigContainer interface { Set(key, val string) error // support section::key type in given key when using ini type. String(key string) string // support section::key type in key string when using ini and json type; Int,Int64,Bool,Float,DIY are same. Strings(key string) []string //get string slice Int(key string) (int, error) Int64(key string) (int64, error) Bool(key string) (bool, error) Float(key string) (float64, error) DIY(key string) (interface{}, error) }
ConfigContainer defines how to get and set value from configuration raw data.
func NewConfig ¶
func NewConfig(adapterName, fileaname string) (ConfigContainer, error)
adapterName is ini/json/xml/yaml. filename is the config file path.
func NewFakeConfig ¶
func NewFakeConfig() ConfigContainer
type IniConfigContainer ¶
A Config represents the ini configuration. When set and get value, support key as section:name type.
func (*IniConfigContainer) Bool ¶
func (c *IniConfigContainer) Bool(key string) (bool, error)
Bool returns the boolean value for a given key.
func (*IniConfigContainer) DIY ¶
func (c *IniConfigContainer) DIY(key string) (v interface{}, err error)
DIY returns the raw value by a given key.
func (*IniConfigContainer) Float ¶
func (c *IniConfigContainer) Float(key string) (float64, error)
Float returns the float value for a given key.
func (*IniConfigContainer) Int ¶
func (c *IniConfigContainer) Int(key string) (int, error)
Int returns the integer value for a given key.
func (*IniConfigContainer) Int64 ¶
func (c *IniConfigContainer) Int64(key string) (int64, error)
Int64 returns the int64 value for a given key.
func (*IniConfigContainer) Set ¶
func (c *IniConfigContainer) Set(key, value string) error
WriteValue writes a new value for key. if write to one section, the key need be "section::key". if the section is not existed, it panics.
func (*IniConfigContainer) String ¶
func (c *IniConfigContainer) String(key string) string
String returns the string value for a given key.
func (*IniConfigContainer) Strings ¶
func (c *IniConfigContainer) Strings(key string) []string
Strings returns the []string value for a given key.
type JsonConfig ¶
type JsonConfig struct { }
JsonConfig is a json config parser and implements Config interface.
func (*JsonConfig) Parse ¶
func (js *JsonConfig) Parse(filename string) (ConfigContainer, error)
Parse returns a ConfigContainer with parsed json config map.
type JsonConfigContainer ¶
A Config represents the json configuration. Only when get value, support key as section:name type.
func (*JsonConfigContainer) Bool ¶
func (c *JsonConfigContainer) Bool(key string) (bool, error)
Bool returns the boolean value for a given key.
func (*JsonConfigContainer) DIY ¶
func (c *JsonConfigContainer) DIY(key string) (v interface{}, err error)
DIY returns the raw value by a given key.
func (*JsonConfigContainer) Float ¶
func (c *JsonConfigContainer) Float(key string) (float64, error)
Float returns the float value for a given key.
func (*JsonConfigContainer) Int ¶
func (c *JsonConfigContainer) Int(key string) (int, error)
Int returns the integer value for a given key.
func (*JsonConfigContainer) Int64 ¶
func (c *JsonConfigContainer) Int64(key string) (int64, error)
Int64 returns the int64 value for a given key.
func (*JsonConfigContainer) Set ¶
func (c *JsonConfigContainer) Set(key, val string) error
WriteValue writes a new value for key.
func (*JsonConfigContainer) String ¶
func (c *JsonConfigContainer) String(key string) string
String returns the string value for a given key.
func (*JsonConfigContainer) Strings ¶
func (c *JsonConfigContainer) Strings(key string) []string
Strings returns the []string value for a given key.