diff options
Diffstat (limited to 'src/core/ephraim_event_proxy.erl')
-rw-r--r-- | src/core/ephraim_event_proxy.erl | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/core/ephraim_event_proxy.erl b/src/core/ephraim_event_proxy.erl new file mode 100644 index 0000000..4b0e35b --- /dev/null +++ b/src/core/ephraim_event_proxy.erl @@ -0,0 +1,27 @@ +-module(ephraim_event_proxy). +-behaviour(gen_event). + +-export([start/2]). +-export([init/1, handle_event/2, handle_call/2, handle_info/2, terminate/2, code_change/3]). + +start(Account, EventManager) -> + gen_event:add_handler(ephraim_event_man, ?MODULE, {Account, EventManager}). + +init(State) -> + {ok, State}. + +handle_event({view_request, {account, Account, Event}}, {Account, EventManager}) -> + gen_event:notify(EventManager, {view_request, Event}), + {ok, {Account, EventManager}}; + +handle_event(_Event, State) -> + {ok, State}. + +handle_call(_Msg, State) -> + {noreply, State}. +handle_info(_Msg, State) -> + {ok, State}. +terminate(_Reason, _State) -> + ok. +code_change(_OldVersion, State, _Extra) -> + {ok, State}. |