add initial function signatures

This commit is contained in:
2023-11-02 00:01:52 -07:00
parent 0b91893d31
commit 2c27fa61dc

143
env.go
View File

@@ -1,50 +1,163 @@
package config
import "errors"
import (
"errors"
"fmt"
"time"
)
type ConfigManager struct{}
type ConfigType string
var ConfigFileNotFoundError = errors.New("config File Not Found")
const (
ConfigTypeTOML ConfigType = "toml"
ConfigTypeYAML ConfigType = "yaml"
ConfigTypeJSON ConfigType = "json"
)
type ConfigManager struct {
configFileUsed string
configType ConfigType
autoEnvEnabled bool
envPrefix string
mapConfig map[string]any
defaultConfig map[string]any
}
var (
ErrConfigFileNotFound = errors.New("config File Not Found")
defaultConfigManager = NewConfigManager()
)
func NewConfigManager() *ConfigManager {
return &ConfigManager{}
}
func AutoMaticEnv() {
func AutoMaticEnv(enabled bool) {
defaultConfigManager.autoEnvEnabled = enabled
}
func ConfigFileUsed() {
func (c *ConfigManager) ConfigFileUsed() string {
return c.configFileUsed
}
func GetDuration() {
func ConfigFileUsed() string {
return defaultConfigManager.ConfigFileUsed()
}
func GetString() {
func (c *ConfigManager) GetBool(key string) bool {
}
func GetStringMap() {
func GetBool(key string) bool {
return defaultConfigManager.GetBool(key)
}
func GetStringSlice() {
func (c *ConfigManager) GetDuration(key string) time.Duration {
}
func ReadInConfig() {
func GetDuration(key string) time.Duration {
return defaultConfigManager.GetDuration(key)
}
func SetConfigFile() {
func (c *ConfigManager) GetString(key string) string {
}
func SetConfigName() {
func GetString(key string) string {
return defaultConfigManager.GetString(key)
}
func SetConfigType() {
func (c *ConfigManager) GetStringMap(key string) map[string]any {
}
func SetDefault() {
func GetStringMap(key string) map[string]any {
return defaultConfigManager.GetStringMap(key)
}
func Set() {
func (c *ConfigManager) GetStringSlice(key string) []string {
}
func GetStringSlice(key string) []string {
return defaultConfigManager.GetStringSlice(key)
}
func (c *ConfigManager) GetInt(key string) int {
}
func GetInt(key string) int {
return defaultConfigManager.GetInt(key)
}
func (c *ConfigManager) GetIntSlice(key string) []int {
}
func GetIntSlice(key string) []int {
return defaultConfigManager.GetIntSlice(key)
}
func (c *ConfigManager) ReadInConfig() error {
return nil
}
func ReadInConfig() error {
return defaultConfigManager.ReadInConfig()
}
func (c *ConfigManager) SetConfigFile(file string) {
c.configFileUsed = file
}
func SetConfigFile(file string) {
defaultConfigManager.SetConfigFile(file)
}
func (c *ConfigManager) SetConfigName(name string) {
}
func SetConfigName(name string) {
defaultConfigManager.SetConfigName(name)
}
func (c *ConfigManager) SetConfigType(configType string) error {
switch configType {
case "toml":
c.configType = ConfigTypeTOML
case "yaml":
c.configType = ConfigTypeYAML
case "json":
c.configType = ConfigTypeJSON
default:
return fmt.Errorf("config type %s not supported", configType)
}
return nil
}
func SetConfigType(configType string) error {
return defaultConfigManager.SetConfigType(configType)
}
func (c *ConfigManager) SetDefault(key string, value any) {
}
func SetDefault(key string, value any) {
defaultConfigManager.SetDefault(key, value)
}
func (c *ConfigManager) SetEnvPrefix(prefix string) {
}
func SetEnvPrefix(prefix string) {
defaultConfigManager.SetEnvPrefix(prefix)
}
func (c *ConfigManager) Set(key string, value any) {
}
func Set(key string, value any) {
defaultConfigManager.Set(key, value)
}
func (c *ConfigManager) WriteConfig() {
}
func WriteConfig() {
defaultConfigManager.WriteConfig()
}