Software /
code /
prosody
Comparison
core/modulemanager.lua @ 709:8bb83563cb21
Automated merge with http://waqas.ath.cx:8000/
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Tue, 13 Jan 2009 15:29:00 +0000 |
parent | 708:b72d408f5f15 |
parent | 698:d8a678e40a0a |
child | 710:56f6c115bc69 |
comparison
equal
deleted
inserted
replaced
708:b72d408f5f15 | 709:8bb83563cb21 |
---|---|
25 local log = logger.init("modulemanager"); | 25 local log = logger.init("modulemanager"); |
26 local addDiscoInfoHandler = require "core.discomanager".addDiscoInfoHandler; | 26 local addDiscoInfoHandler = require "core.discomanager".addDiscoInfoHandler; |
27 local eventmanager = require "core.eventmanager"; | 27 local eventmanager = require "core.eventmanager"; |
28 local config = require "core.configmanager"; | 28 local config = require "core.configmanager"; |
29 local multitable_new = require "util.multitable".new; | 29 local multitable_new = require "util.multitable".new; |
30 | 30 local register_actions = require "core.actions".register; |
31 | 31 |
32 local loadfile, pcall = loadfile, pcall; | 32 local loadfile, pcall = loadfile, pcall; |
33 local setmetatable, setfenv, getfenv = setmetatable, setfenv, getfenv; | 33 local setmetatable, setfenv, getfenv = setmetatable, setfenv, getfenv; |
34 local pairs, ipairs = pairs, ipairs; | 34 local pairs, ipairs = pairs, ipairs; |
35 local t_insert = table.insert; | 35 local t_insert = table.insert; |
66 local modules_enabled = config.get("*", "core", "modules_enabled"); | 66 local modules_enabled = config.get("*", "core", "modules_enabled"); |
67 local modules_disabled = config.get(host, "core", "modules_disabled"); | 67 local modules_disabled = config.get(host, "core", "modules_disabled"); |
68 local disabled_set = {}; | 68 local disabled_set = {}; |
69 if modules_enabled then | 69 if modules_enabled then |
70 if modules_disabled then | 70 if modules_disabled then |
71 for _, module in pairs(modules_disabled) do | 71 for _, module in ipairs(modules_disabled) do |
72 disabled_set[module] = true; | 72 disabled_set[module] = true; |
73 end | 73 end |
74 end | 74 end |
75 for _, module in pairs(modules_enabled) do | 75 for _, module in ipairs(modules_enabled) do |
76 if not disabled_set[module] then | 76 if not disabled_set[module] then |
77 load(host, module); | 77 load(host, module); |
78 end | 78 end |
79 end | 79 end |
80 end | 80 end |
254 event_hooks:set(self.host, self.name, name, handler, true); | 254 event_hooks:set(self.host, self.name, name, handler, true); |
255 end | 255 end |
256 | 256 |
257 -------------------------------------------------------------------- | 257 -------------------------------------------------------------------- |
258 | 258 |
259 local actions = {}; | |
260 | |
261 function actions.load(params) | |
262 --return true, "Module loaded ("..params.module.." on "..params.host..")"; | |
263 return load(params.host, params.module); | |
264 end | |
265 | |
266 function actions.unload(params) | |
267 return unload(params.host, params.module); | |
268 end | |
269 | |
270 register_actions("/modules", actions); | |
271 | |
259 return _M; | 272 return _M; |