diff options
author | Badlop <badlop@process-one.net> | 2015-01-21 15:18:46 +0100 |
---|---|---|
committer | Badlop <badlop@process-one.net> | 2015-01-21 15:18:46 +0100 |
commit | 15e77e9c0f8b629e0a07ae6dee3097fd60f0a392 (patch) | |
tree | 45a3e85b5862238c5887e9263abae23a45d9e7b2 /src | |
parent | Fix missing copyright dates to 2015 (EJAB-1733) (diff) |
New command to reload config (EJAB-1140)
Diffstat (limited to 'src')
-rw-r--r-- | src/ejabberd_admin.erl | 11 | ||||
-rw-r--r-- | src/ejabberd_config.erl | 8 |
2 files changed, 18 insertions, 1 deletions
diff --git a/src/ejabberd_admin.erl b/src/ejabberd_admin.erl index 9d081631f..8b6e27b82 100644 --- a/src/ejabberd_admin.erl +++ b/src/ejabberd_admin.erl @@ -31,6 +31,7 @@ status/0, reopen_log/0, stop_kindly/2, send_service_message_all_mucs/2, registered_vhosts/0, + reload_config/0, %% Erlang update_list/0, update/1, %% Accounts @@ -134,6 +135,11 @@ commands() -> module = ?MODULE, function = registered_vhosts, args = [], result = {vhosts, {list, {vhost, string}}}}, + #ejabberd_commands{name = reload_config, tags = [server], + desc = "Reload ejabberd configuration file into memory", + module = ?MODULE, function = reload_config, + args = [], + result = {res, rescode}}, #ejabberd_commands{name = import_file, tags = [mnesia], desc = "Import user data from jabberd14 spool file", @@ -352,6 +358,11 @@ registered_users(Host) -> registered_vhosts() -> ?MYHOSTS. +reload_config() -> + ejabberd_config:reload_file(), + acl:start(), + shaper:start(). + %%% %%% Migration management %%% diff --git a/src/ejabberd_config.erl b/src/ejabberd_config.erl index 666ed035b..0d25224b9 100644 --- a/src/ejabberd_config.erl +++ b/src/ejabberd_config.erl @@ -26,7 +26,7 @@ -module(ejabberd_config). -author('alexey@process-one.net'). --export([start/0, load_file/1, read_file/1, +-export([start/0, load_file/1, reload_file/0, read_file/1, add_global_option/2, add_local_option/2, get_global_option/2, get_local_option/2, get_global_option/3, get_local_option/3, @@ -125,6 +125,12 @@ load_file(File) -> State = read_file(File), set_opts(State). +-spec reload_file() -> ok. + +reload_file() -> + Config = get_ejabberd_config_path(), + load_file(Config). + -spec convert_to_yaml(file:filename()) -> ok | {error, any()}. convert_to_yaml(File) -> |