Packages
Nitrogen Web Framework Core Library
Current section
Files
Jump to
Current section
Files
src/handlers/identity/identity_handler.erl
% vim: sw=4 ts=4 et ft=erlang
% Nitrogen Web Framework for Erlang
% Copyright (c) 2008-2010 Rusty Klophaus
% See MIT-LICENSE for licensing information.
-module (identity_handler).
-include("wf.hrl").
-export ([
get_user/0,
set_user/1,
clear/0
]).
-callback init( handler_config(),
handler_state()) -> {ok, handler_state()}.
-callback finish( handler_config(),
handler_state()) -> {ok, handler_state()}.
-callback get_user( handler_config(),
handler_state()) -> User :: term().
-callback set_user( User :: term(),
handler_config(),
handler_state()) -> {ok, handler_state()}.
-callback clear( handler_config(),
handler_state()) -> {ok, handler_state()}.
% get_user(State) -> User.
% Retrieve an Erlang term representing the current user.
get_user() ->
_User = wf_handler:call_readonly(identity_handler, get_user).
% set_user(User, State) -> {ok, NewState}.
% Set an Erlang term representing the current user.
set_user(User) ->
ok = wf_handler:call(identity_handler, set_user, [User]).
% clear(State) -> {ok, NewState}.
% Set the user to undefined.
clear() ->
ok = wf_handler:call(identity_handler, clear).