12 local log = require "util.logger".init("componentmanager"); |
12 local log = require "util.logger".init("componentmanager"); |
13 local configmanager = require "core.configmanager"; |
13 local configmanager = require "core.configmanager"; |
14 local eventmanager = require "core.eventmanager"; |
14 local eventmanager = require "core.eventmanager"; |
15 local modulemanager = require "core.modulemanager"; |
15 local modulemanager = require "core.modulemanager"; |
16 local jid_split = require "util.jid".split; |
16 local jid_split = require "util.jid".split; |
|
17 local st = require "util.stanza"; |
17 local hosts = hosts; |
18 local hosts = hosts; |
18 |
19 |
19 local pairs, type, tostring = pairs, type, tostring; |
20 local pairs, type, tostring = pairs, type, tostring; |
20 |
21 |
21 local components = {}; |
22 local components = {}; |
33 |
34 |
34 |
35 |
35 module "componentmanager" |
36 module "componentmanager" |
36 |
37 |
37 local function default_component_handler(origin, stanza) |
38 local function default_component_handler(origin, stanza) |
38 origin.send(st.error_reply(stanza, "wait", "service-unavailable", "Component unavailable")); |
39 log("warn", "Stanza being handled by default component, bouncing error"); |
|
40 if stanza.attr.type ~= "error" then |
|
41 origin.send(st.error_reply(stanza, "wait", "service-unavailable", "Component unavailable")); |
|
42 end |
39 end |
43 end |
40 |
44 |
41 |
45 |
42 function load_enabled_components(config) |
46 function load_enabled_components(config) |
43 local defined_hosts = config or configmanager.getconfig(); |
47 local defined_hosts = config or configmanager.getconfig(); |