Могу ли я использовать Spring State Machine, где одно состояние отображается с несколькими состояниями - PullRequest
0 голосов
/ 21 мая 2018

1 Я пытаюсь использовать Spring State Machine в моем проекте, потому что есть объект Order с несколькими состояниями, и для каждого состояния может быть разный статус.

STATE STATUS

NEW --------> в ожидании

NEW --------> paymentPending

ОБРАБОТКА -------> PROCESSING_NEW

ОБРАБОТКА -------> PROCESSING_COMPLETE

ЗАВЕРШЕНО ----------> ЗАВЕРШЕНО_SHIPPED

ЗАВЕРШЕНО ----------> ДОСТАВЛЕНО

Итак, как мне это реализовать, если у меня другой статус, который также сопоставлен с различными состояниями.

1 Ответ

0 голосов
/ 21 мая 2018

Боюсь, ты не сможешь. Конечный автомат Spring является детерминированным автоматом и имеет только одно текущее состояние.И любое событие может привести к изменению состояния машины в одно состояние.

В детерминированном автомате состояний каждый элемент LHS отображается только один раз на элемент справа, т.е. при получении определенного вводаэто делает один переход.После ввода входа a в состояние A он перейдет в состояние B

enter image description here

...