From adb77fc58625f63d347f03a4ca99727690b8fedf Mon Sep 17 00:00:00 2001 From: Romain Bignon Date: Tue, 27 Apr 2010 00:59:31 +0200 Subject: [PATCH] new methods Weboob.do() and Weboob.do_caps() to do asynchronous calls --- weboob/ouiboube.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/weboob/ouiboube.py b/weboob/ouiboube.py index 473f1b30..66a89454 100644 --- a/weboob/ouiboube.py +++ b/weboob/ouiboube.py @@ -21,6 +21,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. import os from logging import warning +from weboob.bcall import BackendsCall from weboob.modules import ModulesLoader, BackendsConfig from weboob.scheduler import Scheduler @@ -94,6 +95,14 @@ class Weboob(object): if caps is None or backend.has_caps(caps): yield backend + def do(self, function, *args, **kwargs): + backends = [b for b in self.iter_backends()] + return BackendsCall(backends, function, *args, **kwargs) + + def do_caps(self, caps, function, *args, **kwargs): + backends = [b for b in self.iter_backends(caps)] + return BackendsCall(backends, function, *args, **kwargs) + def schedule(self, interval, function, *args): return self.scheduler.schedule(interval, function, *args)