new method 'delete' in storage and config
This commit is contained in:
parent
bf754b1859
commit
ebe29a061f
6 changed files with 37 additions and 0 deletions
|
|
@ -44,6 +44,10 @@ class ApplicationStorage(object):
|
||||||
if self.storage:
|
if self.storage:
|
||||||
return self.storage.set('applications', self.name, *args)
|
return self.storage.set('applications', self.name, *args)
|
||||||
|
|
||||||
|
def delete(self, *args):
|
||||||
|
if self.storage:
|
||||||
|
return self.storage.delete('applications', self.name, *args)
|
||||||
|
|
||||||
def get(self, *args, **kwargs):
|
def get(self, *args, **kwargs):
|
||||||
if self.storage:
|
if self.storage:
|
||||||
return self.storage.get('applications', self.name, *args, **kwargs)
|
return self.storage.get('applications', self.name, *args, **kwargs)
|
||||||
|
|
|
||||||
|
|
@ -40,6 +40,10 @@ class BackendStorage(object):
|
||||||
if self.storage:
|
if self.storage:
|
||||||
return self.storage.set('backends', self.name, *args)
|
return self.storage.set('backends', self.name, *args)
|
||||||
|
|
||||||
|
def delete(self, *args):
|
||||||
|
if self.storage:
|
||||||
|
return self.storage.delete('backends', self.name, *args)
|
||||||
|
|
||||||
def get(self, *args, **kwargs):
|
def get(self, *args, **kwargs):
|
||||||
if self.storage:
|
if self.storage:
|
||||||
return self.storage.get('backends', self.name, *args, **kwargs)
|
return self.storage.get('backends', self.name, *args, **kwargs)
|
||||||
|
|
|
||||||
|
|
@ -30,5 +30,8 @@ class IConfig:
|
||||||
def set(self, *args):
|
def set(self, *args):
|
||||||
raise NotImplementedError()
|
raise NotImplementedError()
|
||||||
|
|
||||||
|
def delete(self, *args):
|
||||||
|
raise NotImplementedError()
|
||||||
|
|
||||||
def get(self, *args, **kwargs):
|
def get(self, *args, **kwargs):
|
||||||
raise NotImplementedError()
|
raise NotImplementedError()
|
||||||
|
|
|
||||||
|
|
@ -98,3 +98,11 @@ class INIConfig(IConfig):
|
||||||
v[k] = {}
|
v[k] = {}
|
||||||
v = v[k]
|
v = v[k]
|
||||||
v[args[-2]] = args[-1]
|
v[args[-2]] = args[-1]
|
||||||
|
|
||||||
|
def delete(self, *args):
|
||||||
|
v = self.values
|
||||||
|
for k in args[:-1]:
|
||||||
|
if k not in v:
|
||||||
|
return
|
||||||
|
v = v[k]
|
||||||
|
v.pop(args[-1], None)
|
||||||
|
|
|
||||||
|
|
@ -93,3 +93,15 @@ class YamlConfig(IConfig):
|
||||||
raise ConfigError()
|
raise ConfigError()
|
||||||
|
|
||||||
v[args[-2]] = args[-1]
|
v[args[-2]] = args[-1]
|
||||||
|
|
||||||
|
def delete(self, *args):
|
||||||
|
v = self.values
|
||||||
|
for a in args[:-1]:
|
||||||
|
try:
|
||||||
|
v = v[a]
|
||||||
|
except KeyError:
|
||||||
|
return
|
||||||
|
except TypeError:
|
||||||
|
raise ConfigError()
|
||||||
|
|
||||||
|
v.pop(args[-1], None)
|
||||||
|
|
|
||||||
|
|
@ -31,6 +31,9 @@ class IStorage:
|
||||||
def set(self, what, name, *args):
|
def set(self, what, name, *args):
|
||||||
raise NotImplementedError()
|
raise NotImplementedError()
|
||||||
|
|
||||||
|
def delete(self, what, name, *args):
|
||||||
|
raise NotImplementedError()
|
||||||
|
|
||||||
def get(self, what, name, *args, **kwargs):
|
def get(self, what, name, *args, **kwargs):
|
||||||
raise NotImplementedError()
|
raise NotImplementedError()
|
||||||
|
|
||||||
|
|
@ -56,5 +59,8 @@ class StandardStorage(IStorage):
|
||||||
def set(self, what, name, *args):
|
def set(self, what, name, *args):
|
||||||
self.config.set(what, name, *args)
|
self.config.set(what, name, *args)
|
||||||
|
|
||||||
|
def delete(self, what, name, *args):
|
||||||
|
self.config.delete(what, name, *args)
|
||||||
|
|
||||||
def get(self, what, name, *args, **kwargs):
|
def get(self, what, name, *args, **kwargs):
|
||||||
return self.config.get(what, name, *args, **kwargs)
|
return self.config.get(what, name, *args, **kwargs)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue