Изменения документа Модуль schema

Редактировал(а) Alexandr Fokin 2026/07/08 12:22

От версии 1.2
отредактировано Alexandr Fokin
на 2026/06/18 21:59
Изменить комментарий: К данной версии нет комментариев
К версии 2.5
отредактировано Alexandr Fokin
на 2026/06/22 19:40
Изменить комментарий: Добавлен комментарий

Сводка

Подробности

Свойства страницы
Содержимое
... ... @@ -1,28 +1,46 @@
1 -|(% style="width:121px" %)Ветка|(% style="width:1312px" %)cccc1808/experiment/process_schema
1 +|(% style="width:98px" %)Ветка|(% style="width:1383px" %)cccc1808/experiment/process_schema
2 2  cccc1808/experiment/process_schema_diagramm
3 -|(% style="width:121px" %)Описание|(% style="width:1312px" %)Более высокоуровневый модуль, вводящий описание и выполнение процесса на основе схемы.
3 +|(% style="width:98px" %)Описание|(% style="width:1383px" %)Более высокоуровневый модуль, вводящий описание и выполнение процесса на основе схемы.
4 4  Модуль также позволяет взаимодействовать совместно с системой триггеров.
5 -|(% style="width:121px" %)Элементы|(% style="width:1312px" %)(((
6 -|(% style="width:137px" %)Схема|(% style="width:1201px" %)Содержит набор токенов.
7 -|(% style="width:137px" %)Токен|(% style="width:1201px" %)Элемент схемы.
8 -Содержит набор действий.
9 -Содержит состояние.
10 -|(% style="width:137px" %)Действие токена|(% style="width:1201px" %)(((
11 -Может содержать переход на другой токен при выполнении.
12 -Может активировать другие действия после срабатывания хендлера обработчика.
5 +Процесс содержит указатель на текущий исполняемый токен (действия этого токена выполняются).
6 +|(% style="width:98px" %)Элементы|(% style="width:1383px" %)(((
7 +|(% style="width:131px" %)Схема|(% style="width:1234px" %)Содержит набор токенов.
8 +Экземпляр схемы привязан к идентификатору типа процесса (ProcessType, ProcessVersion).
9 +Модуль валидации содержит ряд проверок корректности схемы и зарегистрированных хендлеров.
10 +|(% style="width:131px" %)Токен|(% style="width:1234px" %)(((
11 +* Содержит набор действий.
12 +* Содержит состояние.
13 +* В момент выполнения токена, последовательно выполняются его активные действия (вызываются хендлеры действий).
14 +)))
15 +|(% style="width:131px" %)Действие токена|(% style="width:1234px" %)(((
16 +* Содержит внутреннюю малую статусную модель (в зависимости от типа действия).
17 +* Содержит флаг - должно ли действий запускать сразу при переходе на токен (или оно будет активировано другим действием в процессе выполнения токена).
18 +* Может содержать переход на другой токен (Срабатывает при завершении действия).
19 +* Может активировать другие действия (срабатывает после вызова функции хендлера обработчика).
13 13  
14 -|(% style="width:118px" %)ServiceTask|(% style="width:1065px" %)Содержит ключ хендлера обработчик.
15 -|(% style="width:118px" %)ConditionAction|(% style="width:1065px" %)Содержит ключ хендлера проверки условия.
16 -Содержит необязательный ключ хендлера обработчик (выполняется при выполнении условия).
17 -|(% style="width:118px" %)TimerAction|(% style="width:1065px" %)В начале выполнения создает TimerTrigger (для поступления сигнала на процесс) и сохраняет временную отметку.
18 -Проверяет временную отметку для обнаружения срабатывания таймера.
19 -Содержит необязательный ключ хендлера обработчик (выполняется при срабатывании таймера).
21 +|(% style="width:116px" %)ServiceTask|(% style="width:1067px" %)(((
22 +* Содержит ключ хендлера обработчик.
23 +* Может использоваться для длительных действий (soft timeout - разбиение выполнения на несколько транзакций).
20 20  )))
25 +|(% style="width:116px" %)ConditionAction|(% style="width:1067px" %)(((
26 +* Содержит ключ хендлера проверки условия.
27 +* Содержит необязательный ключ хендлера обработчик (выполняется при выполнении условия).
21 21  )))
22 -|(% style="width:121px" %)Пример диаграммы процесса|(% style="width:1312px" %)(((
23 -|Поддерживает экспорт (схема -> диаграмма) и импорт (диаграмма схема).
29 +|(% style="width:116px" %)TimerAction|(% style="width:1067px" %)(((
30 +* В начале выполнения создает TimerTrigger (для поступления сигнала на процесс) и сохраняет временную отметку.
31 +* Проверяет временную отметку для обнаружения срабатывания таймера.
32 +* Содержит необязательный ключ хендлера обработчик (выполняется при срабатывании таймера).
33 +)))
34 +)))
35 +)))
36 +|(% style="width:98px" %)Пример диаграммы процесса|(% style="width:1383px" %)(((
37 +|(((
38 +* Реализована преобразование схемы в mermaid class diagram.
39 +Поддерживает экспорт (схема -> диаграмма) и импорт (диаграмма схема).
40 +* Позволяет работать с графическим представлением схемы процесса (обсуждать и изменять элементы процесса (алгоритмы хендлеров, переходы между токенами)).
41 +)))
24 24  |На изображении представлен пример тестового процесса, который содержит 1 токен, который содержит 3 блока действий.
25 25  Токен выполняет функцию отправки сообщения с ожиданиям ответа, в случае отсутствия ответа в течении промежутка времени запрос посылается повторно.
26 -Схема позволяет указывать имена элементов и комментарии к ним (в комментарии приведен алгоритм в реализации хендлера действия).
44 +Схема позволяет указывать имена элементов и комментарии к ним (в примере приведен алгоритм в реализации хендлера действия).
27 27  |[[image:Тестовый процесс.1.png]]
28 28  )))
XWiki.XWikiComments[0]
Автор
... ... @@ -1,0 +1,1 @@
1 +XWiki.cccc1808
Комментарий
... ... @@ -1,0 +1,1 @@
1 +Идея: Триггер передает сигнал и ключ. ConditonAction связывается с конкретным триггером. Действие активируется, только если соответствующий триггер передал сиганд.
Дата
... ... @@ -1,0 +1,1 @@
1 +2026-06-22 15:40:24.981