diff --git a/src/ejabberd_oauth.erl b/src/ejabberd_oauth.erl index 9dd4268e1..026b30680 100644 --- a/src/ejabberd_oauth.erl +++ b/src/ejabberd_oauth.erl @@ -63,6 +63,10 @@ -include("ejabberd_commands.hrl"). +-callback init() -> any(). +-callback store(#oauth_token{}) -> ok | {error, any()}. +-callback lookup(binary()) -> {ok, #oauth_token{}} | error. +-callback clean(non_neg_integer()) -> any(). %% There are two ways to obtain an oauth token: %% * Using the web form/api results in the token being generated in behalf of the user providing the user/pass diff --git a/src/ejabberd_oauth_mnesia.erl b/src/ejabberd_oauth_mnesia.erl index c84174655..8a075c699 100644 --- a/src/ejabberd_oauth_mnesia.erl +++ b/src/ejabberd_oauth_mnesia.erl @@ -25,6 +25,7 @@ %%%------------------------------------------------------------------- -module(ejabberd_oauth_mnesia). +-behaviour(ejabberd_oauth). -export([init/0, store/1, diff --git a/src/ejabberd_oauth_rest.erl b/src/ejabberd_oauth_rest.erl index 404edd1fd..206fab436 100644 --- a/src/ejabberd_oauth_rest.erl +++ b/src/ejabberd_oauth_rest.erl @@ -25,7 +25,7 @@ %%%------------------------------------------------------------------- -module(ejabberd_oauth_rest). - +-behaviour(ejabberd_oauth). -behaviour(ejabberd_config). -export([init/0, diff --git a/src/ejabberd_oauth_sql.erl b/src/ejabberd_oauth_sql.erl index 5c4a96641..14eaca6a8 100644 --- a/src/ejabberd_oauth_sql.erl +++ b/src/ejabberd_oauth_sql.erl @@ -25,7 +25,7 @@ %%%------------------------------------------------------------------- -module(ejabberd_oauth_sql). - +-behaviour(ejabberd_oauth). -compile([{parse_transform, ejabberd_sql_pt}]). -export([init/0,