Releases: opensolon/solon-flow
Releases · opensolon/solon-flow
Solon Flow v3.7.0
3.7.0
Solon Flow v3.6.1
- 添加
solon-flowFlowEngine:forStateful,statefulService 标为弃用 - 调整
solon-flow增加loop类型替代iterator(iterator 增加弃用提醒),并提供更多功能 - 调整
solon-flow所有网关节点增加task支持,不再需要$imode和$omode。更适合前端连线控制 - 调整
solon-flow节点属性$imode和$omode标为弃用
{type: 'loop',meta: {'$for': 'item','$in': [1,3,4]}}
{type: 'loop',meta: {'$for': 'item','$in': "1...9"}}
{type: 'loop',meta: {'$for': 'item','$in': "1:9:1"}}Solon Flow v3.6.0
- dami 升为 2.0.0
- 添加 solon-flow Node:getMetaAsString, getMetaAsNumber, getMetaAsBool 方法
Solon Flow v3.5.2
3.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()方法