Files
bearhub/bauh/core/config.py
Vinicius Moreira 4b8226146e style combo
2019-09-11 19:04:56 -03:00

35 lines
812 B
Python

import json
import os
from pathlib import Path
from typing import List
from bauh import __app_name__
from bauh.api.constants import HOME_PATH
CONFIG_PATH = '{}/.config/{}'.format(HOME_PATH, __app_name__)
FILE_PATH = '{}/config.json'.format(CONFIG_PATH)
class Configuration:
def __init__(self, gems: List[str] = None, style: str = None):
self.gems = gems
self.style = style
def read() -> Configuration:
if os.path.exists(FILE_PATH):
with open(FILE_PATH) as f:
config_file = f.read()
return Configuration(**json.loads(config_file))
return Configuration(gems=None)
def save(config: Configuration):
Path(CONFIG_PATH).mkdir(parents=True, exist_ok=True)
with open(FILE_PATH, 'w+') as f:
f.write(json.dumps(config.__dict__, indent=2))