# -*- coding: utf-8 -*- import os import pickle config_dir = "/.cache/pamhyr/" config_file = "config.pkl" class Config(object): def __init__(self): super(Config, self).__init__() self.filename = Config.filename() self.set_default_value() def set_default_value(self): # Solvers self.solvers = [] # Mailleur self.mailleur = "" # Const self.segment = 1000 self.max_listing = 500000 # Backup self.backup_enable = True self.backup_path = "" self.backup_frequence = "00:05:00" self.backup_max = 10 @classmethod def filename(cls): return os.environ["HOME"] + config_dir + config_file def save(self): os.makedirs(os.path.dirname(self.filename), exist_ok=True) with open(self.filename, 'wb') as out_file: pickle.dump(self, out_file) @classmethod def load(cls): filename = cls.filename() if os.path.isfile(filename): with open(filename, 'rb') as in_file: me = pickle.load(in_file) return me else: print("config: New config") return cls()