Make sure we always load our default config values
This commit is contained in:
@@ -12,6 +12,29 @@ type Config struct {
|
||||
Bridge bridge `yaml:"bridge"`
|
||||
}
|
||||
|
||||
func (cfg *Config) setDefaults() error {
|
||||
if err := cfg.Appservice.setDefaults(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := cfg.Bridge.setDefaults(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (cfg *Config) UnmarshalYAML(unmarshal func(interface{}) error) error {
|
||||
type rawConfig Config
|
||||
|
||||
raw := rawConfig{}
|
||||
if err := unmarshal(&raw); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return cfg.setDefaults()
|
||||
}
|
||||
|
||||
func FromBytes(data []byte) (*Config, error) {
|
||||
cfg := Config{}
|
||||
|
||||
@@ -19,6 +42,8 @@ func FromBytes(data []byte) (*Config, error) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
cfg.setDefaults()
|
||||
|
||||
return &cfg, nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user