fixeria submitted this change.
erab_fsm: add all-state event handler
This patch prepares for a follow-up commit adding a request
(fetch_info) that must be handled in any state.
Change-Id: I2673f18ddee0f1eee27bb0ed71ca9073d6dea3f2
---
M src/erab_fsm.erl
1 file changed, 12 insertions(+), 16 deletions(-)
diff --git a/src/erab_fsm.erl b/src/erab_fsm.erl
index ae661a1..736a2ce 100644
--- a/src/erab_fsm.erl
+++ b/src/erab_fsm.erl
@@ -182,8 +182,7 @@
u2c = U2C}};
erab_wait_setup_req(Event, EventData, S) ->
- ?LOG_ERROR("Unexpected event ~p: ~p", [Event, EventData]),
- {keep_state, S}.
+ handle_event(?FUNCTION_NAME, Event, EventData, S).
%% state SESSION_ESTABLISH :: PFCP session establishment
@@ -232,8 +231,7 @@
end;
session_establish(Event, EventData, S) ->
- ?LOG_ERROR("Unexpected event ~p: ~p", [Event, EventData]),
- {keep_state, S}.
+ handle_event(?FUNCTION_NAME, Event, EventData, S).
%% state WAIT_SETUP_RSP :: wait E-RAB SETUP Rsp from access
@@ -253,10 +251,8 @@
S#erab_state{from = From,
u2a = U2A}};
-%% Catch-all handler for this state
erab_wait_setup_rsp(Event, EventData, S) ->
- ?LOG_ERROR("Unexpected event ~p: ~p", [Event, EventData]),
- {keep_state, S}.
+ handle_event(?FUNCTION_NAME, Event, EventData, S).
%% state SESSION_MODIFY :: PFCP session modification
@@ -293,8 +289,7 @@
end;
session_modify(Event, EventData, S) ->
- ?LOG_ERROR("Unexpected event ~p: ~p", [Event, EventData]),
- {keep_state, S}.
+ handle_event(?FUNCTION_NAME, Event, EventData, S).
%% state SETUP :: E-RAB is fully setup
@@ -318,10 +313,8 @@
S#erab_state{from = From,
rel_kind = ind}};
-%% Catch-all handler for this state
erab_setup(Event, EventData, S) ->
- ?LOG_ERROR("Unexpected event ~p: ~p", [Event, EventData]),
- {keep_state, S}.
+ handle_event(?FUNCTION_NAME, Event, EventData, S).
%% state SESSION_DELETE :: PFCP session deletion
@@ -367,8 +360,7 @@
end;
session_delete(Event, EventData, S) ->
- ?LOG_ERROR("Unexpected event ~p: ~p", [Event, EventData]),
- {keep_state, S}.
+ handle_event(?FUNCTION_NAME, Event, EventData, S).
%% state WAIT_RELEASE_RSP :: wait E-RAB RELEASE Rsp
@@ -385,9 +377,13 @@
?LOG_DEBUG("Rx E-RAB RELEASE Rsp, we're done"),
{stop, normal}; %% we're done!
-%% Catch-all handler for this state
erab_wait_release_rsp(Event, EventData, S) ->
- ?LOG_ERROR("Unexpected event ~p: ~p", [Event, EventData]),
+ handle_event(?FUNCTION_NAME, Event, EventData, S).
+
+
+%% Event handler for all states
+handle_event(State, Event, EventData, S) ->
+ ?LOG_ERROR("Unexpected event ~p in state ~p: ~p", [Event, State, EventData]),
{keep_state, S}.
To view, visit change 38780. To unsubscribe, or for help writing mail filters, visit settings.