Software /
code /
prosody
Diff
core/modulemanager.lua @ 589:d564f94d5727
Removed pre-multitable code from module manager
author | Waqas Hussain <waqas20@gmail.com> |
---|---|
date | Sun, 07 Dec 2008 02:56:17 +0500 |
parent | 579:81e68e5afce2 |
child | 590:54afe37cccbf |
line wrap: on
line diff
--- a/core/modulemanager.lua Sat Dec 06 20:25:51 2008 +0000 +++ b/core/modulemanager.lua Sun Dec 07 02:56:17 2008 +0500 @@ -118,39 +118,6 @@ end -function _handle_stanza(host, origin, stanza) - local name, xmlns, origin_type = stanza.name, stanza.attr.xmlns, origin.type; - - local handlers = stanza_handlers[host]; - if not handlers then - log("warn", "No handlers for %s", host); - return false; - end - - if name == "iq" and xmlns == "jabber:client" and handlers[origin_type] then - local child = stanza.tags[1]; - if child then - local xmlns = child.attr.xmlns or xmlns; - log("debug", "Stanza of type %s from %s has xmlns: %s", name, origin_type, xmlns); - local handler = handlers[origin_type][name] and handlers[origin_type][name][xmlns]; - if handler then - log("debug", "Passing stanza to mod_%s", handler_info[handler].name); - return handler(origin, stanza) or true; - end - end - elseif handlers[origin_type] then - local handler = handlers[origin_type][name]; - if handler then - handler = handler[xmlns]; - if handler then - log("debug", "Passing stanza to mod_%s", handler_info[handler].name); - return handler(origin, stanza) or true; - end - end - end - log("debug", "Stanza unhandled by any modules, xmlns: %s", stanza.attr.xmlns); - return false; -- we didn't handle it -end function handle_stanza(host, origin, stanza) local name, xmlns, origin_type = stanza.name, stanza.attr.xmlns, origin.type; if name == "iq" and xmlns == "jabber:client" then @@ -181,18 +148,6 @@ end -local function __add_iq_handler(module, origin_type, xmlns, handler) - local handlers = stanza_handlers[module.host]; - handlers[origin_type] = handlers[origin_type] or {}; - handlers[origin_type].iq = handlers[origin_type].iq or {}; - if not handlers[origin_type].iq[xmlns] then - handlers[origin_type].iq[xmlns]= handler; - handler_info[handler] = module; - module:log("debug", "I now handle tag 'iq' [%s] with payload namespace '%s'", origin_type, xmlns); - else - module:log("warn", "I wanted to handle tag 'iq' [%s] with payload namespace '%s' but mod_%s already handles that", origin_type, xmlns, handler_info[handlers[origin_type].iq[xmlns]].name); - end -end local function _add_iq_handler(module, origin_type, xmlns, handler) local handlers = m_stanza_handlers:get(module.host, origin_type, "iq", xmlns); if not handlers then @@ -226,18 +181,6 @@ function api:add_event_hook (...) return eventmanager.add_event_hook(...); end -local function __add_handler(module, origin_type, tag, xmlns, handler) - local handlers = stanza_handlers[module.host]; - handlers[origin_type] = handlers[origin_type] or {}; - if not handlers[origin_type][tag] then - handlers[origin_type][tag] = handlers[origin_type][tag] or {}; - handlers[origin_type][tag][xmlns]= handler; - handler_info[handler] = module; - module:log("debug", "I now handle tag '%s' [%s] with xmlns '%s'", tag, origin_type, xmlns); - elseif handler_info[handlers[origin_type][tag]] then - log("warning", "I wanted to handle tag '%s' [%s] but mod_%s already handles that", tag, origin_type, handler_info[handlers[origin_type][tag]].module.name); - end -end local function _add_handler(module, origin_type, tag, xmlns, handler) local handlers = m_stanza_handlers:get(module.host, origin_type, tag, xmlns); if not handlers then