flow - 节点类型说明
节点类型(NodeType 枚举成员)
描述 | 任务 | 连接条件 | 多线程 | 可流入 连接数 | 可流出 连接数 | 备注 | |
---|---|---|---|---|---|---|---|
start | 开始 | / | / | / | 0 | 1 | |
activity | 活动节点(缺省类型) | 可有 | / | / | 1...n | 1 | |
inclusive | 包容网关(类似多选) | / | 支持 | / | 1...n | 1...n | |
exclusive | 排它网关(类似单选) | / | 支持 | / | 1...n | 1...n | |
parallel | 并行网关(类似全选) | / | / | 支持 | 1...n | 1...n | |
iterator | 循环网关 | / | / | / | 1 | 1 | (v3.4.3 后支持) |
end | 结束 | / | / | / | 1...n | 0 |
连接其它节点,称为:流出连接。被其它节点连接,称为:流入连接。
1、start (开始)
一个链,"必须有且只有”一个 start 节点,作为链的入口。之后顺着连接流出。
2、activity (活动)
activity 节点,主要用于触发处理任务事件。可以带一个任务触发条件(when)。
- 流出:
默认为单分支流出。当有多分支流出时,相当于 “排它网关”(v3.3.2 后支持)
- 二次定制开发支持(如果不是二次定制开发,不要使用):
元数据 | 说明 |
---|---|
$imode | 流入模式(可选值为网关类型) |
$omode | 流出模式(可选值为网关类型) |
3、inclusive (包容网关),相当于多选
inclusive 节点,可以有多个流入连接,或多个流出连接。
- 流入(也叫汇聚,或栏栅):
会等待所有满足条件的流入连接到齐后(起到聚合作用),才会往后流出。
- 流出:
只要满足条件的都可流出,相当于“多选”。如果没有匹配的连接,则使用缺省(没有条件的连接)。
4、exclusive (排它网关),相当于单选
exclusive 节点,只能有一个流出连接。
- 流入(也叫汇聚,或栏栅):
只要有流入就会流出,主要起到视图上的汇聚效果
- 流出:
只能有一个满足条件的连接可流出,相当于“单选”。如果没有匹配的连接,则使用缺省(没有条件的连接)。
如果有多个满足条件的连接,则按优先级排序,最优先的流出。
5、parallel (并行网关),相当于全选
parallel 节点,可以有多个流入连接,或多个流出连接。
- 流入(也叫汇聚,或栏栅):
会等待所有流入连接到齐后(起到聚合作用),才会往后流出。
- 流出:
所有连接都可流出,相当于“全选”。
6、iterator (循环网关)//目前为预览状态(v3.4.3 后支持)
iterator 节点,只能有一个流入连接,或一个流出连接。
- 流入(也叫汇聚,或栏栅),不需要元数据:
会等待遍历结束后(起到聚合作用),才会往后流出。
- 流出,需要元数据声明:
遍历集合并循环流出。
元数据 | 说明 |
---|---|
$for | 项目变量名(遍历出的项目,将以此名推入上下文),后续节点可使用此变量 |
$in | 集合变量名(引擎会通过变量名,从上下文里取变量) |
7、end (结束)
end 节点,表示没有流出了,结束了。