工作流引擎设计与实现·模型抽象 化

前言

上文对工作流进行了一些基本的介绍,有了基础篇的内容,相信我们可以很容易抽象了一些实体模型:流程模型、开始节点模型、结束节点模型、任务节点模型、决策节点模型、分支节点模型、合并节点模型、边模型。

基础模型

我们把模型进行进一步抽象,可以得到基础模型,基础模型只包含两个属性,唯一编码和显示名称。

public class BaseModel {
    private String name; // 唯一编码
    private String displayName; // 显示名称
}

模型行为

如果按照面向对象来看,流程模型本身除了属性外,还应该具有方法和行为,即节点和边所能做的事,这里用Action接口来定义。

public interface Action {
    public void execute(Execution execution);
}

因每个流程模型执行的条件可能不一样,这里统一使用Execution类来定义,下面先简单定义其必要属性,后续根据需要再追加。

猜你喜欢

转载自blog.csdn.net/qq_27246521/article/details/132876186