From 72945c9a284b6858594f1e8a43743c397e90c380 Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Sun, 18 Mar 2018 21:24:03 +0200 Subject: Organize files --- config.go | 80 --------------------------------------------------------------- 1 file changed, 80 deletions(-) delete mode 100644 config.go (limited to 'config.go') diff --git a/config.go b/config.go deleted file mode 100644 index f8696a4..0000000 --- a/config.go +++ /dev/null @@ -1,80 +0,0 @@ -// gomuks - A terminal Matrix client written in Go. -// Copyright (C) 2018 Tulir Asokan -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -package main - -import ( - "fmt" - "io/ioutil" - "os" - "path/filepath" - - "gopkg.in/yaml.v2" -) - -type Config struct { - MXID string `yaml:"mxid"` - HS string `yaml:"homeserver"` - - dir string `yaml:"-"` - gmx Gomuks `yaml:"-"` - debug DebugPrinter `yaml:"-"` - Session *Session `yaml:"-"` -} - -func NewConfig(gmx Gomuks, dir string) *Config { - return &Config{ - gmx: gmx, - debug: gmx.Debug(), - dir: dir, - } -} - -func (config *Config) Load() { - os.MkdirAll(config.dir, 0700) - configPath := filepath.Join(config.dir, "config.yaml") - data, err := ioutil.ReadFile(configPath) - if err != nil { - if os.IsNotExist(err) { - return - } else { - fmt.Println("Failed to read config from", configPath) - panic(err) - } - } - - err = yaml.Unmarshal(data, &config) - if err != nil { - fmt.Println("Failed to parse config at", configPath) - panic(err) - } -} - -func (config *Config) Save() { - os.MkdirAll(config.dir, 0700) - data, err := yaml.Marshal(&config) - if err != nil { - config.debug.Print("Failed to marshal config") - panic(err) - } - - path := filepath.Join(config.dir, "config.yaml") - err = ioutil.WriteFile(path, data, 0600) - if err != nil { - config.debug.Print("Failed to write config to", path) - panic(err) - } -} -- cgit v1.2.3