Алгоритм действий, гем Workflow

Гем Workflow (Процесс) добавляет в объект способность хранить очерёдность состояний и возможных действий.

Процесс имеет разные состояния (State). В единицу времени только одно состояние может быть активно. Состояния могут переходить (Transition) от одного к другому. Чтобы совершить переход, должно произойти какое-то событие (Event). При активации события, можно исполнить произволное дополнительное действие (Action). Другими словами каждое состояние содержит произволное количество событий, запуск события ведёт к другому состоянию, и возможному запуску какого-то действия связанного с этим событием. Кроме того можно отследить вход и выход из состояния, поймать ошибку при переходе.

Для начала работы с гемом его необходимо установить gem install workflow. Я подготовил небольшой пример работы:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *