Documentation ¶
Overview ¶
Package config is used to parse config. Usage:
import "github.com/astaxie/beego/config"
Examples.
cnf, err := config.NewConfig("ini", "config.conf") cnf APIS: cnf.Set(key, val string) error cnf.String(key string) string cnf.Strings(key string) []string cnf.Int(key string) (int, error) cnf.Int64(key string) (int64, error) cnf.Bool(key string) (bool, error) cnf.Float(key string) (float64, error) cnf.DefaultString(key string, defaultVal string) string cnf.DefaultStrings(key string, defaultVal []string) []string cnf.DefaultInt(key string, defaultVal int) int cnf.DefaultInt64(key string, defaultVal int64) int64 cnf.DefaultBool(key string, defaultVal bool) bool cnf.DefaultFloat(key string, defaultVal float64) float64 cnf.DIY(key string) (interface{}, error) cnf.GetSection(section string) (map[string]string, error) cnf.SaveConfigFile(filename string) error
More docs http://beego.me/docs/module/config.md
Index ¶
- func ExpandValueEnv(value string) (realValue string)
- func ExpandValueEnvForMap(m map[string]interface{}) map[string]interface{}
- func ParseBool(val interface{}) (value bool, err error)
- func Register(name string, adapter Config)
- func ToString(x interface{}) string
- type Config
- type Configer
- 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) DefaultBool(key string, defaultval bool) bool
- func (c *IniConfigContainer) DefaultFloat(key string, defaultval float64) float64
- func (c *IniConfigContainer) DefaultInt(key string, defaultval int) int
- func (c *IniConfigContainer) DefaultInt64(key string, defaultval int64) int64
- func (c *IniConfigContainer) DefaultString(key string, defaultval string) string
- func (c *IniConfigContainer) DefaultStrings(key string, defaultval []string) []string
- func (c *IniConfigContainer) Float(key string) (float64, error)
- func (c *IniConfigContainer) GetSection(section string) (map[string]string, error)
- func (c *IniConfigContainer) Int(key string) (int, error)
- func (c *IniConfigContainer) Int64(key string) (int64, error)
- func (c *IniConfigContainer) SaveConfigFile(filename string) (err 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) DefaultBool(key string, defaultval bool) bool
- func (c *JSONConfigContainer) DefaultFloat(key string, defaultval float64) float64
- func (c *JSONConfigContainer) DefaultInt(key string, defaultval int) int
- func (c *JSONConfigContainer) DefaultInt64(key string, defaultval int64) int64
- func (c *JSONConfigContainer) DefaultString(key string, defaultval string) string
- func (c *JSONConfigContainer) DefaultStrings(key string, defaultval []string) []string
- func (c *JSONConfigContainer) Float(key string) (float64, error)
- func (c *JSONConfigContainer) GetSection(section string) (map[string]string, error)
- func (c *JSONConfigContainer) Int(key string) (int, error)
- func (c *JSONConfigContainer) Int64(key string) (int64, error)
- func (c *JSONConfigContainer) SaveConfigFile(filename string) (err error)
- func (c *JSONConfigContainer) Set(key, val string) error
- func (c *JSONConfigContainer) String(key string) string
- func (c *JSONConfigContainer) Strings(key string) []string
- Bugs
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ExpandValueEnv ¶ added in v1.7.0
ExpandValueEnv returns value of convert with environment variable.
Return environment variable if value start with "${" and end with "}". Return default value if environment variable is empty or not exist.
It accept value formats "${env}" , "${env||}}" , "${env||defaultValue}" , "defaultvalue". Examples:
v1 := config.ExpandValueEnv("${GOPATH}") // return the GOPATH environment variable. v2 := config.ExpandValueEnv("${GOAsta||/usr/local/go}") // return the default value "/usr/local/go/". v3 := config.ExpandValueEnv("Astaxie") // return the value "Astaxie".
func ExpandValueEnvForMap ¶ added in v1.7.0
ExpandValueEnvForMap convert all string value with environment variable.
func ParseBool ¶ added in v1.6.1
ParseBool returns the boolean value represented by the string.
It accepts 1, 1.0, t, T, TRUE, true, True, YES, yes, Yes,Y, y, ON, on, On, 0, 0.0, f, F, FALSE, false, False, NO, no, No, N,n, OFF, off, Off. Any other value returns an error.
func Register ¶
Register makes a config adapter available by the adapter name. If Register is called twice with the same name or if driver is nil, it panics.
Types ¶
type Config ¶
type Config interface { Parse(key string) (Configer, error) ParseData(data []byte) (Configer, error) }
Config is the adapter interface for parsing config file to get raw data to Configer.
type Configer ¶ added in v1.6.0
type Configer 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) DefaultString(key string, defaultVal string) string // support section::key type in key string when using ini and json type; Int,Int64,Bool,Float,DIY are same. DefaultStrings(key string, defaultVal []string) []string //get string slice DefaultInt(key string, defaultVal int) int DefaultInt64(key string, defaultVal int64) int64 DefaultBool(key string, defaultVal bool) bool DefaultFloat(key string, defaultVal float64) float64 DIY(key string) (interface{}, error) GetSection(section string) (map[string]string, error) SaveConfigFile(filename string) error }
Configer defines how to get and set value from configuration raw data.
func NewConfig ¶
NewConfig adapterName is ini/json/xml/yaml. filename is the config file path.
func NewConfigData ¶ added in v1.4.0
NewConfigData adapterName is ini/json/xml/yaml. data is the config data.
type IniConfig ¶
type IniConfig struct { }
IniConfig implements Config to parse ini file.
func (*IniConfig) Parse ¶
Parse creates a new Config and parses the file configuration from the named file.
type IniConfigContainer ¶
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) DefaultBool ¶ added in v1.4.0
func (c *IniConfigContainer) DefaultBool(key string, defaultval bool) bool
DefaultBool returns the boolean value for a given key. if err != nil return defaultval
func (*IniConfigContainer) DefaultFloat ¶ added in v1.4.0
func (c *IniConfigContainer) DefaultFloat(key string, defaultval float64) float64
DefaultFloat returns the float64 value for a given key. if err != nil return defaultval
func (*IniConfigContainer) DefaultInt ¶ added in v1.4.0
func (c *IniConfigContainer) DefaultInt(key string, defaultval int) int
DefaultInt returns the integer value for a given key. if err != nil return defaultval
func (*IniConfigContainer) DefaultInt64 ¶ added in v1.4.0
func (c *IniConfigContainer) DefaultInt64(key string, defaultval int64) int64
DefaultInt64 returns the int64 value for a given key. if err != nil return defaultval
func (*IniConfigContainer) DefaultString ¶ added in v1.4.0
func (c *IniConfigContainer) DefaultString(key string, defaultval string) string
DefaultString returns the string value for a given key. if err != nil return defaultval
func (*IniConfigContainer) DefaultStrings ¶ added in v1.4.0
func (c *IniConfigContainer) DefaultStrings(key string, defaultval []string) []string
DefaultStrings returns the []string value for a given key. if err != nil return defaultval
func (*IniConfigContainer) Float ¶
func (c *IniConfigContainer) Float(key string) (float64, error)
Float returns the float value for a given key.
func (*IniConfigContainer) GetSection ¶ added in v1.4.0
func (c *IniConfigContainer) GetSection(section string) (map[string]string, error)
GetSection returns map for the given section
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) SaveConfigFile ¶ added in v1.4.0
func (c *IniConfigContainer) SaveConfigFile(filename string) (err error)
SaveConfigFile save the config into file.
BUG(env): The environment variable config item will be saved with real value in SaveConfigFile Function.
func (*IniConfigContainer) Set ¶
func (c *IniConfigContainer) Set(key, value string) error
Set 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. Return nil if config value does not exist or is empty.
type JSONConfig ¶ added in v1.6.0
type JSONConfig struct { }
JSONConfig is a json config parser and implements Config interface.
func (*JSONConfig) Parse ¶ added in v1.6.0
func (js *JSONConfig) Parse(filename string) (Configer, error)
Parse returns a ConfigContainer with parsed json config map.
func (*JSONConfig) ParseData ¶ added in v1.6.0
func (js *JSONConfig) ParseData(data []byte) (Configer, error)
ParseData returns a ConfigContainer with json string
type JSONConfigContainer ¶ added in v1.6.0
JSONConfigContainer A Config represents the json configuration. Only when get value, support key as section:name type.
func (*JSONConfigContainer) Bool ¶ added in v1.6.0
func (c *JSONConfigContainer) Bool(key string) (bool, error)
Bool returns the boolean value for a given key.
func (*JSONConfigContainer) DIY ¶ added in v1.6.0
func (c *JSONConfigContainer) DIY(key string) (v interface{}, err error)
DIY returns the raw value by a given key.
func (*JSONConfigContainer) DefaultBool ¶ added in v1.6.0
func (c *JSONConfigContainer) DefaultBool(key string, defaultval bool) bool
DefaultBool return the bool value if has no error otherwise return the defaultval
func (*JSONConfigContainer) DefaultFloat ¶ added in v1.6.0
func (c *JSONConfigContainer) DefaultFloat(key string, defaultval float64) float64
DefaultFloat returns the float64 value for a given key. if err != nil return defaultval
func (*JSONConfigContainer) DefaultInt ¶ added in v1.6.0
func (c *JSONConfigContainer) DefaultInt(key string, defaultval int) int
DefaultInt returns the integer value for a given key. if err != nil return defaultval
func (*JSONConfigContainer) DefaultInt64 ¶ added in v1.6.0
func (c *JSONConfigContainer) DefaultInt64(key string, defaultval int64) int64
DefaultInt64 returns the int64 value for a given key. if err != nil return defaultval
func (*JSONConfigContainer) DefaultString ¶ added in v1.6.0
func (c *JSONConfigContainer) DefaultString(key string, defaultval string) string
DefaultString returns the string value for a given key. if err != nil return defaultval
func (*JSONConfigContainer) DefaultStrings ¶ added in v1.6.0
func (c *JSONConfigContainer) DefaultStrings(key string, defaultval []string) []string
DefaultStrings returns the []string value for a given key. if err != nil return defaultval
func (*JSONConfigContainer) Float ¶ added in v1.6.0
func (c *JSONConfigContainer) Float(key string) (float64, error)
Float returns the float value for a given key.
func (*JSONConfigContainer) GetSection ¶ added in v1.6.0
func (c *JSONConfigContainer) GetSection(section string) (map[string]string, error)
GetSection returns map for the given section
func (*JSONConfigContainer) Int ¶ added in v1.6.0
func (c *JSONConfigContainer) Int(key string) (int, error)
Int returns the integer value for a given key.
func (*JSONConfigContainer) Int64 ¶ added in v1.6.0
func (c *JSONConfigContainer) Int64(key string) (int64, error)
Int64 returns the int64 value for a given key.
func (*JSONConfigContainer) SaveConfigFile ¶ added in v1.6.0
func (c *JSONConfigContainer) SaveConfigFile(filename string) (err error)
SaveConfigFile save the config into file
func (*JSONConfigContainer) Set ¶ added in v1.6.0
func (c *JSONConfigContainer) Set(key, val string) error
Set writes a new value for key.
func (*JSONConfigContainer) String ¶ added in v1.6.0
func (c *JSONConfigContainer) String(key string) string
String returns the string value for a given key.
func (*JSONConfigContainer) Strings ¶ added in v1.6.0
func (c *JSONConfigContainer) Strings(key string) []string
Strings returns the []string value for a given key.
Notes ¶
Bugs ¶
The environment variable config item will be saved with real value in SaveConfigFile Function.
Directories ¶
Path | Synopsis |
---|---|
Package env is used to parse environment.
|
Package env is used to parse environment. |
Package xml for config provider.
|
Package xml for config provider. |
Package yaml for config provider depend on github.com/beego/goyaml2 go install github.com/beego/goyaml2 Usage: import( _ "github.com/astaxie/beego/config/yaml" "github.com/astaxie/beego/config" ) cnf, err := config.NewConfig("yaml", "config.yaml") More docs http://beego.me/docs/module/config.md
|
Package yaml for config provider depend on github.com/beego/goyaml2 go install github.com/beego/goyaml2 Usage: import( _ "github.com/astaxie/beego/config/yaml" "github.com/astaxie/beego/config" ) cnf, err := config.NewConfig("yaml", "config.yaml") More docs http://beego.me/docs/module/config.md |