Add a config get/set API (from @guilledk) ?
parent
f8af13d010
commit
e03da40867
|
@ -467,3 +467,51 @@ def load_accounts(
|
||||||
accounts['paper'] = None
|
accounts['paper'] = None
|
||||||
|
|
||||||
return accounts
|
return accounts
|
||||||
|
|
||||||
|
|
||||||
|
# XXX: Recursive getting & setting
|
||||||
|
|
||||||
|
def get_value(_dict, _section):
|
||||||
|
subs = _section.split('.')
|
||||||
|
if len(subs) > 1:
|
||||||
|
return get_value(
|
||||||
|
_dict[subs[0]],
|
||||||
|
'.'.join(subs[1:]),
|
||||||
|
)
|
||||||
|
|
||||||
|
else:
|
||||||
|
return _dict[_section]
|
||||||
|
|
||||||
|
|
||||||
|
def set_value(_dict, _section, val):
|
||||||
|
subs = _section.split('.')
|
||||||
|
if len(subs) > 1:
|
||||||
|
if subs[0] not in _dict:
|
||||||
|
_dict[subs[0]] = {}
|
||||||
|
|
||||||
|
return set_value(
|
||||||
|
_dict[subs[0]],
|
||||||
|
'.'.join(subs[1:]),
|
||||||
|
val
|
||||||
|
)
|
||||||
|
|
||||||
|
else:
|
||||||
|
_dict[_section] = val
|
||||||
|
|
||||||
|
|
||||||
|
def del_value(_dict, _section):
|
||||||
|
subs = _section.split('.')
|
||||||
|
if len(subs) > 1:
|
||||||
|
if subs[0] not in _dict:
|
||||||
|
return
|
||||||
|
|
||||||
|
return del_value(
|
||||||
|
_dict[subs[0]],
|
||||||
|
'.'.join(subs[1:])
|
||||||
|
)
|
||||||
|
|
||||||
|
else:
|
||||||
|
if _section not in _dict:
|
||||||
|
return
|
||||||
|
|
||||||
|
del _dict[_section]
|
||||||
|
|
Loading…
Reference in New Issue