Releases: opensolon/solon-flow
Releases · opensolon/solon-flow
Solon Flow v3.5.2
Solon Flow v3.5.1
3.5.1
Solon Flow v3.5.0
- 添加 solon-flow FlowDriver:postHandleTask 方法
- 添加 solon-flow FlowContext:exchanger 方法(可获取 FlowExchanger 实例)
- 调整 solon-flow FlowContext 拆分为:FlowContext(对外) 和 FlowExchanger(对内)
- 调整 solon-flow FlowContext 移除 result 字段(所有数据基于 model 交换)
- 调整 solon-flow FlowContext get 改为返回 Object(之前为 T),新增 getAs 返回 T(解决 get 不能直接打印的问题)
- 调整 solon-flow 移除 StatefulSimpleFlowDriver 功能合并到 SimpleFlowDriver(简化)
- 调整 solon-flow 新增 stateless 包,明确有状态与无状态这两个概念(StatelessFlowContext 更名为 StatefulFlowContext)
- 调整 solon-flow FlowStatefulService 接口,每个方法的 context 参数移到最后位(保持一致性)
- 调整 solon-flow 新增 StatefulSupporter 接口,方便 FlowContext 完整的状态控制
- 调整 solon-flow StateRepository 接口的方法命名,与 StatefulSupporter 保持一致性
- 调整 solon-flow Chain 拆分为:Chain 和 ChainDecl
新定位:
- FlowContext 侧重对外,可复用(用于传参、策略,状态)
- FlowExchanger 侧重对内,不可复用(用于控制、中间临时状态或变量)
- Chain 为运行态(不可修改)
- ChainDecl 为声明或配置态(可以随时修改)
FlowContext 改成接口之后,实例化方式建议:
FlowContext context = FlowContext.of(); //有四个生栽方法,包括:无状态 和 有状态
Solon Flow v3.4.3
- 新增 solon-flow iterator 循环网关(
$for
,$in
) - 新增 solon-flow activity 节点流入流出模式(
$imode
,$omode
),且于二次定制开发 - 添加 solon-flow ChainInterceptor:onNodeStart, onNodeEnd 方法(扩展拦截的能力)
- 添加 solon-flow 操作:Operation.BACK_JUMP, FORWARD_JUMP
Solon Flow v3.4.2
3.4.2
Solon Flow v3.4.1
- 添加 solon-flow FlowContext:incrGet, incrAdd
- 添加 solon-flow aot 配置
- 优化 solon-flow Chain:parseByDom 节点解析后的添加顺序
- 优化 solon-flow Chain 解析统改为 Yaml 处理,并添加 toYaml 方法
- 优化 solon-flow Chain:toJson 输出(压缩大小,去掉空输出)
Solon Flow v3.4.0
兼容说明
- solon-flow stateful 接口二次预览,相关接口有变动
方法名称调整:
旧方法 | 新方法 | |
---|---|---|
getActivityNodes |
getTasks |
|
getActivityNode |
getTask |
|
postActivityStateIfWaiting |
postOperationIfWaiting |
|
postActivityState |
postOperation |
状态类型拆解后的对应关系(之前状态与操作混一起,不合理)
StateType(旧) | StateType(新) | Operation(新) |
---|---|---|
UNKNOWN(0) |
UNKNOWN(0) |
UNKNOWN(0) |
WAITING(1001) |
WAITING(1001) |
BACK(1001) |
COMPLETED(1002) |
COMPLETED(1002) |
FORWARD(1002) |
TERMINATED(1003) |
TERMINATED(1003) |
TERMINATED(1003) |
RETURNED(1004) |
BACK(1001) |
|
RESTART(1005) |
RESTART(1004) |
具体更新
- 调整 solon-flow stateful 相关概念(提交活动状态,改为提交操作)
- 调整 solon-flow StateType 拆分为:StateType 和 Operation
- 调整 solon-flow StatefulFlowEngine:postActivityState 更名为 postOperation
- 调整 solon-flow StatefulFlowEngine:postActivityStateIfWaiting 更名为 postOperationIfWaiting
- 调整 solon-flow StatefulFlowEngine:getActivity 更名为 getTask
- 调整 solon-flow StatefulFlowEngine:getActivitys 更名为 getTasks
- 调整 solon-flow StatefulFlowEngine 更名为 FlowStatefulService(确保引擎的单一性)
- 添加 solon-flow FlowStatefulService 接口,替换 StatefulFlowEngine(确保引擎的单一性)
- 添加 solon-flow
FlowEngine:statefulService()
方法 - 添加 solon-flow
FlowEngine:getDriverAs()
方法
Solon Flow v3.3.3 (浙江中考版)
- 优化 solon-flow FlowContext 变量的线程可见
- 添加 solon-flow parallel 网关多线程并行支持(通过 context.executor 决定)
- 添加 solon-flow LinkDecl:when 方法用于替代 :condition(后者标为弃用)
- 添加 solon-flow parallel 网关多线程并行支持(通过 context.executor 决定)
- 调整 solon-flow FlowDriver:handleTest 更名为 handleCondition (跟 handleTask 容易混)
Java Solon Flow v3.3.2
- 强化 solon-flow-designer
- 添加 solon-flow FlowContext:runScript 替代 run(旧名,标为弃用)
- 添加 solon-flow FlowContext:runTask(node, description)方法
- 添加 solon-flow link 支持 when 统一条件(替代 condition)
- 添加 solon-flow activity 多分支流出时支持(逻辑与排他网关相同)
- 添加 solon-flow Counter:incr(key, delta) 方法
- 调整 solon-flow 取消
type: "@Com"
的快捷配置模式(示例调整)
Java Solon Flow v3.3.1
- 新增 solon-flow-designer (设计器)