Commit f65ca1c8 authored by Romain Bignon's avatar Romain Bignon

improve caps

parent 0afb45d7
......@@ -23,10 +23,7 @@ class Backend:
def __init__(self, weboob):
self.weboob = weboob
def has_caps(self, caps):
if not isinstance(caps, (list,tuple)):
caps = (caps,)
def has_caps(self, *caps):
for c in caps:
if isinstance(self, c):
return True
......
......@@ -33,11 +33,11 @@ class Application(BaseApplication):
self.weboob.load_modules()
for name, backend in self.weboob.iter_backends():
print '= Processing backend name = %s' % name
if isinstance(backend, ICapMessages):
if backend.has_caps(ICapMessages):
print '== Backend is ICapMessages => print its messages'
for message in backend.iter_new_messages():
print '=== %s' % message
if isinstance(backend, ICapMessagesReply):
if backend.has_caps(ICapMessagesReply):
print '== Backend is ICapMessagesReply => TODO'
if __name__ == '__main__':
......
......@@ -39,10 +39,7 @@ class Module:
if not self.klass:
raise ImportError("This is not a backend module (no Backend class found)")
def has_caps(self, caps):
if not isinstance(caps, (list,tuple)):
caps = (caps,)
def has_caps(self, *caps):
for c in caps:
if issubclass(self.klass, c):
return True
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment