def parse(cls, path): fileinfo = FileInfo(path) if not fileinfo.is_file(): logger.debug('no exists metadata found.') return None metadata = PackageMetadata() fileinfo.load() try: content = fileinfo.load() except SerializeError: raise QuickExit( '[ERROR] <{}> is not a valid json file. try delete it for continue.' .format(path)) metadata.__dict__.update(content) return metadata
class GlobalSettings: def __init__(self): home = str(Path.home()) self._fileinfo = FileInfo(os.path.join(home, SYNC_CONFIG_NAME)) self._data = self._fileinfo.load() if self._fileinfo.is_exists( ) else {} def _save(self): self._fileinfo.dump(self._data) @property def token(self): return self._data.get('token') @token.setter def token(self, value): self._data['token'] = value self._save()