diff options
Diffstat (limited to 'src/ejabberd_sm.erl')
-rw-r--r-- | src/ejabberd_sm.erl | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/ejabberd_sm.erl b/src/ejabberd_sm.erl index bfe6e934f..e25902374 100644 --- a/src/ejabberd_sm.erl +++ b/src/ejabberd_sm.erl @@ -25,6 +25,8 @@ -module(ejabberd_sm). +-behaviour(ejabberd_config). + -author('alexey@process-one.net'). -behaviour(gen_server). @@ -64,9 +66,8 @@ is_existing_resource/3 ]). -%% gen_server callbacks -export([init/1, handle_call/3, handle_cast/2, - handle_info/2, terminate/2, code_change/3]). + handle_info/2, terminate/2, code_change/3, opt_type/1]). -include("ejabberd.hrl"). -include("logger.hrl"). @@ -805,3 +806,11 @@ kick_user(User, Server) -> PID ! kick end, Resources), length(Resources). + +opt_type(sm_db_type) -> + fun (mnesia) -> mnesia; + (internal) -> mnesia; + (odbc) -> odbc; + (redis) -> redis + end; +opt_type(_) -> [sm_db_type]. |