Documentation ¶
Index ¶
- Variables
- func NewConfigurationRoot(providers ...core.ConfigurationProvider) core.ConfigurationRoot
- func NewConfigurationSection(root core.ConfigurationRoot, path string) core.ConfigurationSection
- type BinaryConfigurationProvider
- type BinaryConfigurationSource
- type CmdLineConfigurationProvider
- type CmdLineConfigurationSource
- type ConfigurationBuilder
- func (builder *ConfigurationBuilder) AddCommandLine(args []string, switchMapping map[string]string)
- func (builder *ConfigurationBuilder) AddDir(path string, recursive bool)
- func (builder *ConfigurationBuilder) AddJSONFile(fileProvider core.FileProvider)
- func (builder *ConfigurationBuilder) AddMemorySource(initialData map[string]string)
- func (builder *ConfigurationBuilder) AddSource(source core.ConfigurationSource)
- func (builder *ConfigurationBuilder) AddYamlFile(fileProvider core.FileProvider)
- func (builder *ConfigurationBuilder) Build() (core.ConfigurationRoot, error)
- func (builder *ConfigurationBuilder) Properties() map[string]any
- func (builder *ConfigurationBuilder) Sources() []core.ConfigurationSource
- type ConfigurationProvider
- func (provider *ConfigurationProvider) GetChildKeys(earlierKeys []string, parentPath string) []string
- func (provider *ConfigurationProvider) Load()
- func (provider *ConfigurationProvider) Map() map[string]string
- func (provider *ConfigurationProvider) Set(k string, v string)
- func (provider *ConfigurationProvider) TryGet(k string) (string, core.ConfigurationProvider, bool)
- type ConfigurationRoot
- func (root *ConfigurationRoot) GetChildren() []core.ConfigurationSection
- func (root *ConfigurationRoot) GetChildrenImplementation(path string) []core.ConfigurationSection
- func (root *ConfigurationRoot) GetConfiguration(providers []core.ConfigurationProvider, k string) string
- func (root *ConfigurationRoot) GetSection(k string) core.ConfigurationSection
- func (root *ConfigurationRoot) GetString(k string) string
- func (root *ConfigurationRoot) Providers() []core.ConfigurationProvider
- func (root *ConfigurationRoot) Reload() error
- func (root *ConfigurationRoot) SetConfiguration(providers []core.ConfigurationProvider, k, v string)
- func (root *ConfigurationRoot) TryGetConfiguration(providers []core.ConfigurationProvider, k string) (string, bool)
- func (root *ConfigurationRoot) TryGetString(k string) (string, bool)
- type ConfigurationSection
- func (section *ConfigurationSection) GetChildren() []core.ConfigurationSection
- func (section *ConfigurationSection) GetSection(k string) core.ConfigurationSection
- func (section *ConfigurationSection) GetString(k string) string
- func (section *ConfigurationSection) HasValue() bool
- func (section *ConfigurationSection) Key() string
- func (section *ConfigurationSection) Path() string
- func (section *ConfigurationSection) TryGetString(k string) (string, bool)
- func (section *ConfigurationSection) Value() string
- type EnvironmentConfigurationProvider
- type EnvironmentConfigurationSource
- type JSONConfigurationProvider
- type MemoryConfigurationProvider
- type MemoryConfigurationSource
- type YamlConfigurationProvider
Constants ¶
This section is empty.
Variables ¶
View Source
var ConfigurationKeyComparer = func(a1, a2 any) int { x := a1.(string) y := a2.(string) xParts := strings.Split(x, core.DefaultConfigPathKeyDelimiter) yParts := strings.Split(y, core.DefaultConfigPathKeyDelimiter) count := math.Min(float64(len(xParts)), float64(len(yParts))) for i := 0; i < int(count); i++ { innerX := xParts[i] innerY := yParts[i] xIsInt := false yIsInt := false value1, err := strconv.ParseInt(innerX, 10, 64) if err == nil { xIsInt = true } value2, err := strconv.ParseInt(innerY, 10, 64) if err == nil { yIsInt = true } result := 0 if !xIsInt && !yIsInt { result = strings.Compare(innerX, innerY) } else if xIsInt && yIsInt { result = int(value1) - int(value2) } else if xIsInt { result = -1 } else { result = 1 } if result != 0 { return result } } return len(xParts) - len(yParts) }
Functions ¶
func NewConfigurationRoot ¶
func NewConfigurationRoot(providers ...core.ConfigurationProvider) core.ConfigurationRoot
func NewConfigurationSection ¶
func NewConfigurationSection(root core.ConfigurationRoot, path string) core.ConfigurationSection
Types ¶
type BinaryConfigurationProvider ¶
type BinaryConfigurationProvider struct { ConfigurationProvider // contains filtered or unexported fields }
func NewBinaryConfigurationProvider ¶
func NewBinaryConfigurationProvider(source *BinaryConfigurationSource, binaryLoader func(provider *BinaryConfigurationProvider, reader io.Reader)) *BinaryConfigurationProvider
func (*BinaryConfigurationProvider) Load ¶
func (provider *BinaryConfigurationProvider) Load()
type BinaryConfigurationSource ¶
type BinaryConfigurationSource struct {
// contains filtered or unexported fields
}
func NewBinaryConfigurationSource ¶
func NewBinaryConfigurationSource(fileProvider core.FileProvider, buildFunc func(*BinaryConfigurationSource, core.ConfigurationBuilder) core.ConfigurationProvider) *BinaryConfigurationSource
func NewJSONConfigurationSource ¶
func NewJSONConfigurationSource(fileProvider core.FileProvider) *BinaryConfigurationSource
func NewYamlConfigurationSource ¶
func NewYamlConfigurationSource(fileProvider core.FileProvider) *BinaryConfigurationSource
func (*BinaryConfigurationSource) Build ¶
func (source *BinaryConfigurationSource) Build(builder core.ConfigurationBuilder) core.ConfigurationProvider
type CmdLineConfigurationProvider ¶
type CmdLineConfigurationProvider struct { ConfigurationProvider // contains filtered or unexported fields }
func NewCmdLineConfigurationProvider ¶
func NewCmdLineConfigurationProvider(switchMapping map[string]string, args []string) *CmdLineConfigurationProvider
func (*CmdLineConfigurationProvider) Arguments ¶
func (provider *CmdLineConfigurationProvider) Arguments() []string
func (*CmdLineConfigurationProvider) Load ¶
func (provider *CmdLineConfigurationProvider) Load()
type CmdLineConfigurationSource ¶
type CmdLineConfigurationSource struct {
// contains filtered or unexported fields
}
func NewCmdLineConfigurationSource ¶
func NewCmdLineConfigurationSource(switchMapping map[string]string, args []string) *CmdLineConfigurationSource
func (*CmdLineConfigurationSource) Build ¶
func (source *CmdLineConfigurationSource) Build(builder core.ConfigurationBuilder) core.ConfigurationProvider
type ConfigurationBuilder ¶
type ConfigurationBuilder struct {
// contains filtered or unexported fields
}
func (*ConfigurationBuilder) AddCommandLine ¶
func (builder *ConfigurationBuilder) AddCommandLine(args []string, switchMapping map[string]string)
func (*ConfigurationBuilder) AddDir ¶
func (builder *ConfigurationBuilder) AddDir(path string, recursive bool)
func (*ConfigurationBuilder) AddJSONFile ¶
func (builder *ConfigurationBuilder) AddJSONFile(fileProvider core.FileProvider)
func (*ConfigurationBuilder) AddMemorySource ¶
func (builder *ConfigurationBuilder) AddMemorySource(initialData map[string]string)
extensions
func (*ConfigurationBuilder) AddSource ¶
func (builder *ConfigurationBuilder) AddSource(source core.ConfigurationSource)
func (*ConfigurationBuilder) AddYamlFile ¶
func (builder *ConfigurationBuilder) AddYamlFile(fileProvider core.FileProvider)
func (*ConfigurationBuilder) Build ¶
func (builder *ConfigurationBuilder) Build() (core.ConfigurationRoot, error)
func (*ConfigurationBuilder) Properties ¶
func (builder *ConfigurationBuilder) Properties() map[string]any
func (*ConfigurationBuilder) Sources ¶
func (builder *ConfigurationBuilder) Sources() []core.ConfigurationSource
type ConfigurationProvider ¶
type ConfigurationProvider struct {
// contains filtered or unexported fields
}
func NewConfigurationProvider ¶
func NewConfigurationProvider() *ConfigurationProvider
func (*ConfigurationProvider) GetChildKeys ¶
func (provider *ConfigurationProvider) GetChildKeys(earlierKeys []string, parentPath string) []string
func (*ConfigurationProvider) Load ¶
func (provider *ConfigurationProvider) Load()
func (*ConfigurationProvider) Map ¶
func (provider *ConfigurationProvider) Map() map[string]string
func (*ConfigurationProvider) Set ¶
func (provider *ConfigurationProvider) Set(k string, v string)
func (*ConfigurationProvider) TryGet ¶
func (provider *ConfigurationProvider) TryGet(k string) (string, core.ConfigurationProvider, bool)
type ConfigurationRoot ¶
type ConfigurationRoot struct {
// contains filtered or unexported fields
}
func (*ConfigurationRoot) GetChildren ¶
func (root *ConfigurationRoot) GetChildren() []core.ConfigurationSection
func (*ConfigurationRoot) GetChildrenImplementation ¶
func (root *ConfigurationRoot) GetChildrenImplementation(path string) []core.ConfigurationSection
func (*ConfigurationRoot) GetConfiguration ¶
func (root *ConfigurationRoot) GetConfiguration(providers []core.ConfigurationProvider, k string) string
func (*ConfigurationRoot) GetSection ¶
func (root *ConfigurationRoot) GetSection(k string) core.ConfigurationSection
Configuration Implementations
func (*ConfigurationRoot) GetString ¶
func (root *ConfigurationRoot) GetString(k string) string
func (*ConfigurationRoot) Providers ¶
func (root *ConfigurationRoot) Providers() []core.ConfigurationProvider
func (*ConfigurationRoot) Reload ¶
func (root *ConfigurationRoot) Reload() error
ConfigurationRoot Implementations
func (*ConfigurationRoot) SetConfiguration ¶
func (root *ConfigurationRoot) SetConfiguration(providers []core.ConfigurationProvider, k, v string)
func (*ConfigurationRoot) TryGetConfiguration ¶
func (root *ConfigurationRoot) TryGetConfiguration(providers []core.ConfigurationProvider, k string) (string, bool)
func (*ConfigurationRoot) TryGetString ¶
func (root *ConfigurationRoot) TryGetString(k string) (string, bool)
type ConfigurationSection ¶
type ConfigurationSection struct {
// contains filtered or unexported fields
}
func (*ConfigurationSection) GetChildren ¶
func (section *ConfigurationSection) GetChildren() []core.ConfigurationSection
func (*ConfigurationSection) GetSection ¶
func (section *ConfigurationSection) GetSection(k string) core.ConfigurationSection
func (*ConfigurationSection) GetString ¶
func (section *ConfigurationSection) GetString(k string) string
func (*ConfigurationSection) HasValue ¶
func (section *ConfigurationSection) HasValue() bool
func (*ConfigurationSection) Key ¶
func (section *ConfigurationSection) Key() string
ConfigurationSection Implementations
func (*ConfigurationSection) Path ¶
func (section *ConfigurationSection) Path() string
func (*ConfigurationSection) TryGetString ¶
func (section *ConfigurationSection) TryGetString(k string) (string, bool)
Configuration Implementations
func (*ConfigurationSection) Value ¶
func (section *ConfigurationSection) Value() string
type EnvironmentConfigurationProvider ¶
type EnvironmentConfigurationProvider struct { ConfigurationProvider // contains filtered or unexported fields }
func NewEnvironmentConfigurationProvider ¶
func NewEnvironmentConfigurationProvider(source *EnvironmentConfigurationSource) *EnvironmentConfigurationProvider
func (*EnvironmentConfigurationProvider) Load ¶
func (provider *EnvironmentConfigurationProvider) Load()
type EnvironmentConfigurationSource ¶
type EnvironmentConfigurationSource struct {
// contains filtered or unexported fields
}
func (*EnvironmentConfigurationSource) Build ¶
func (source *EnvironmentConfigurationSource) Build(builder core.ConfigurationBuilder) core.ConfigurationProvider
type JSONConfigurationProvider ¶
type JSONConfigurationProvider struct {
BinaryConfigurationProvider
}
func NewJSONConfigurationProvider ¶
func NewJSONConfigurationProvider(source *BinaryConfigurationSource) *JSONConfigurationProvider
type MemoryConfigurationProvider ¶
type MemoryConfigurationProvider struct { ConfigurationProvider // contains filtered or unexported fields }
func NewMemoryConfigurationProvider ¶
func NewMemoryConfigurationProvider(source *MemoryConfigurationSource) *MemoryConfigurationProvider
func (*MemoryConfigurationProvider) Add ¶
func (provider *MemoryConfigurationProvider) Add(k, v string)
type MemoryConfigurationSource ¶
type MemoryConfigurationSource struct {
// contains filtered or unexported fields
}
func NewMemoryConfigurationSource ¶
func NewMemoryConfigurationSource(initialData map[string]string) *MemoryConfigurationSource
func (*MemoryConfigurationSource) Build ¶
func (source *MemoryConfigurationSource) Build(builder core.ConfigurationBuilder) core.ConfigurationProvider
type YamlConfigurationProvider ¶
type YamlConfigurationProvider struct {
BinaryConfigurationProvider
}
func NewYamlConfigurationProvider ¶
func NewYamlConfigurationProvider(source *BinaryConfigurationSource) *YamlConfigurationProvider
Click to show internal directories.
Click to hide internal directories.