mirror of
https://github.com/taigrr/jety.git
synced 2026-04-02 03:19:03 -07:00
- collapse() now applies env vars for keys present in fileConfig, not just defaultConfig. Previously, env vars couldn't override file values unless a default was also set for that key. - SetDefault no longer pollutes overrideConfig; it correctly resolves the value by checking override > env > file > default. - Remove unused explicitDefaults field and UseExplicitDefaults method. - Add IsSet, AllKeys, AllSettings methods + package-level wrappers. - Add missing package-level wrappers: Get, SetBool, SetString, SetConfigDir, WithEnvPrefix. - Add tests for all new methods and the env-over-file-without-default fix.
102 lines
2.0 KiB
Go
102 lines
2.0 KiB
Go
package jety
|
|
|
|
import "time"
|
|
|
|
var defaultConfigManager = NewConfigManager()
|
|
|
|
func GetIntSlice(key string) []int {
|
|
return defaultConfigManager.GetIntSlice(key)
|
|
}
|
|
|
|
func ReadInConfig() error {
|
|
return defaultConfigManager.ReadInConfig()
|
|
}
|
|
|
|
func SetConfigFile(file string) {
|
|
defaultConfigManager.SetConfigFile(file)
|
|
}
|
|
|
|
func SetConfigName(name string) {
|
|
defaultConfigManager.SetConfigName(name)
|
|
}
|
|
|
|
func GetInt(key string) int {
|
|
return defaultConfigManager.GetInt(key)
|
|
}
|
|
|
|
func SetEnvPrefix(prefix string) {
|
|
defaultConfigManager.SetEnvPrefix(prefix)
|
|
}
|
|
|
|
func SetConfigType(configType string) error {
|
|
return defaultConfigManager.SetConfigType(configType)
|
|
}
|
|
|
|
func SetDefault(key string, value any) {
|
|
defaultConfigManager.SetDefault(key, value)
|
|
}
|
|
|
|
func Set(key string, value any) {
|
|
defaultConfigManager.Set(key, value)
|
|
}
|
|
|
|
func WriteConfig() error {
|
|
return defaultConfigManager.WriteConfig()
|
|
}
|
|
|
|
func ConfigFileUsed() string {
|
|
return defaultConfigManager.ConfigFileUsed()
|
|
}
|
|
|
|
func GetBool(key string) bool {
|
|
return defaultConfigManager.GetBool(key)
|
|
}
|
|
|
|
func GetDuration(key string) time.Duration {
|
|
return defaultConfigManager.GetDuration(key)
|
|
}
|
|
|
|
func GetString(key string) string {
|
|
return defaultConfigManager.GetString(key)
|
|
}
|
|
|
|
func GetStringMap(key string) map[string]any {
|
|
return defaultConfigManager.GetStringMap(key)
|
|
}
|
|
|
|
func GetStringSlice(key string) []string {
|
|
return defaultConfigManager.GetStringSlice(key)
|
|
}
|
|
|
|
func Get(key string) any {
|
|
return defaultConfigManager.Get(key)
|
|
}
|
|
|
|
func SetBool(key string, value bool) {
|
|
defaultConfigManager.SetBool(key, value)
|
|
}
|
|
|
|
func SetString(key string, value string) {
|
|
defaultConfigManager.SetString(key, value)
|
|
}
|
|
|
|
func SetConfigDir(path string) {
|
|
defaultConfigManager.SetConfigDir(path)
|
|
}
|
|
|
|
func WithEnvPrefix(prefix string) *ConfigManager {
|
|
return defaultConfigManager.WithEnvPrefix(prefix)
|
|
}
|
|
|
|
func IsSet(key string) bool {
|
|
return defaultConfigManager.IsSet(key)
|
|
}
|
|
|
|
func AllKeys() []string {
|
|
return defaultConfigManager.AllKeys()
|
|
}
|
|
|
|
func AllSettings() map[string]any {
|
|
return defaultConfigManager.AllSettings()
|
|
}
|