Initialize message handlers list in JCLComponent constructor
darcs-hash:20071204071304-86b55-6cf8201c40a62c4f36df187157aaa42e6acfdb77.gz
This commit is contained in:
@@ -628,7 +628,8 @@ class JCLComponent(Component, object):
|
|||||||
self.time_unit = 60
|
self.time_unit = 60
|
||||||
self.queue = Queue(100)
|
self.queue = Queue(100)
|
||||||
self.account_manager = account_manager_class(self)
|
self.account_manager = account_manager_class(self)
|
||||||
self.msg_handlers = []
|
self.msg_handlers = [[PasswordMessageHandler(self),
|
||||||
|
HelpMessageHandler(self)]]
|
||||||
self.presence_subscribe_handlers = [[AccountPresenceSubscribeHandler(self),
|
self.presence_subscribe_handlers = [[AccountPresenceSubscribeHandler(self),
|
||||||
RootPresenceSubscribeHandler(self)]]
|
RootPresenceSubscribeHandler(self)]]
|
||||||
self.presence_unsubscribe_handlers = [[AccountPresenceUnsubscribeHandler(self),
|
self.presence_unsubscribe_handlers = [[AccountPresenceUnsubscribeHandler(self),
|
||||||
@@ -769,9 +770,6 @@ class JCLComponent(Component, object):
|
|||||||
self.handle_message)
|
self.handle_message)
|
||||||
self.send_stanzas(self.account_manager.probe_all_accounts_presence())
|
self.send_stanzas(self.account_manager.probe_all_accounts_presence())
|
||||||
|
|
||||||
self.msg_handlers += [[PasswordMessageHandler(self),
|
|
||||||
HelpMessageHandler(self)]]
|
|
||||||
|
|
||||||
def signal_handler(self, signum, frame):
|
def signal_handler(self, signum, frame):
|
||||||
"""Stop method handler
|
"""Stop method handler
|
||||||
"""
|
"""
|
||||||
@@ -824,7 +822,13 @@ class JCLComponent(Component, object):
|
|||||||
apply_filter_func=None,
|
apply_filter_func=None,
|
||||||
apply_handle_func=None,
|
apply_handle_func=None,
|
||||||
send_result=True):
|
send_result=True):
|
||||||
"""Execute handler if their filter method does not return None"""
|
"""
|
||||||
|
Execute handler if their filter method does not return None
|
||||||
|
`handlers` is a list of handler groups which is a list of groups.
|
||||||
|
Only one successfull handler (its filter and its handler methods
|
||||||
|
does not return None) per group is executed. When a handler is
|
||||||
|
executed successfully the next group is processed.
|
||||||
|
"""
|
||||||
result = []
|
result = []
|
||||||
lang_class = self.lang.get_lang_class_from_node(stanza.get_node())
|
lang_class = self.lang.get_lang_class_from_node(stanza.get_node())
|
||||||
for handler_group in handlers:
|
for handler_group in handlers:
|
||||||
|
|||||||
@@ -81,5 +81,6 @@ class HelpMessageHandler(Handler):
|
|||||||
"""
|
"""
|
||||||
return [Message(to_jid=stanza.get_from(),
|
return [Message(to_jid=stanza.get_from(),
|
||||||
from_jid=stanza.get_to(),
|
from_jid=stanza.get_to(),
|
||||||
|
stanza_type=stanza.get_type(),
|
||||||
subject=lang_class.help_message_subject,
|
subject=lang_class.help_message_subject,
|
||||||
body=lang_class.help_message_body)]
|
body=lang_class.help_message_body)]
|
||||||
|
|||||||
Reference in New Issue
Block a user