根据事件和一组标准构建Spring State Machine

问题描述 投票:0回答:1

我想建立一个状态机,可能有一组单独的事件和/或状态用于一组标准(如用户,位置等...)将有一个基本FSM和许多自定义FSM用于上述组合标准。

例如:

用户U1具有单独的FSM

用户U2 =>使用全局FSM

用户U3 @ Location India =>有一个单独的FSM

用户U3 @ Location USA =>具有不同的FSM

所有用户@位置UK =>拥有不同的FSM

我正在查看Spring State Machine的区域,但看起来这样无法实现。

有没有办法可以使用Spring State Machine实现这一点,还是有人可以推荐任何其他FSM库?

java spring spring-mvc fsm spring-statemachine
1个回答
1
投票

是的,地区在这里没有帮助,因为那时你只有平行状态。

一种选择是创建一个状态机,就像全局一样。然后,对于每个其他状态机类型/用户,您将在全局状态上创建一个新状态(这将成为父状态),然后在子状态机中处理所有子状态。然后在全局机器上,您可以有条件地转换到处理子状态的状态。在spring-statemachine中有一个限制,即不同机器中的所有子状态都需要具有不同的状态id。

我可能只是尝试构建不同的机器配置,然后根据标准有条件地请求不同的机器。

© www.soinside.com 2019 - 2024. All rights reserved.