1
0
mirror of https://github.com/gryf/ebook-converter.git synced 2026-01-20 03:24:12 +01:00

Removed unused class and function in config module.

This commit is contained in:
2020-09-06 18:30:21 +02:00
parent 2c787fd5bf
commit 61d59cb84a

View File

@@ -11,11 +11,6 @@ from ebook_converter import constants_old
from ebook_converter.utils.config_base import json_dumps, json_loads
def check_config_write_access():
return (os.access(constants_old.config_dir, os.W_OK) and
os.access(constants_old.config_dir, os.X_OK))
class CustomHelpFormatter(optparse.IndentedHelpFormatter):
def format_usage(self, usage):
@@ -177,103 +172,6 @@ class OptionParser(optparse.OptionParser):
return optparse.OptionParser.add_option_group(self, *args, **kwargs)
class DynamicConfig(dict):
'''
A replacement for QSettings that supports dynamic config keys.
Returns `None` if a config key is not found. Note that the config
data is stored in a JSON file.
'''
def __init__(self, name='dynamic'):
dict.__init__(self, {})
self.name = name
self.defaults = {}
self.refresh()
@property
def file_path(self):
return os.path.join(constants_old.config_dir, self.name+'.pickle.json')
def decouple(self, prefix):
self.name = prefix + self.name
self.refresh()
def read_old_serialized_representation(self):
from ebook_converter.utils.serialize import pickle_loads
path = self.file_path.rpartition('.')[0]
try:
with open(path, 'rb') as f:
raw = f.read()
except EnvironmentError:
raw = b''
try:
d = pickle_loads(raw).copy()
except Exception:
d = {}
return d
def refresh(self, clear_current=True):
d = {}
migrate = False
if clear_current:
self.clear()
if os.path.exists(self.file_path):
with open(self.file_path) as f:
raw = f.read()
if raw:
try:
d = json_loads(raw)
except Exception as err:
print('Failed to de-serialize JSON representation of stored dynamic data for {} with error: {}'.format(
self.name, err))
else:
d = self.read_old_serialized_representation()
migrate = bool(d)
else:
d = self.read_old_serialized_representation()
migrate = bool(d)
if migrate and d:
raw = json_dumps(d, ignore_unserializable=True)
with open(self.file_path) as f:
f.seek(0), f.truncate()
f.write(raw)
self.update(d)
def __getitem__(self, key):
try:
return dict.__getitem__(self, key)
except KeyError:
return self.defaults.get(key, None)
def get(self, key, default=None):
try:
return dict.__getitem__(self, key)
except KeyError:
return self.defaults.get(key, default)
def __setitem__(self, key, val):
dict.__setitem__(self, key, val)
self.commit()
def set(self, key, val):
self.__setitem__(key, val)
def commit(self):
if not getattr(self, 'name', None):
return
if not os.path.exists(self.file_path):
make_config_dir()
raw = json_dumps(self)
with open(self.file_path) as f:
f.seek(0)
f.truncate()
f.write(raw)
dynamic = DynamicConfig()
class XMLConfig(dict):
'''