backend, bridge: asynchronous history

quick_frontend: use of asynchronous history
This commit is contained in:
Goffi 2011-11-08 01:08:11 +01:00
commit f1966d9692

View file

@ -80,13 +80,13 @@ class DbusObject(dbus.service.Object):
result = self.cb[name](*args, **kwargs)
if async:
if not isinstance(result, Deferred):
error("Asynchrone method [%s] does not return a Deferred." % name)
error("Asynchronous method [%s] does not return a Deferred." % name)
raise AsyncNotDeferred
result.addCallback(callback)
result.addErrback(lambda err:errback(GenericException(err)))
else:
if isinstance(result, Deferred):
error("Synchrone method [%s] return a Deferred." % name)
error("Synchronous method [%s] return a Deferred." % name)
raise DeferredNotAsync
return result
@ -252,10 +252,10 @@ class DbusObject(dbus.service.Object):
return self._callback("getContacts", unicode(profile_key))
@dbus.service.method(const_INT_PREFIX+const_CORE_SUFFIX,
in_signature='ssi', out_signature='a{i(ss)}',
async_callbacks=None)
def getHistory(self, from_jid, to_jid, size):
return self._callback("getHistory", unicode(from_jid), unicode(to_jid), size)
in_signature='ssib', out_signature='a{i(sss)}',
async_callbacks=('callback', 'errback'))
def getHistory(self, from_jid, to_jid, limit, between=True, callback=None, errback=None):
return self._callback("getHistory", unicode(from_jid), unicode(to_jid), limit, between, callback=callback, errback=errback)
@dbus.service.method(const_INT_PREFIX+const_CORE_SUFFIX,
in_signature='ss', out_signature='s',