Move XEP-0050 to new system.

This commit is contained in:
Lance Stout 2012-03-11 21:20:05 -07:00
parent 1f5a3a4445
commit ad8fd91b7a
2 changed files with 17 additions and 11 deletions

View file

@ -6,5 +6,14 @@
See the file LICENSE for copying permission.
"""
from sleekxmpp.plugins.base import register_plugin
from sleekxmpp.plugins.xep_0050.stanza import Command
from sleekxmpp.plugins.xep_0050.adhoc import xep_0050
from sleekxmpp.plugins.xep_0050.adhoc import XEP_0050
register_plugin(XEP_0050)
# Retain some backwards compatibility
xep_0050 = XEP_0050

View file

@ -14,7 +14,7 @@ from sleekxmpp.exceptions import IqError
from sleekxmpp.xmlstream.handler import Callback
from sleekxmpp.xmlstream.matcher import StanzaPath
from sleekxmpp.xmlstream import register_stanza_plugin, JID
from sleekxmpp.plugins.base import base_plugin
from sleekxmpp.plugins import BasePlugin
from sleekxmpp.plugins.xep_0050 import stanza
from sleekxmpp.plugins.xep_0050 import Command
from sleekxmpp.plugins.xep_0004 import Form
@ -23,7 +23,7 @@ from sleekxmpp.plugins.xep_0004 import Form
log = logging.getLogger(__name__)
class xep_0050(base_plugin):
class XEP_0050(BasePlugin):
"""
XEP-0050: Ad-Hoc Commands
@ -78,12 +78,13 @@ class xep_0050(base_plugin):
terminate_command -- Command user API: delete a command's session
"""
name = 'xep_0050'
description = 'XEP-0050: Ad-Hoc Commands'
dependencies = set(['xep_0030', 'xep_0004'])
stanza = stanza
def plugin_init(self):
"""Start the XEP-0050 plugin."""
self.xep = '0050'
self.description = 'Ad-Hoc Commands'
self.stanza = stanza
self.threaded = self.config.get('threaded', True)
self.commands = {}
self.sessions = self.config.get('session_db', {})
@ -109,9 +110,6 @@ class xep_0050(base_plugin):
self._handle_command_complete,
threaded=self.threaded)
def post_init(self):
"""Handle cross-plugin interactions."""
base_plugin.post_init(self)
self.xmpp['xep_0030'].add_feature(Command.namespace)
def set_backend(self, db):
@ -369,7 +367,6 @@ class xep_0050(base_plugin):
del self.sessions[sessionid]
# =================================================================
# Client side (command user) API