diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/LiteFlowChainELBuilder.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/LiteFlowChainELBuilder.java index 5bf3fadd6..cdb073afd 100644 --- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/LiteFlowChainELBuilder.java +++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/LiteFlowChainELBuilder.java @@ -223,7 +223,9 @@ public class LiteFlowChainELBuilder { throw new QLException(StrUtil.format("parse el fail,el:[{}]", elStr)); } - setNodesInstanceId(condition); + if (liteflowConfig.getEnableNodeInstanceId()) { + setNodesInstanceId(condition); + } // 把主要的condition加入 this.conditionList.add(condition); diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/property/LiteflowConfig.java b/liteflow-core/src/main/java/com/yomahub/liteflow/property/LiteflowConfig.java index d269da250..90ba42c5c 100644 --- a/liteflow-core/src/main/java/com/yomahub/liteflow/property/LiteflowConfig.java +++ b/liteflow-core/src/main/java/com/yomahub/liteflow/property/LiteflowConfig.java @@ -124,6 +124,9 @@ public class LiteflowConfig { //脚本特殊设置选项 private Map scriptSetting; + //是否启用节点实例ID + private Boolean enableNodeInstanceId; + public Boolean getEnableMonitorFile() { return enableMonitorFile; } @@ -509,4 +512,16 @@ public class LiteflowConfig { public void setScriptSetting(Map scriptSetting) { this.scriptSetting = scriptSetting; } + + public Boolean getEnableNodeInstanceId() { + if (ObjectUtil.isNull(enableNodeInstanceId)) { + return Boolean.FALSE; + } else { + return enableNodeInstanceId; + } + } + + public void setEnableNodeInstanceId(Boolean enableNodeInstanceId) { + this.enableNodeInstanceId = enableNodeInstanceId; + } } diff --git a/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/config/LiteflowAutoConfiguration.java b/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/config/LiteflowAutoConfiguration.java index 5d560cfde..4c2d8652d 100644 --- a/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/config/LiteflowAutoConfiguration.java +++ b/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/config/LiteflowAutoConfiguration.java @@ -51,6 +51,7 @@ public class LiteflowAutoConfiguration { liteflowConfig.setParallelQueueLimit(property.getParallelQueueLimit()); liteflowConfig.setParallelLoopExecutorClass(property.getParallelLoopExecutorClass()); liteflowConfig.setFallbackCmpEnable(property.isFallbackCmpEnable()); + liteflowConfig.setEnableNodeInstanceId(property.isEnableNodeInstanceId()); return liteflowConfig; } diff --git a/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/config/LiteflowProperty.java b/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/config/LiteflowProperty.java index d58dd333f..7e4f640f5 100644 --- a/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/config/LiteflowProperty.java +++ b/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/config/LiteflowProperty.java @@ -83,6 +83,9 @@ public class LiteflowProperty { // 是否启用组件降级 private Boolean fallbackCmpEnable; + //是否启用节点实例ID + private boolean enableNodeInstanceId; + public boolean isEnable() { return enable; } @@ -267,4 +270,12 @@ public class LiteflowProperty { public Boolean getFallbackCmpEnable() { return fallbackCmpEnable; } + + public boolean isEnableNodeInstanceId() { + return enableNodeInstanceId; + } + + public void setEnableNodeInstanceId(boolean enableNodeInstanceId) { + this.enableNodeInstanceId = enableNodeInstanceId; + } } diff --git a/liteflow-solon-plugin/src/main/resources/META-INF/liteflow-default.properties b/liteflow-solon-plugin/src/main/resources/META-INF/liteflow-default.properties index c1fda2e94..d70dcee1b 100644 --- a/liteflow-solon-plugin/src/main/resources/META-INF/liteflow-default.properties +++ b/liteflow-solon-plugin/src/main/resources/META-INF/liteflow-default.properties @@ -18,3 +18,4 @@ liteflow.monitor.queue-limit=200 liteflow.monitor.delay=300000 liteflow.monitor.period=300000 liteflow.fallback-cmp-enable=false +liteflow.enable-node-instance-id=true diff --git a/liteflow-spring-boot-starter/src/main/java/com/yomahub/liteflow/springboot/LiteflowProperty.java b/liteflow-spring-boot-starter/src/main/java/com/yomahub/liteflow/springboot/LiteflowProperty.java index 930a62d4c..6dfd031fc 100644 --- a/liteflow-spring-boot-starter/src/main/java/com/yomahub/liteflow/springboot/LiteflowProperty.java +++ b/liteflow-spring-boot-starter/src/main/java/com/yomahub/liteflow/springboot/LiteflowProperty.java @@ -101,6 +101,9 @@ public class LiteflowProperty { //脚本特殊设置选项 private Map scriptSetting; + //是否启用节点实例ID + private boolean enableNodeInstanceId; + public boolean isEnableMonitorFile() { return enableMonitorFile; } @@ -336,4 +339,12 @@ public class LiteflowProperty { public void setScriptSetting(Map scriptSetting) { this.scriptSetting = scriptSetting; } + + public boolean isEnableNodeInstanceId() { + return enableNodeInstanceId; + } + + public void setEnableNodeInstanceId(boolean enableNodeInstanceId) { + this.enableNodeInstanceId = enableNodeInstanceId; + } } diff --git a/liteflow-spring-boot-starter/src/main/java/com/yomahub/liteflow/springboot/config/LiteflowPropertyAutoConfiguration.java b/liteflow-spring-boot-starter/src/main/java/com/yomahub/liteflow/springboot/config/LiteflowPropertyAutoConfiguration.java index 37356fcb3..7a4124f1f 100644 --- a/liteflow-spring-boot-starter/src/main/java/com/yomahub/liteflow/springboot/config/LiteflowPropertyAutoConfiguration.java +++ b/liteflow-spring-boot-starter/src/main/java/com/yomahub/liteflow/springboot/config/LiteflowPropertyAutoConfiguration.java @@ -54,6 +54,7 @@ public class LiteflowPropertyAutoConfiguration { liteflowConfig.setDelay(liteflowMonitorProperty.getDelay()); liteflowConfig.setPeriod(liteflowMonitorProperty.getPeriod()); liteflowConfig.setScriptSetting(property.getScriptSetting()); + liteflowConfig.setEnableNodeInstanceId(property.isEnableNodeInstanceId()); return liteflowConfig; } diff --git a/liteflow-spring-boot-starter/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/liteflow-spring-boot-starter/src/main/resources/META-INF/additional-spring-configuration-metadata.json index 83b0b668e..2e5ee8f3d 100644 --- a/liteflow-spring-boot-starter/src/main/resources/META-INF/additional-spring-configuration-metadata.json +++ b/liteflow-spring-boot-starter/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -220,6 +220,13 @@ "type": "java.util.Map", "description": "script special settings.", "sourceType": "com.yomahub.liteflow.springboot.LiteflowProperty" + }, + { + "name": "liteflow.enable-node-instance-id", + "type": "java.lang.Boolean", + "description": "enable node instance id", + "sourceType": "com.yomahub.liteflow.springboot.LiteflowProperty", + "defaultValue": true } ] } \ No newline at end of file diff --git a/liteflow-spring-boot-starter/src/main/resources/META-INF/liteflow-default.properties b/liteflow-spring-boot-starter/src/main/resources/META-INF/liteflow-default.properties index 37aeb4645..6ac047706 100644 --- a/liteflow-spring-boot-starter/src/main/resources/META-INF/liteflow-default.properties +++ b/liteflow-spring-boot-starter/src/main/resources/META-INF/liteflow-default.properties @@ -26,4 +26,5 @@ liteflow.monitor.queue-limit=200 liteflow.monitor.delay=300000 liteflow.monitor.period=300000 liteflow.enable-monitor-file=false +liteflow.enable-node-instance-id=true