From cdaa9a1400037df52e1beecbd1c806aa0f503bf9 Mon Sep 17 00:00:00 2001 From: burak Date: Fri, 12 Apr 2019 07:51:15 +0300 Subject: [PATCH] Add full interceptor methods support for RegionPersistingInterceptorAdapter - Fixes #726 --- .../config/AbstractStateMachineFactory.java | 23 ++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/spring-statemachine-core/src/main/java/org/springframework/statemachine/config/AbstractStateMachineFactory.java b/spring-statemachine-core/src/main/java/org/springframework/statemachine/config/AbstractStateMachineFactory.java index 4bbfb460..cce3e58d 100644 --- a/spring-statemachine-core/src/main/java/org/springframework/statemachine/config/AbstractStateMachineFactory.java +++ b/spring-statemachine-core/src/main/java/org/springframework/statemachine/config/AbstractStateMachineFactory.java @@ -37,6 +37,7 @@ import org.springframework.core.task.TaskExecutor; import org.springframework.messaging.Message; import org.springframework.scheduling.TaskScheduler; import org.springframework.statemachine.ExtendedState; +import org.springframework.statemachine.StateContext; import org.springframework.statemachine.StateMachine; import org.springframework.statemachine.access.StateMachineAccess; import org.springframework.statemachine.access.StateMachineFunction; @@ -396,7 +397,27 @@ public abstract class AbstractStateMachineFactory extends LifecycleObjectS this.rootStateMachine = rootStateMachine; } - @Override + @Override + public Message preEvent(Message message, StateMachine stateMachine) { + return interceptor.preEvent(message, stateMachine); + } + + @Override + public StateContext preTransition(StateContext stateContext) { + return interceptor.preTransition(stateContext); + } + + @Override + public StateContext postTransition(StateContext stateContext) { + return interceptor.postTransition(stateContext); + } + + @Override + public Exception stateMachineError(StateMachine stateMachine, Exception exception) { + return interceptor.stateMachineError(stateMachine, exception); + } + + @Override public void preStateChange(State state, Message message, Transition transition, StateMachine stateMachine) { interceptor.preStateChange(state, message, transition, stateMachine, rootStateMachine);