func ReadJSON(r io.Reader, myID protocol.DeviceID) (Configuration, error) { var cfg Configuration util.SetDefaults(&cfg) util.SetDefaults(&cfg.Options) util.SetDefaults(&cfg.GUI) err := json.NewDecoder(r).Decode(&cfg) cfg.OriginalVersion = cfg.Version cfg.prepare(myID) return cfg, err }
func New(myID protocol.DeviceID) Configuration { var cfg Configuration cfg.Version = CurrentVersion cfg.OriginalVersion = CurrentVersion util.SetDefaults(&cfg) util.SetDefaults(&cfg.Options) util.SetDefaults(&cfg.GUI) cfg.prepare(myID) return cfg }
func New(myID protocol.DeviceID) Configuration { var cfg Configuration cfg.Version = CurrentVersion cfg.OriginalVersion = CurrentVersion util.SetDefaults(&cfg) util.SetDefaults(&cfg.Options) util.SetDefaults(&cfg.GUI) // Can't happen. if err := cfg.prepare(myID); err != nil { panic("bug: error in preparing new folder: " + err.Error()) } return cfg }
func ReadXML(r io.Reader, myID protocol.DeviceID) (Configuration, error) { var cfg Configuration util.SetDefaults(&cfg) util.SetDefaults(&cfg.Options) util.SetDefaults(&cfg.GUI) if err := xml.NewDecoder(r).Decode(&cfg); err != nil { return Configuration{}, err } cfg.OriginalVersion = cfg.Version if err := cfg.prepare(myID); err != nil { return Configuration{}, err } return cfg, nil }
func ReadJSON(r io.Reader, myID protocol.DeviceID) (Configuration, error) { var cfg Configuration util.SetDefaults(&cfg) util.SetDefaults(&cfg.Options) util.SetDefaults(&cfg.GUI) bs, err := ioutil.ReadAll(r) if err != nil { return cfg, err } err = json.Unmarshal(bs, &cfg) cfg.OriginalVersion = cfg.Version cfg.prepare(myID) return cfg, err }