summaryrefslogtreecommitdiff
path: root/slixmpp/plugins/xep_0060/pubsub.py
diff options
context:
space:
mode:
authormathieui <mathieui@mathieui.net>2015-02-28 13:22:19 +0100
committermathieui <mathieui@mathieui.net>2015-02-28 19:02:49 +0100
commit997928de9140a4ac0a10a42883dbf18aca4aeec6 (patch)
tree4cd83ac161b4da491159412c95c84e9f0db41135 /slixmpp/plugins/xep_0060/pubsub.py
parent83d00a5913e6b7ef71de602e793b3973866c7120 (diff)
downloadslixmpp-997928de9140a4ac0a10a42883dbf18aca4aeec6.tar.gz
slixmpp-997928de9140a4ac0a10a42883dbf18aca4aeec6.tar.bz2
slixmpp-997928de9140a4ac0a10a42883dbf18aca4aeec6.tar.xz
slixmpp-997928de9140a4ac0a10a42883dbf18aca4aeec6.zip
Revert or edit most previous XEP plugin changes
In a single commit, because it isn’t that interesting to detail each change. List of reverts: Revert "XEP-0030: allow get_info and get_items to return a coroutine" This reverts commit 506ca6991790cffb90c5b6e3b765237ccc136e1a. Revert "XEP-0060: wrap all iq-sending functions with coroutine_wrapper" This reverts commit e85fa4203e0ee7108d8d37f73913c21628e3d6fc. Revert "XEP-0163: wrap publish() with coroutine_wrapper" This reverts commit 69da1c1d7cf7a1c0dbbeeb83f528b4e5f5b5be0c. Revert "XEP-0084: wrap functions with coroutine_wrapper" This reverts commit ea5615f236bd80fb4217398977833ca790cbef71. Partially revert 3d243f7 (XEP-0054) - continue wrapping functions but with future_wrapper Partially revert 115fe95 (xep-0153) - use callbacks rather than coroutine callbacks, and propagate iqtimeouts in set_avatar. Revert "XEP-0049: wrap functions with coroutine_wrapper" This reverts commit e68135f59f9a224688679eb91e8063041d6f000b. Revert "XEP-0077: wrap functions with coroutine_wrapper" This reverts commit 1e4944d47e8296fdaa792a8b3fc87ea99acc217c. Partially revert cd7ff685 (XEP-0199) - remove the iq.send wrapping but keep ping() as a coroutine Revert "XEP-0257: wrap functions with coroutine_wrapper" This reverts commit 4da870fd191697d010e677eee32ef86439967353. Revert "XEP-0092: wrap get_version() with coroutine_wrapper" This reverts commit 6e35948276c36ea2696f0de64dc179a1073ee3a6. Revert "XEP-0191: wrap functions with coroutine_wrapper" This reverts commit 6e8235544cc1bdefea75a8d93e5e3a48a13552ba. Revert "XEP-0280: wrap functions with coroutine_wrapper" This reverts commit f795ac02e322445be13077463638924d1f22d313. Revert "XEP-0012: wrap get_last_activity() with coroutine_wrapper" This reverts commit 2ee05d9616d2959d19a7a87d21c58e6aae1db56e. Revert "XEP-0202: wrap get_entity_time() with coroutine_wrapper" This reverts commit 6fb3ecd414f24374f17811d7ad2fd01e4924e311. Revert "XEP-0231: wrap get_bob() with coroutine_wrapper" This reverts commit 17464b10a42d9b3c4daba763e06e53c429478abd. Revert "XEP-0258: wrap get_catalog() with coroutine_wrapper" This reverts commit 18a4978456a33e6ea38de1e07b1aa43bcc10d45f. Revert "XEP-0050: wrap send_command() and get_commands() with coroutine_wrapper" This reverts commit e034b31d6bc34f43578456e9c6527bc56dff78e3. Revert "XEP-0279: wrap check_ip() with coroutine_wrapper" This reverts commit e112e864756f1222a044ee28e3c13c5925618b0c.
Diffstat (limited to 'slixmpp/plugins/xep_0060/pubsub.py')
-rw-r--r--slixmpp/plugins/xep_0060/pubsub.py130
1 files changed, 44 insertions, 86 deletions
diff --git a/slixmpp/plugins/xep_0060/pubsub.py b/slixmpp/plugins/xep_0060/pubsub.py
index bf5a615f..26258bc9 100644
--- a/slixmpp/plugins/xep_0060/pubsub.py
+++ b/slixmpp/plugins/xep_0060/pubsub.py
@@ -13,7 +13,6 @@ from slixmpp.xmlstream.handler import Callback
from slixmpp.xmlstream.matcher import StanzaPath
from slixmpp.plugins.base import BasePlugin
from slixmpp.plugins.xep_0060 import stanza
-from slixmpp import coroutine_wrapper
log = logging.getLogger(__name__)
@@ -152,9 +151,8 @@ class XEP_0060(BasePlugin):
"""
self.node_event_map[node] = event_name
- @coroutine_wrapper
def create_node(self, jid, node, config=None, ntype=None, ifrom=None,
- timeout_callback=None, callback=None, timeout=None, coroutine=False):
+ timeout_callback=None, callback=None, timeout=None):
"""
Create and configure a new pubsub node.
@@ -200,13 +198,11 @@ class XEP_0060(BasePlugin):
config.add_field(var='pubsub#node_type', value=ntype)
iq['pubsub']['configure'].append(config)
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
def subscribe(self, jid, node, bare=True, subscribee=None, options=None,
ifrom=None, timeout_callback=None, callback=None,
- timeout=None, coroutine=False):
+ timeout=None):
"""
Subscribe to updates from a pubsub node.
@@ -248,13 +244,11 @@ class XEP_0060(BasePlugin):
iq['pubsub']['subscribe']['jid'] = subscribee
if options is not None:
iq['pubsub']['options'].append(options)
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
def unsubscribe(self, jid, node, subid=None, bare=True, subscribee=None,
ifrom=None, timeout_callback=None, callback=None,
- timeout=None, coroutine=False):
+ timeout=None):
"""
Unubscribe from updates from a pubsub node.
@@ -297,52 +291,42 @@ class XEP_0060(BasePlugin):
iq['pubsub']['unsubscribe']['jid'] = subscribee
iq['pubsub']['unsubscribe']['subid'] = subid
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
def get_subscriptions(self, jid, node=None, ifrom=None,
timeout_callback=None, callback=None,
- timeout=None, coroutine=False):
+ timeout=None):
iq = self.xmpp.Iq(sto=jid, sfrom=ifrom, stype='get')
iq['pubsub']['subscriptions']['node'] = node
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
- def get_affiliations(self, jid, node=None, ifrom=None, timeout=None,
- timeout_callback=None, callback=None, coroutine=False):
+ def get_affiliations(self, jid, node=None, ifrom=None,
+ timeout_callback=None, callback=None, timeout=None):
iq = self.xmpp.Iq(sto=jid, sfrom=ifrom, stype='get')
iq['pubsub']['affiliations']['node'] = node
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
def get_subscription_options(self, jid, node=None, user_jid=None,
ifrom=None, timeout_callback=None,
- callback=None, timeout=None, coroutine=False):
+ callback=None, timeout=None):
iq = self.xmpp.Iq(sto=jid, sfrom=ifrom, stype='get')
if user_jid is None:
iq['pubsub']['default']['node'] = node
else:
iq['pubsub']['options']['node'] = node
iq['pubsub']['options']['jid'] = user_jid
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
def set_subscription_options(self, jid, node, user_jid, options,
ifrom=None, timeout_callback=None,
- callback=None, timeout=None, coroutine=False):
+ callback=None, timeout=None):
iq = self.xmpp.Iq(sto=jid, sfrom=ifrom, stype='get')
iq['pubsub']['options']['node'] = node
iq['pubsub']['options']['jid'] = user_jid
iq['pubsub']['options'].append(options)
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
- def get_node_config(self, jid, node=None, ifrom=None, coroutine=False,
+ def get_node_config(self, jid, node=None, ifrom=None,
timeout_callback=None, callback=None, timeout=None):
"""
Retrieve the configuration for a node, or the pubsub service's
@@ -365,13 +349,11 @@ class XEP_0060(BasePlugin):
iq['pubsub_owner']['default']
else:
iq['pubsub_owner']['configure']['node'] = node
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
def get_node_subscriptions(self, jid, node, ifrom=None,
timeout_callback=None, callback=None,
- timeout=None, coroutine=False):
+ timeout=None):
"""
Retrieve the subscriptions associated with a given node.
@@ -387,12 +369,10 @@ class XEP_0060(BasePlugin):
"""
iq = self.xmpp.Iq(sto=jid, sfrom=ifrom, stype='get')
iq['pubsub_owner']['subscriptions']['node'] = node
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
def get_node_affiliations(self, jid, node, ifrom=None, timeout_callback=None,
- callback=None, timeout=None, coroutine=False):
+ callback=None, timeout=None):
"""
Retrieve the affiliations associated with a given node.
@@ -408,12 +388,10 @@ class XEP_0060(BasePlugin):
"""
iq = self.xmpp.Iq(sto=jid, sfrom=ifrom, stype='get')
iq['pubsub_owner']['affiliations']['node'] = node
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
def delete_node(self, jid, node, ifrom=None, timeout_callback=None, callback=None,
- timeout=None, coroutine=False):
+ timeout=None):
"""
Delete a a pubsub node.
@@ -429,21 +407,18 @@ class XEP_0060(BasePlugin):
"""
iq = self.xmpp.Iq(sto=jid, sfrom=ifrom, stype='set')
iq['pubsub_owner']['delete']['node'] = node
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- def set_node_config(self, jid, node, config, ifrom=None, coroutine=False,
+ def set_node_config(self, jid, node, config, ifrom=None,
timeout_callback=None, callback=None, timeout=None):
iq = self.xmpp.Iq(sto=jid, sfrom=ifrom, stype='set')
iq['pubsub_owner']['configure']['node'] = node
iq['pubsub_owner']['configure'].append(config)
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
def publish(self, jid, node, id=None, payload=None, options=None,
ifrom=None, timeout_callback=None, callback=None,
- timeout=None, coroutine=False):
+ timeout=None):
"""
Add a new item to a node, or edit an existing item.
@@ -478,11 +453,9 @@ class XEP_0060(BasePlugin):
if payload is not None:
iq['pubsub']['publish']['item']['payload'] = payload
iq['pubsub']['publish_options'] = options
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
- def retract(self, jid, node, id, notify=None, ifrom=None, coroutine=False,
+ def retract(self, jid, node, id, notify=None, ifrom=None,
timeout_callback=None, callback=None, timeout=None):
"""
Delete a single item from a node.
@@ -492,30 +465,25 @@ class XEP_0060(BasePlugin):
iq['pubsub']['retract']['node'] = node
iq['pubsub']['retract']['notify'] = notify
iq['pubsub']['retract']['item']['id'] = id
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
def purge(self, jid, node, ifrom=None, timeout_callback=None, callback=None,
- timeout=None, coroutine=False):
+ timeout=None):
"""
Remove all items from a node.
"""
iq = self.xmpp.Iq(sto=jid, sfrom=ifrom, stype='set')
iq['pubsub_owner']['purge']['node'] = node
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
def get_nodes(self, *args, **kwargs):
"""
Discover the nodes provided by a Pubsub service, using disco.
"""
return self.xmpp['xep_0030'].get_items(*args, **kwargs)
- @coroutine_wrapper
- def get_item(self, jid, node, item_id, ifrom=None, timeout=None,
- timeout_callback=None, callback=None, coroutine=False):
+ def get_item(self, jid, node, item_id, ifrom=None,
+ timeout_callback=None, callback=None, timeout=None):
"""
Retrieve the content of an individual item.
"""
@@ -524,13 +492,11 @@ class XEP_0060(BasePlugin):
item['id'] = item_id
iq['pubsub']['items']['node'] = node
iq['pubsub']['items'].append(item)
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
def get_items(self, jid, node, item_ids=None, max_items=None,
iterator=False, ifrom=None, timeout_callback=None,
- callback=None, timeout=None, coroutine=False):
+ callback=None, timeout=None):
"""
Request the contents of a node's items.
@@ -553,26 +519,21 @@ class XEP_0060(BasePlugin):
if iterator:
return self.xmpp['xep_0059'].iterate(iq, 'pubsub')
else:
- return iq.send(callback=callback, timeout=timeout,
- coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
def get_item_ids(self, jid, node, ifrom=None, timeout_callback=None, callback=None,
- timeout=None, iterator=False, coroutine=False):
+ timeout=None, iterator=False):
"""
Retrieve the ItemIDs hosted by a given node, using disco.
"""
self.xmpp['xep_0030'].get_items(jid, node, ifrom=ifrom,
callback=callback, timeout=timeout,
iterator=iterator,
- timeout_callback=timeout_callback,
- coroutine=coroutine)
+ timeout_callback=timeout_callback)
- @coroutine_wrapper
def modify_affiliations(self, jid, node, affiliations=None, ifrom=None,
timeout_callback=None, callback=None,
- timeout=None, coroutine=False):
+ timeout=None):
iq = self.xmpp.Iq(sto=jid, sfrom=ifrom, stype='set')
iq['pubsub_owner']['affiliations']['node'] = node
@@ -585,13 +546,11 @@ class XEP_0060(BasePlugin):
aff['affiliation'] = affiliation
iq['pubsub_owner']['affiliations'].append(aff)
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)
- @coroutine_wrapper
- def modify_subscriptions(self, jid, node, subscriptions=None, ifrom=None,
- timeout_callback=None, callback=None,
- timeout=None, coroutine=False):
+ def modify_subscriptions(self, jid, node, subscriptions=None,
+ ifrom=None, timeout_callback=None,
+ callback=None, timeout=None):
iq = self.xmpp.Iq(sto=jid, sfrom=ifrom, stype='set')
iq['pubsub_owner']['subscriptions']['node'] = node
@@ -604,5 +563,4 @@ class XEP_0060(BasePlugin):
sub['subscription'] = subscription
iq['pubsub_owner']['subscriptions'].append(sub)
- return iq.send(callback=callback, timeout=timeout, coroutine=coroutine,
- timeout_callback=timeout_callback)
+ return iq.send(callback=callback, timeout=timeout, timeout_callback=timeout_callback)