34 lines
716 B
Go
34 lines
716 B
Go
package main
|
|
|
|
import "github.com/spf13/viper"
|
|
|
|
type Config struct {
|
|
BotPrefix string `yaml:"bot.prefix"`
|
|
BotToken string `yaml:"bot.token"`
|
|
ViperConf *viper.Viper
|
|
}
|
|
|
|
func (config Config) GenerateConfig(configName string) Config {
|
|
vi := viper.New()
|
|
vi.SetConfigFile(configName + ".yml")
|
|
vi.ReadInConfig()
|
|
config.BotPrefix = vi.GetString("bot.prefix")
|
|
config.BotToken = vi.GetString("bot.token")
|
|
config.ViperConf = vi
|
|
|
|
return config
|
|
}
|
|
|
|
func (config Config) GetString(key string) string {
|
|
return config.ViperConf.GetString(key)
|
|
}
|
|
|
|
func (config Config) GetInt(key string) int {
|
|
return config.ViperConf.GetInt(key)
|
|
}
|
|
|
|
func (config Config) LoadConfig() Config {
|
|
//TODO make this load config
|
|
return config
|
|
}
|