summaryrefslogtreecommitdiff
path: root/sleekxmpp/xmlstream
diff options
context:
space:
mode:
authorLance Stout <lancestout@gmail.com>2010-07-19 13:58:53 -0400
committerLance Stout <lancestout@gmail.com>2010-07-19 13:58:53 -0400
commitd5e42ac0e7282500583bf17f21eb2f944600ce76 (patch)
tree28decf6b57e7072748f59c05d84de0f1fdf4101d /sleekxmpp/xmlstream
parente6bec8681e07ced607db1fbcbc5e356c3936f1d1 (diff)
downloadslixmpp-d5e42ac0e7282500583bf17f21eb2f944600ce76.tar.gz
slixmpp-d5e42ac0e7282500583bf17f21eb2f944600ce76.tar.bz2
slixmpp-d5e42ac0e7282500583bf17f21eb2f944600ce76.tar.xz
slixmpp-d5e42ac0e7282500583bf17f21eb2f944600ce76.zip
Condensed all of the stanzaPlugin functions into a single registerStanzaPlugin function.
Updated plugins and tests to use new function.
Diffstat (limited to 'sleekxmpp/xmlstream')
-rw-r--r--sleekxmpp/xmlstream/stanzabase.py12
1 files changed, 11 insertions, 1 deletions
diff --git a/sleekxmpp/xmlstream/stanzabase.py b/sleekxmpp/xmlstream/stanzabase.py
index 024fe6cf..7592e1f6 100644
--- a/sleekxmpp/xmlstream/stanzabase.py
+++ b/sleekxmpp/xmlstream/stanzabase.py
@@ -19,6 +19,16 @@ else:
xmltester = type(ET.Element('xml'))
+
+def registerStanzaPlugin(stanza, plugin):
+ """
+ Associate a stanza object as a plugin for another stanza.
+ """
+ tag = "{%s}%s" % (plugin.namespace, plugin.name)
+ stanza.plugin_attrib_map[plugin.plugin_attrib] = plugin
+ stanza.plugin_tag_map[tag] = plugin
+
+
class JID(object):
def __init__(self, jid):
self.jid = jid
@@ -392,4 +402,4 @@ class StanzaBase(ElementBase):
def __copy__(self):
return self.__class__(xml=copy.deepcopy(self.xml), stream=self.stream)
-
+