Software /
code /
prosody-modules
Diff
mod_reload_modules/mod_reload_modules.lua @ 502:aad0b2df9e6b
mod_reload_modules: Use module:hook_global() if available
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Sat, 10 Dec 2011 22:48:59 +0000 |
parent | 313:524f22ef2c2b |
child | 1178:412f62d05a23 |
line wrap: on
line diff
--- a/mod_reload_modules/mod_reload_modules.lua Thu Dec 08 22:01:54 2011 +0000 +++ b/mod_reload_modules/mod_reload_modules.lua Sat Dec 10 22:48:59 2011 +0000 @@ -9,7 +9,7 @@ end end -prosody.events.add_handler("config-reloaded", function () +function reload_all() local modules = module:get_option_array("reload_modules"); if not modules then module:log("warn", "No modules listed in the config to reload - set reload_modules to a list"); @@ -18,4 +18,16 @@ for _, module in ipairs(modules) do reload_module(module); end -end); +end + + +if module.hook_global then + module:hook_global("config-reloaded", reload_all); +else -- COMPAT w/pre-0.9 + function module.load() + prosody.events.add_handler("config-reloaded", reload_all); + end + function module.unload() + prosody.events.remove_handler("config-reloaded", reload_all); + end +end