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)
- 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.
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 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.
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 defaltval
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 defaltval
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 defaltval
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 defaltval
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 defaltval
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 defaltval
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 Funcation.
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.
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 defaltval
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 defaltval
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 defaltval
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 defaltval
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 defaltval
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 Funcation.