From 8346e23acabd2a94dc50fd84316221d6790f7f90 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Wed, 11 Nov 2015 14:49:51 +0100 Subject: Event stub --- src/pbx_acse.erl | 2 -- src/pbx_conn.erl | 1 + src/pbx_rose.erl | 36 ++++++++++++++++++++++++++++++++++++ 3 files changed, 37 insertions(+), 2 deletions(-) diff --git a/src/pbx_acse.erl b/src/pbx_acse.erl index 1376cb9..84a3bb3 100644 --- a/src/pbx_acse.erl +++ b/src/pbx_acse.erl @@ -44,7 +44,6 @@ decode(<>) -> %%% init(_Args) -> - io:format("Init~n"), {ok, undefined}. handle_event({aare, #'AARE-apdu'{result = Result}}, _State) -> @@ -57,7 +56,6 @@ handle_event({abrt, _}, _State) -> io:format("ABRT~n"), {ok, aborted}; handle_event(_Event, State) -> - io:format("ELSE~n"), {ok, State}. handle_call(association, State) -> diff --git a/src/pbx_conn.erl b/src/pbx_conn.erl index 9b92b11..631fde6 100644 --- a/src/pbx_conn.erl +++ b/src/pbx_conn.erl @@ -17,6 +17,7 @@ init(Args) -> [Host, Port] = Args, pbx_pdu:start_link(), pbx_pdu:add_handler(pbx_acse, []), + pbx_pdu:add_handler(pbx_rose, []), gen_tcp:connect(Host, Port, [binary, {packet, 2}]). handle_call(_Request, _From, Socket) -> diff --git a/src/pbx_rose.erl b/src/pbx_rose.erl index 73ec8b0..ab73064 100644 --- a/src/pbx_rose.erl +++ b/src/pbx_rose.erl @@ -1,5 +1,8 @@ -module(pbx_rose). +-behaviour(gen_event). +-export([init/1, handle_event/2, handle_call/2, handle_info/2, + terminate/2, code_change/3]). -export([decode/1, invoke/2]). -include("opcodes.hrl"). @@ -74,3 +77,36 @@ decode(#'ReturnResult_result'{opcode = Op, result = Data}) -> decode(<>) -> {ok, Pdu} = 'Remote-Operations-Generic-ROS-PDUs':decode('ROS', Data), decode(Pdu). + +%%% + +init(_Args) -> + io:format("Init rose~n"), + {ok, []}. + +handle_event({invoke, Invoke = #'Invoke'{}}, State) -> + io:format("Invoke ~p~n", [Invoke]), + {ok, State}; +handle_event({returnResult, ReturnResult = #'ReturnResult'{}}, State) -> + io:format("ReturnResult ~p~n", [ReturnResult]), + {ok, State}; +handle_event({returnError, ReturnError = #'ReturnError'{}}, State) -> + io:format("ReturnError ~p~n", [ReturnError]), + {ok, State}; +handle_event({reject, Reject = #'Reject'{}}, State) -> + io:format("Reject ~p~n", [Reject]), + {ok, State}; +handle_event(_Event, State) -> + {ok, State}. + +handle_call(_Request, State) -> + {ok, ok, State}. + +handle_info(_Info, State) -> + {ok, State}. + +terminate(_Reason, _State) -> + ok. + +code_change(_OldVsn, State, _Extra) -> + {ok, State}. -- cgit v1.2.3