Software / code / prosody
Comparison
core/modulemanager.lua @ 403:da92afa267cf
Merging with main branch.
| author | Tobias Markmann <tm@ayena.de> |
|---|---|
| date | Sun, 23 Nov 2008 20:44:48 +0100 |
| parent | 400:068a813b6454 |
| child | 438:193f9dd64f17 |
comparison
equal
deleted
inserted
replaced
| 402:50f1c09541cd | 403:da92afa267cf |
|---|---|
| 76 | 76 |
| 77 setfenv(mod, pluginenv); | 77 setfenv(mod, pluginenv); |
| 78 local success, ret = pcall(mod); | 78 local success, ret = pcall(mod); |
| 79 if not success then | 79 if not success then |
| 80 log("error", "Error initialising module '%s': %s", name or "nil", ret or "nil"); | 80 log("error", "Error initialising module '%s': %s", name or "nil", ret or "nil"); |
| 81 return nil, err; | 81 return nil, ret; |
| 82 end | 82 end |
| 83 return true; | 83 return true; |
| 84 end | 84 end |
| 85 | 85 |
| 86 function handle_stanza(origin, stanza) | 86 function handle_stanza(origin, stanza) |
| 90 log("debug", "Stanza is an <iq/>"); | 90 log("debug", "Stanza is an <iq/>"); |
| 91 local child = stanza.tags[1]; | 91 local child = stanza.tags[1]; |
| 92 if child then | 92 if child then |
| 93 local xmlns = child.attr.xmlns or xmlns; | 93 local xmlns = child.attr.xmlns or xmlns; |
| 94 log("debug", "Stanza of type %s from %s has xmlns: %s", name, origin_type, xmlns); | 94 log("debug", "Stanza of type %s from %s has xmlns: %s", name, origin_type, xmlns); |
| 95 local handler = handlers[origin_type][name][xmlns]; | 95 local handler = handlers[origin_type][name] and handlers[origin_type][name][xmlns]; |
| 96 if handler then | 96 if handler then |
| 97 log("debug", "Passing stanza to mod_%s", handler_info[handler].name); | 97 log("debug", "Passing stanza to mod_%s", handler_info[handler].name); |
| 98 return handler(origin, stanza) or true; | 98 return handler(origin, stanza) or true; |
| 99 end | 99 end |
| 100 end | 100 end |
| 101 elseif handlers[origin_type] then | 101 elseif handlers[origin_type] then |