普通组件
组件节点需要继承NodeComponent
类
需要实现process
方法
@LiteflowComponent("a")
public class ACmp extends NodeComponent {
@Override
public void process() {
System.out.println("ACmp executed!");
}
}
但是推荐实现isAccess
方法,表示是否进入该节点,可以用于业务参数的预先判断
其他几个可以覆盖的方法有:
方法isContinueOnError
:表示出错是否继续往下执行下一个组件,默认为false
方法isEnd
:表示是否立即结束整个流程 ,默认为false,也可以在业务日志里根据业务判断来调用this.setIsEnd(true)来结束整个流程。对于这种方式,最终的isSuccess是为true的(2.6.0版本修复)。
在组件节点里,随时可以通过方法getSlot
获取当前的数据槽,从而可以获取任何数据。
info" class="reference-link">info
从v2.6.0开始,新增了@LiteflowComponent
标签,它是继承于Spring的@Component
标签的,所以从作用上来说,和@Component
标签并没有什么区别,但是@LiteflowComponent
新增加了name
属性,用于给组件起别名,在打印调用链的时候会体现。具体请查看步骤打印
章节,新版本开始,推荐大家使用@LiteflowComponent
,当然@Component
也同样可以继续沿用。