Polish websocket code

This commit is contained in:
Adrian Gallagher
2017-09-04 16:24:02 +10:00
parent 69aa445a3a
commit 2bd27feaf0
22 changed files with 916 additions and 793 deletions

View File

@@ -413,6 +413,22 @@ func (c *Config) LoadConfig(configPath string) error {
return fmt.Errorf(ErrCheckingConfigValues, err)
}
if c.SMS.Enabled {
err = c.CheckSMSGlobalConfigValues()
if err != nil {
log.Print(fmt.Errorf(ErrCheckingConfigValues, err))
c.SMS.Enabled = false
}
}
if c.Webserver.Enabled {
err = c.CheckWebserverConfigValues()
if err != nil {
log.Print(fmt.Errorf(ErrCheckingConfigValues, err))
c.Webserver.Enabled = false
}
}
if c.CurrencyPairFormat == nil {
c.CurrencyPairFormat = &CurrencyPairFormatConfig{
Delimiter: "-",
@@ -423,6 +439,43 @@ func (c *Config) LoadConfig(configPath string) error {
return nil
}
// UpdateConfig updates the config with a supplied config file
func (c *Config) UpdateConfig(configPath string, newCfg Config) error {
if c.Name != newCfg.Name && newCfg.Name != "" {
c.Name = newCfg.Name
}
err := newCfg.CheckExchangeConfigValues()
if err != nil {
return err
}
c.Exchanges = newCfg.Exchanges
if c.CurrencyPairFormat != newCfg.CurrencyPairFormat {
c.CurrencyPairFormat = newCfg.CurrencyPairFormat
}
c.Portfolio = newCfg.Portfolio
err = newCfg.CheckSMSGlobalConfigValues()
if err != nil {
return err
}
c.SMS = newCfg.SMS
err = c.SaveConfig(configPath)
if err != nil {
return err
}
err = c.LoadConfig(configPath)
if err != nil {
return err
}
return nil
}
// GetConfig returns a pointer to a confiuration object
func GetConfig() *Config {
return &Cfg