一个流程定义
- 1{
- 2 listener: Listener.toString(),
- 3 process: {
- 4 nodes: [
- 5 {
- 6 id: 'startEvent_1',
- 7 name: 'Start',
- 8 type: 'startEventNone',
- 9 options: {...},
- 10 },
- 11 {
- 12 id: 'endEvent_1',
- 13 name: 'End',
- 14 type: 'endEventNone',
- 15 options: {...},
- 16 },
- 17 ],
- 18 edges: [
- 19 {
- 20 id: 'edge_1',
- 21 source: 'startEvent_1',
- 22 target: 'endEvent_1',
- 23 // type: 'sequence',
- 24 options: {...},
- 25 },
- 26 ],
- 27 },
- 28};
1. listener/process
一个流程定义包含两个基本部分
-
listener
:监听器。可以通过响应不同的流程事件,编写JS脚本
来定义流程运行的行为。需要特别说明的是,JS脚本
在安全沙箱
中运行,具体很好的安全性和可控性 -
process
: 这是流程定义的主体部分
2. nodes/edges
process
包含两个基本部分
nodes
:活动节点数组edges
:转移线数组
3. node
名称 | 说明 |
---|---|
id | 活动节点Id |
name | 活动节点名称 |
type | 活动节点类型。每一个活动节点类型 都对应一个Bean提供者组件 |
options | 活动节点配置。由活动节点类型 约定各自的配置内容和格式 |
4. edge
名称 | 说明 |
---|---|
id | 转移线Id |
source | 源节点Id |
target | 目标节点Id |
type | 转移线类型,默认为sequence 。每一个转移线类型 都对应一个Bean提供者组件 |
options | 转移线配置。由转移线类型 约定各自的配置内容和格式 |
评论: