config

package
v0.0.0-...-30f4346 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 18, 2015 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

Package config is used to parse config Usage: import(

"github.com/astaxie/beego/config"

)

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

Constants

This section is empty.

Variables

This section is empty.

Functions

func Register

func Register(name string, adapter Config)

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

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

func NewConfig(adapterName, filename string) (Configer, error)

NewConfig adapterName is ini/json/xml/yaml. filename is the config file path.

func NewConfigData

func NewConfigData(adapterName string, data []byte) (Configer, error)

NewConfigData adapterName is ini/json/xml/yaml. data is the config data.

func NewFakeConfig

func NewFakeConfig() Configer

NewFakeConfig return a fake Congiger

type IniConfig

type IniConfig struct {
}

IniConfig implements Config to parse ini file.

func (*IniConfig) Parse

func (ini *IniConfig) Parse(name string) (Configer, error)

Parse creates a new Config and parses the file configuration from the named file.

func (*IniConfig) ParseData

func (ini *IniConfig) ParseData(data []byte) (Configer, error)

ParseData parse ini the data

type IniConfigContainer

type IniConfigContainer struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

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

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

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

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

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

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

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

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

func (c *IniConfigContainer) SaveConfigFile(filename string) (err error)

SaveConfigFile save the config into file

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.

type JSONConfig

type JSONConfig struct {
}

JSONConfig is a json config parser and implements Config interface.

func (*JSONConfig) Parse

func (js *JSONConfig) Parse(filename string) (Configer, error)

Parse returns a ConfigContainer with parsed json config map.

func (*JSONConfig) ParseData

func (js *JSONConfig) ParseData(data []byte) (Configer, error)

ParseData returns a ConfigContainer with json string

type JSONConfigContainer

type JSONConfigContainer struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

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) DefaultBool

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

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

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

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

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

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

func (c *JSONConfigContainer) Float(key string) (float64, error)

Float returns the float value for a given key.

func (*JSONConfigContainer) GetSection

func (c *JSONConfigContainer) GetSection(section string) (map[string]string, error)

GetSection returns map for the given section

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) SaveConfigFile

func (c *JSONConfigContainer) SaveConfigFile(filename string) (err error)

SaveConfigFile save the config into file

func (*JSONConfigContainer) Set

func (c *JSONConfigContainer) Set(key, val string) error

Set 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.

Directories

Path Synopsis
Package xml for config provider depend on github.com/beego/x2j go install github.com/beego/x2j Usage: import( _ "github.com/astaxie/beego/config/xml" "github.com/astaxie/beego/config" ) cnf, err := config.NewConfig("xml", "config.xml") more docs http://beego.me/docs/module/config.md
Package xml for config provider depend on github.com/beego/x2j go install github.com/beego/x2j Usage: import( _ "github.com/astaxie/beego/config/xml" "github.com/astaxie/beego/config" ) cnf, err := config.NewConfig("xml", "config.xml") 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
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

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL