В отличие от jBPM в нотации BPMN отсутствует возможность указать несколько выходов из одной задачи. Чтобы направить процесс
по нужной ветке в зависимости от результата используется узел Exclusive Gateway, переходы из которого имеют условия, оперирующие результатом выполнения задачи, расположенной перед этим Gateway. При завершении
пользователем задачи, результат его действия записывается в процессную переменную с именем [taskId]_result. Тип этой переменной - ProcTaskResult.
Методы класса ProcTaskResult:
int count(String outcomeName)- возвращает количество пользователей, завершивших задачу с данным выходомboolean exists(String outcomeName)- возвращаетtrue, если есть хотя бы один пользователь, завершивший задачу с указанным выходом.
Далее объект с результатом используется в выражении Flow condition для переходов, выходящих из Gateway.
Пример:

Предположим, что задача approval была параллельно назначена нескольким пользователям. Для задачи были определены 2 возможных выхода: approve и reject. После того, как все пользователи завершат задачу процесс перейдет к exclusive gateway. Нам нужно следующее поведение: если
хоть кто-либо выбрал вариант reject, то переходим по переходу Rejected, если все согласились (approve), то по Approved.

