aboutsummaryrefslogtreecommitdiff
path: root/src/mod_announce.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/mod_announce.erl')
-rw-r--r--src/mod_announce.erl12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/mod_announce.erl b/src/mod_announce.erl
index 29def8378..f1da3802b 100644
--- a/src/mod_announce.erl
+++ b/src/mod_announce.erl
@@ -32,7 +32,7 @@
-behaviour(gen_server).
-behaviour(gen_mod).
--export([start/2, stop/1, export/1, import_info/0,
+-export([start/2, stop/1, reload/3, export/1, import_info/0,
import_start/2, import/5, announce/1, send_motd/1, disco_identity/5,
disco_features/5, disco_items/5, depends/2,
send_announcement_to_all/3, announce_commands/4,
@@ -80,6 +80,16 @@ start(Host, Opts) ->
stop(Host) ->
gen_mod:stop_child(?MODULE, Host).
+reload(Host, NewOpts, OldOpts) ->
+ NewMod = gen_mod:db_mod(Host, NewOpts, ?MODULE),
+ OldMod = gen_mod:db_mod(Host, OldOpts, ?MODULE),
+ if NewMod /= OldMod ->
+ NewMod:init(Host, NewOpts);
+ true ->
+ ok
+ end,
+ ok.
+
depends(_Host, _Opts) ->
[{mod_adhoc, hard}].