1
0
Fork 0
mirror of https://github.com/processone/ejabberd synced 2025-10-06 03:50:15 +02:00

Introduce new gen_mod callback: mod_options/1

The callback is supposed to provide known options and their default
values, as long as the documentation. Passing default values into
get_mod functions is now deprecated: all defaults should be provided
by the Mod:mod_options/1 callback.
This commit is contained in:
Evgeniy Khramtsov 2018-01-23 10:54:52 +03:00
parent c0ef054f6f
commit ba2b650464
76 changed files with 1455 additions and 1364 deletions

View file

@ -74,7 +74,8 @@
-behaviour(gen_mod).
-export([start/2, stop/1, reload/3, process/2, mod_opt_type/1, depends/2]).
-export([start/2, stop/1, reload/3, process/2, mod_opt_type/1, depends/2,
mod_options/1]).
-include("ejabberd.hrl").
-include("xmpp.hrl").
@ -551,7 +552,7 @@ hide_sensitive_args(NonListArgs) ->
NonListArgs.
permission_addon() ->
Access = gen_mod:get_module_opt(global, ?MODULE, admin_ip_access, none),
Access = gen_mod:get_module_opt(global, ?MODULE, admin_ip_access),
Rules = acl:resolve_access(Access, global),
R = case Rules of
all ->
@ -576,5 +577,5 @@ permission_addon() ->
end, {1, []}, R),
Res.
mod_opt_type(admin_ip_access) -> fun acl:access_rules_validator/1;
mod_opt_type(_) -> [admin_ip_access].
mod_opt_type(admin_ip_access) -> fun acl:access_rules_validator/1.
mod_options(_) -> [{admin_ip_access, none}].