├── .gitignore ├── README.md ├── pom.xml └── src ├── main └── java │ └── com │ └── lsd │ └── stateMachine │ ├── StateMachineApplication.java │ ├── annotation │ └── processor │ │ └── OrderProcessor.java │ ├── checker │ ├── Checkable.java │ ├── Checker.java │ ├── CheckerExecutor.java │ ├── CreateParamChecker.java │ ├── StateActionStep.java │ ├── UnfinshChecker.java │ └── UserChecker.java │ ├── context │ ├── CreateOrderContext.java │ └── StateContext.java │ ├── engine │ ├── DefaultOrderFsmEngine.java │ ├── DefaultStateProcessRegistry.java │ └── OrderFsmEngine.java │ ├── enums │ ├── ErrorCodeEnum.java │ ├── OrderEventEnum.java │ ├── OrderStateEnum.java │ └── ServiceType.java │ ├── event │ ├── CreateEvent.java │ └── OrderStateEvent.java │ ├── exception │ └── FsmException.java │ ├── plugin │ ├── DefaultPluginRegistry.java │ ├── PluginHandlerExecutor.java │ ├── PluginHandlerable.java │ ├── annotation │ │ └── ProcessorPlugin.java │ └── handler │ │ ├── EstimatePricePluginHandler.java │ │ └── PluginHandler.java │ ├── pojo │ ├── FsmOrder.java │ └── OrderInfo.java │ ├── processor │ ├── AbstractStateProcessor.java │ ├── OrderCreatedProcessor.java │ ├── OrderCreatedProcessor4Taxi.java │ ├── StateActionStep.java │ └── StateProcessor.java │ ├── service │ └── FsmOrderService.java │ └── vo │ └── ServiceResult.java └── test └── java └── com └── lsd └── stateMachine └── DefaultOrderFsmEngineTest.java /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/README.md -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/pom.xml -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/StateMachineApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/StateMachineApplication.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/annotation/processor/OrderProcessor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/annotation/processor/OrderProcessor.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/checker/Checkable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/checker/Checkable.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/checker/Checker.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/checker/Checker.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/checker/CheckerExecutor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/checker/CheckerExecutor.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/checker/CreateParamChecker.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/checker/CreateParamChecker.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/checker/StateActionStep.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/checker/StateActionStep.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/checker/UnfinshChecker.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/checker/UnfinshChecker.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/checker/UserChecker.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/checker/UserChecker.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/context/CreateOrderContext.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/context/CreateOrderContext.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/context/StateContext.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/context/StateContext.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/engine/DefaultOrderFsmEngine.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/engine/DefaultOrderFsmEngine.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/engine/DefaultStateProcessRegistry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/engine/DefaultStateProcessRegistry.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/engine/OrderFsmEngine.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/engine/OrderFsmEngine.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/enums/ErrorCodeEnum.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/enums/ErrorCodeEnum.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/enums/OrderEventEnum.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/enums/OrderEventEnum.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/enums/OrderStateEnum.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/enums/OrderStateEnum.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/enums/ServiceType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/enums/ServiceType.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/event/CreateEvent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/event/CreateEvent.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/event/OrderStateEvent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/event/OrderStateEvent.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/exception/FsmException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/exception/FsmException.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/plugin/DefaultPluginRegistry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/plugin/DefaultPluginRegistry.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/plugin/PluginHandlerExecutor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/plugin/PluginHandlerExecutor.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/plugin/PluginHandlerable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/plugin/PluginHandlerable.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/plugin/annotation/ProcessorPlugin.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/plugin/annotation/ProcessorPlugin.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/plugin/handler/EstimatePricePluginHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/plugin/handler/EstimatePricePluginHandler.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/plugin/handler/PluginHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/plugin/handler/PluginHandler.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/pojo/FsmOrder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/pojo/FsmOrder.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/pojo/OrderInfo.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/pojo/OrderInfo.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/processor/AbstractStateProcessor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/processor/AbstractStateProcessor.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/processor/OrderCreatedProcessor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/processor/OrderCreatedProcessor.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/processor/OrderCreatedProcessor4Taxi.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/processor/OrderCreatedProcessor4Taxi.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/processor/StateActionStep.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/processor/StateActionStep.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/processor/StateProcessor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/processor/StateProcessor.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/service/FsmOrderService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/service/FsmOrderService.java -------------------------------------------------------------------------------- /src/main/java/com/lsd/stateMachine/vo/ServiceResult.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/main/java/com/lsd/stateMachine/vo/ServiceResult.java -------------------------------------------------------------------------------- /src/test/java/com/lsd/stateMachine/DefaultOrderFsmEngineTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leme34/stateMachine/HEAD/src/test/java/com/lsd/stateMachine/DefaultOrderFsmEngineTest.java --------------------------------------------------------------------------------