У меня есть следующий бизнес-пример при работе с spring-statemachine 2.3.1 в проекте:
Конечный автомат определяется с помощью плагина Papyrus и загружается из файла uml с использованием UmlStateMachineModelFactory, как показанониже:
public class MyStateMachineConfig extends StateMachineConfigurerAdapter<String, String>
{
@Override
public void configure(StateMachineModelConfigurer<String, String> model) throws Exception
{
model.withModel().factory(myStateMachineModelFactory());
}
@Bean
public StateMachineModelFactory<String, String> myStateMachineModelFactory()
{
return new UmlStateMachineModelFactory("classpath:my.uml");
}
....
Мне нужно сохранить контекст конечного автомата в базе данных, используя JPA. Для этого мне нужно использовать StateMachinePersister.persist (). Этот метод использует в качестве первого входного параметра экземпляр StateMachine. Однако я не могу получить экземпляр StateMachine из моего StateMachineModelFactory. Класс StateMachineFactory имеет метод с именем getStateMachine (), а класс StateMachineModelFactory - нет.
Я не нашел ни способа получить экземпляр StateMachineFactory из экземпляра StateMachineModelFactory. Может ли кто-нибудь помочь с некоторыми предложениями, в идеале примерами? В документации есть разные примеры того, как это сделать, но нет примера для случая, когда конечный автомат загружается из файла UML.
С уважением,
Николас ДУМИНИЛ