diff options
author | Lance Stout <lance@dingus.local> | 2011-05-27 16:59:52 -0700 |
---|---|---|
committer | Lance Stout <lance@dingus.local> | 2011-05-27 17:00:57 -0700 |
commit | 1735c194cdf83b61850bba45044070db6c42d0ac (patch) | |
tree | 56508a2c0955f8ca1d04e17c54e066080b43b961 /sleekxmpp/stanza | |
parent | 6997b2fbf87a080a12334b348653ed4cb30f9218 (diff) | |
download | slixmpp-1735c194cdf83b61850bba45044070db6c42d0ac.tar.gz slixmpp-1735c194cdf83b61850bba45044070db6c42d0ac.tar.bz2 slixmpp-1735c194cdf83b61850bba45044070db6c42d0ac.tar.xz slixmpp-1735c194cdf83b61850bba45044070db6c42d0ac.zip |
Don't use the send queue for stream initialization.
Use the parameter now=True to skip the queue when
sending Iq stanzas, or using xmpp.send().
Diffstat (limited to 'sleekxmpp/stanza')
-rw-r--r-- | sleekxmpp/stanza/iq.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sleekxmpp/stanza/iq.py b/sleekxmpp/stanza/iq.py index 82ab13ec..4a12a87e 100644 --- a/sleekxmpp/stanza/iq.py +++ b/sleekxmpp/stanza/iq.py @@ -154,7 +154,7 @@ class Iq(RootStanza): StanzaBase.reply(self, clear) return self - def send(self, block=True, timeout=None, callback=None): + def send(self, block=True, timeout=None, callback=None, now=False): """ Send an <iq> stanza over the XML stream. @@ -178,6 +178,9 @@ class Iq(RootStanza): Defaults to sleekxmpp.xmlstream.RESPONSE_TIMEOUT callback -- Optional reference to a stream handler function. Will be executed when a reply stanza is received. + now -- Indicates if the send queue should be skipped and send + the stanza immediately. Used during stream + initialization. Defaults to False. """ if timeout is None: timeout = self.stream.response_timeout @@ -188,15 +191,15 @@ class Iq(RootStanza): callback, once=True) self.stream.register_handler(handler) - StanzaBase.send(self) + StanzaBase.send(self, now=now) return handler_name elif block and self['type'] in ('get', 'set'): waitfor = Waiter('IqWait_%s' % self['id'], MatcherId(self['id'])) self.stream.register_handler(waitfor) - StanzaBase.send(self) + StanzaBase.send(self, now=now) return waitfor.wait(timeout) else: - return StanzaBase.send(self) + return StanzaBase.send(self, now=now) def _set_stanza_values(self, values): """ |