Spring State Machine在eventNotAccepted侦听器中对StateContext的访问

Ami*_*mir 1 java spring listener spring-statemachine

我是Spring State Machine的新手。我已经StateMachineListener为我的状态机使用了。我该如何访问StateContextin eventNotAccepted方法。

@Override
        public void eventNotAccepted(Message<String> event) {

        }
Run Code Online (Sandbox Code Playgroud)

Jan*_*hti 5

您需要使用StateMachineListener.stateContext(StateContext<S, E>)并聆听所有StateContext更改。从那里检查StateContext.getStage()是否匹配Stage.EVENT_NOT_ACCEPTED

最初,当添加该侦听器接口时,我们没有上下文;后来,当人们想要访问它时,我们不想破坏向后兼容性,因此添加了新方法。