flowable 任务监听器

Posted liuwenjun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flowable 任务监听器相关的知识,希望对你有一定的参考价值。

背景:

我们做流程的是,任务监听是非常重要的一个组件,那么我们如何来制定任务监听器呢?

第一:任务监听有三种事件类型

1. create :在任务创建且所有任务属性设置完成之后才触发。

2.assignment :在任务被分配给某个班里人之后触发,它是在create事件触发前被触发。

3.complete:在配置了监听器的上一个任务完成是触发,也就是说运行期任务删除之前触发。

第二:任务监听器的三种监听器执行类型

1.class:需要类的全路径

实例:

public class StartTaskListener implements TaskListener {

    @Override
    public void notify(DelegateTask delegateTask) {
        logger.debug("调用了任务监听器");
        
    }

}

技术分享图片

 

2.expression:定义一个表达式,类似EL的语法

技术分享图片

 

3.delegateExpression:指的是一个实现监听接口

@Component(value = "taskBusinessCallListener")
public class TaskBusinessCallListener extends BusinessCallListener implements TaskListener {
    /**
     * dubbo的类名
     */
    private FixedValue clazzName;
    /**
     * 方法名
     */
    private FixedValue method;
    /**
     * 版本号
     */
    private FixedValue version;
    /**
     * 参数 多个的话用分号隔开 实例 userCode:00004737;status:1
     */
    private FixedValue params;

    @Override
    public void notify(DelegateTask delegateTask) {
        String processInstanceId = delegateTask.getProcessInstanceId();
        //执行回调
        this.callBack(processInstanceId, clazzName.getExpressionText(), method.getExpressionText(), version.getExpressionText(), params.getExpressionText());
    }
}

技术分享图片

 

以上是关于flowable 任务监听器的主要内容,如果未能解决你的问题,请参考以下文章

Flowable入门系列文章55 - 任务侦听器

如何取消订阅RxKotlin / RxJava中的Flowable?

Flowable 任务如何认领,回退?

Flowable 任务如何认领,回退?

Flowable 任务如何认领,回退?

Flowable入门系列文章13 - Flowable API 03