From b5caa6b218dc506260ca81f25dced5d7754f456f Mon Sep 17 00:00:00 2001 From: bryan31 Date: Wed, 19 Jan 2022 21:50:28 +0800 Subject: [PATCH] =?UTF-8?q?feature=20#I4GS07=20=E4=BB=A3=E7=A0=81=E5=8A=A8?= =?UTF-8?q?=E6=80=81=E7=BB=84=E4=BB=B6=E8=A3=85=E9=85=8D=E7=9A=84=E7=89=B9?= =?UTF-8?q?=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yomahub/liteflow/builder/LiteFlowNodeBuilder.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/LiteFlowNodeBuilder.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/LiteFlowNodeBuilder.java index 7501e2dab..851f7a13b 100644 --- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/LiteFlowNodeBuilder.java +++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/LiteFlowNodeBuilder.java @@ -2,6 +2,7 @@ package com.yomahub.liteflow.builder; import cn.hutool.core.io.resource.ResourceUtil; import cn.hutool.core.util.StrUtil; +import com.yomahub.liteflow.entity.data.DataBus; import com.yomahub.liteflow.entity.flow.Node; import com.yomahub.liteflow.enums.NodeTypeEnum; import com.yomahub.liteflow.exception.NodeBuildException; @@ -57,6 +58,11 @@ public class LiteFlowNodeBuilder { } public void build() { + //这里也是一个防御性编程 + //如果单独用builder进行构建的话,那么flow.xml不一定存在,不存在则不会进行FlowExecutor的init,也就不会进行DataBus.init + //所以这里多加一步,DataBus.init()事实上只会执行一遍,不会因为之前执行了,重复执行。因为里面有判断 + DataBus.init(); + try { if (this.node.getType().equals(NodeTypeEnum.COMMON)) { FlowBus.addCommonNode(this.node.getId(), this.node.getName(), this.node.getClazz());