一个流程定义

  1. 1{
  2. 2 listener: Listener.toString(),
  3. 3 process: {
  4. 4 nodes: [
  5. 5 {
  6. 6 id: 'startEvent_1',
  7. 7 name: 'Start',
  8. 8 type: 'startEventNone',
  9. 9 options: {...},
  10. 10 },
  11. 11 {
  12. 12 id: 'endEvent_1',
  13. 13 name: 'End',
  14. 14 type: 'endEventNone',
  15. 15 options: {...},
  16. 16 },
  17. 17 ],
  18. 18 edges: [
  19. 19 {
  20. 20 id: 'edge_1',
  21. 21 source: 'startEvent_1',
  22. 22 target: 'endEvent_1',
  23. 23 // type: 'sequence',
  24. 24 options: {...},
  25. 25 },
  26. 26 ],
  27. 27 },
  28. 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 转移线配置。由转移线类型约定各自的配置内容和格式