Procházet zdrojové kódy

enhancement #I8SMQB BREAK、IF、WHILE组件统一变成布尔组件

everywhere.z před 1 rokem
rodič
revize
6058038302
100 změnil soubory, kde provedl 279 přidání a 510 odebrání
  1. 3 0
      liteflow-core/src/main/java/com/yomahub/liteflow/annotation/FallbackCmp.java
  2. 4 20
      liteflow-core/src/main/java/com/yomahub/liteflow/builder/LiteFlowNodeBuilder.java
  3. 2 6
      liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/base/OperatorHelper.java
  4. 5 6
      liteflow-core/src/main/java/com/yomahub/liteflow/core/NodeBooleanComponent.java
  5. 0 30
      liteflow-core/src/main/java/com/yomahub/liteflow/core/NodeBreakComponent.java
  6. 0 30
      liteflow-core/src/main/java/com/yomahub/liteflow/core/NodeWhileComponent.java
  7. 4 6
      liteflow-core/src/main/java/com/yomahub/liteflow/core/ScriptBooleanComponent.java
  8. 0 29
      liteflow-core/src/main/java/com/yomahub/liteflow/core/ScriptBreakComponent.java
  9. 1 3
      liteflow-core/src/main/java/com/yomahub/liteflow/core/ScriptComponent.java
  10. 0 29
      liteflow-core/src/main/java/com/yomahub/liteflow/core/ScriptWhileComponent.java
  11. 13 0
      liteflow-core/src/main/java/com/yomahub/liteflow/enums/BooleanTypeEnum.java
  12. 1 3
      liteflow-core/src/main/java/com/yomahub/liteflow/enums/LiteFlowMethodEnum.java
  13. 2 10
      liteflow-core/src/main/java/com/yomahub/liteflow/enums/NodeTypeEnum.java
  14. 10 3
      liteflow-core/src/main/java/com/yomahub/liteflow/flow/FlowBus.java
  15. 6 4
      liteflow-core/src/main/java/com/yomahub/liteflow/flow/element/FallbackNode.java
  16. 4 4
      liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/NodeBooleanComponentOfMethod.java
  17. 0 53
      liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/NodeBreakComponentOfMethod.java
  18. 0 53
      liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/NodeWhileComponentOfMethod.java
  19. 2 8
      liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/integration/XPluginImpl.java
  20. 1 1
      liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/abstractChain/cmp/CmpConfig.java
  21. 1 1
      liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/ifelse/cmp/CmpConfig.java
  22. 1 1
      liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/iterator/cmp/CmpConfig.java
  23. 2 2
      liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/loop/cmp/CmpConfig.java
  24. 2 2
      liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/maxWaitMilliseconds/cmp/CmpConfig.java
  25. 2 2
      liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/maxWaitSeconds/cmp/CmpConfig.java
  26. 2 2
      liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/parallelLoop/cmp/CmpConfig.java
  27. 2 2
      liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/retry/cmp/CmpConfig.java
  28. 6 6
      liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/rollback/cmp/CmpConfig.java
  29. 2 2
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/abstractChain/cmp/CCmp.java
  30. 4 3
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/fallback/cmp/BreakCmp.java
  31. 2 2
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/fallback/cmp/IfCmp1.java
  32. 4 3
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/fallback/cmp/IfCmp2.java
  33. 2 2
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/fallback/cmp/WhileCmp1.java
  34. 4 3
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/fallback/cmp/WhileCmp2.java
  35. 1 1
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/ifelse/cmp/X1Cmp.java
  36. 3 3
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/iterator/cmp/BCmp.java
  37. 1 1
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/loop/cmp/YCmp.java
  38. 1 1
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/loop/cmp/ZCmp.java
  39. 2 2
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/maxWaitMilliseconds/cmp/FCmp.java
  40. 2 2
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/maxWaitMilliseconds/cmp/WCmp.java
  41. 2 2
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/maxWaitSeconds/cmp/FCmp.java
  42. 2 2
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/maxWaitSeconds/cmp/WCmp.java
  43. 1 1
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/parallelLoop/cmp/YCmp.java
  44. 1 1
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/parallelLoop/cmp/ZCmp.java
  45. 3 3
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/retry/cmp/FCmp.java
  46. 3 3
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/retry/cmp/NCmp.java
  47. 3 3
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/rollback/cmp/HCmp.java
  48. 3 3
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/rollback/cmp/WCmp.java
  49. 3 3
      liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/rollback/cmp/XCmp.java
  50. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/abstractChain/cmp/CCmp.java
  51. 5 4
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/fallback/cmp/BreakCmp.java
  52. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/fallback/cmp/IfCmp1.java
  53. 5 4
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/fallback/cmp/IfCmp2.java
  54. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/fallback/cmp/WhileCmp1.java
  55. 5 4
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/fallback/cmp/WhileCmp2.java
  56. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/ifelse/cmp/X1Cmp.java
  57. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/iterator/cmp/BCmp.java
  58. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/loop/cmp/YCmp.java
  59. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/loop/cmp/ZCmp.java
  60. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/maxWaitMilliseconds/cmp/FCmp.java
  61. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/maxWaitMilliseconds/cmp/WCmp.java
  62. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/maxWaitSeconds/cmp/FCmp.java
  63. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/maxWaitSeconds/cmp/WCmp.java
  64. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/parallelLoop/cmp/YCmp.java
  65. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/parallelLoop/cmp/ZCmp.java
  66. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/retry/cmp/FCmp.java
  67. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/retry/cmp/NCmp.java
  68. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/rollback/cmp/HCmp.java
  69. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/rollback/cmp/WCmp.java
  70. 3 3
      liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/rollback/cmp/XCmp.java
  71. 3 3
      liteflow-testcase-el/liteflow-testcase-el-script-graaljs-springboot/src/test/java/com/yomahub/liteflow/test/script/graaljs/getnodes/cmp/FCmp.java
  72. 2 2
      liteflow-testcase-el/liteflow-testcase-el-script-graaljs-springboot/src/test/resources/getnodes/flow.xml
  73. 2 2
      liteflow-testcase-el/liteflow-testcase-el-script-graaljs-springboot/src/test/resources/ifelse/flow.xml
  74. 2 2
      liteflow-testcase-el/liteflow-testcase-el-script-graaljs-springboot/src/test/resources/loop/flow.xml
  75. 2 2
      liteflow-testcase-el/liteflow-testcase-el-script-groovy-springboot/src/test/resources/ifelse/flow.el.xml
  76. 2 2
      liteflow-testcase-el/liteflow-testcase-el-script-groovy-springboot/src/test/resources/loop/flow.xml
  77. 1 1
      liteflow-testcase-el/liteflow-testcase-el-script-groovy-springboot/src/test/resources/scriptOrder/flow1.xml
  78. 3 3
      liteflow-testcase-el/liteflow-testcase-el-script-javascript-springboot/src/test/java/com/yomahub/liteflow/test/script/javascript/getnodes/cmp/FCmp.java
  79. 2 2
      liteflow-testcase-el/liteflow-testcase-el-script-javascript-springboot/src/test/resources/getnodes/flow.xml
  80. 2 2
      liteflow-testcase-el/liteflow-testcase-el-script-javascript-springboot/src/test/resources/ifelse/flow.xml
  81. 2 2
      liteflow-testcase-el/liteflow-testcase-el-script-javascript-springboot/src/test/resources/loop/flow.xml
  82. 2 2
      liteflow-testcase-el/liteflow-testcase-el-script-qlexpress-springboot/src/test/resources/ifelse/flow.el.xml
  83. 2 2
      liteflow-testcase-el/liteflow-testcase-el-script-qlexpress-springboot/src/test/resources/loop/flow.xml
  84. 3 3
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/abstractChain/cmp/CCmp.java
  85. 5 4
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/fallback/cmp/BreakCmp.java
  86. 3 3
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/fallback/cmp/IfCmp1.java
  87. 5 4
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/fallback/cmp/IfCmp2.java
  88. 3 3
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/fallback/cmp/WhileCmp1.java
  89. 5 4
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/fallback/cmp/WhileCmp2.java
  90. 3 3
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/ifelse/cmp/X1Cmp.java
  91. 3 3
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/loop/cmp/YCmp.java
  92. 4 4
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/loop/cmp/ZCmp.java
  93. 3 3
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/maxWaitMilliseconds/cmp/FCmp.java
  94. 3 3
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/maxWaitMilliseconds/cmp/WCmp.java
  95. 3 3
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/maxWaitSeconds/cmp/FCmp.java
  96. 3 3
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/maxWaitSeconds/cmp/WCmp.java
  97. 3 3
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/parallelLoop/cmp/YCmp.java
  98. 3 3
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/parallelLoop/cmp/ZCmp.java
  99. 3 3
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/retry/cmp/FCmp.java
  100. 3 3
      liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/retry/cmp/NCmp.java

+ 3 - 0
liteflow-core/src/main/java/com/yomahub/liteflow/annotation/FallbackCmp.java

@@ -1,5 +1,6 @@
 package com.yomahub.liteflow.annotation;
 
+import com.yomahub.liteflow.enums.BooleanTypeEnum;
 import com.yomahub.liteflow.enums.NodeTypeEnum;
 
 import java.lang.annotation.Documented;
@@ -20,4 +21,6 @@ import java.lang.annotation.Target;
 @Documented
 @Inherited
 public @interface FallbackCmp {
+
+    BooleanTypeEnum value() default BooleanTypeEnum.NOT_BOOL;
 }

+ 4 - 20
liteflow-core/src/main/java/com/yomahub/liteflow/builder/LiteFlowNodeBuilder.java

@@ -34,22 +34,14 @@ public class LiteFlowNodeBuilder {
 		return new LiteFlowNodeBuilder(NodeTypeEnum.SWITCH);
 	}
 
-	public static LiteFlowNodeBuilder createIfNode() {
-		return new LiteFlowNodeBuilder(NodeTypeEnum.IF);
+	public static LiteFlowNodeBuilder createBooleanNode() {
+		return new LiteFlowNodeBuilder(NodeTypeEnum.BOOLEAN);
 	}
 
 	public static LiteFlowNodeBuilder createForNode() {
 		return new LiteFlowNodeBuilder(NodeTypeEnum.FOR);
 	}
 
-	public static LiteFlowNodeBuilder createWhileNode() {
-		return new LiteFlowNodeBuilder(NodeTypeEnum.WHILE);
-	}
-
-	public static LiteFlowNodeBuilder createBreakNode() {
-		return new LiteFlowNodeBuilder(NodeTypeEnum.BREAK);
-	}
-
 	public static LiteFlowNodeBuilder createIteratorNode() {
 		return new LiteFlowNodeBuilder(NodeTypeEnum.ITERATOR);
 	}
@@ -62,22 +54,14 @@ public class LiteFlowNodeBuilder {
 		return new LiteFlowNodeBuilder(NodeTypeEnum.SWITCH_SCRIPT);
 	}
 
-	public static LiteFlowNodeBuilder createScriptIfNode() {
-		return new LiteFlowNodeBuilder(NodeTypeEnum.IF_SCRIPT);
+	public static LiteFlowNodeBuilder createScriptBooleanNode() {
+		return new LiteFlowNodeBuilder(NodeTypeEnum.BOOLEAN_SCRIPT);
 	}
 
 	public static LiteFlowNodeBuilder createScriptForNode() {
 		return new LiteFlowNodeBuilder(NodeTypeEnum.FOR_SCRIPT);
 	}
 
-	public static LiteFlowNodeBuilder createScriptWhileNode() {
-		return new LiteFlowNodeBuilder(NodeTypeEnum.WHILE_SCRIPT);
-	}
-
-	public static LiteFlowNodeBuilder createScriptBreakNode() {
-		return new LiteFlowNodeBuilder(NodeTypeEnum.BREAK_SCRIPT);
-	}
-
 	public LiteFlowNodeBuilder() {
 		this.node = new Node();
 	}

+ 2 - 6
liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/base/OperatorHelper.java

@@ -167,12 +167,8 @@ public class OperatorHelper {
 		Executable item = (Executable) object;
 		if (item.getExecuteType().equals(ExecuteTypeEnum.NODE)){
 			Node node = (Node) item;
-			if (!ListUtil.toList(NodeTypeEnum.IF,
-					NodeTypeEnum.IF_SCRIPT,
-					NodeTypeEnum.WHILE,
-					NodeTypeEnum.WHILE_SCRIPT,
-					NodeTypeEnum.BREAK,
-					NodeTypeEnum.BREAK_SCRIPT,
+			if (!ListUtil.toList(NodeTypeEnum.BOOLEAN,
+					NodeTypeEnum.BOOLEAN_SCRIPT,
 					NodeTypeEnum.FALLBACK).contains(node.getType())){
 				throw new QLException(StrUtil.format("The node[{}] must be boolean type Node.", node.getId()));
 			}

+ 5 - 6
liteflow-core/src/main/java/com/yomahub/liteflow/core/NodeIfComponent.java → liteflow-core/src/main/java/com/yomahub/liteflow/core/NodeBooleanComponent.java

@@ -1,23 +1,22 @@
 package com.yomahub.liteflow.core;
 
 import com.yomahub.liteflow.slot.DataBus;
-import com.yomahub.liteflow.core.proxy.LiteFlowProxyUtil;
 
 /**
- * IF节点抽象类
+ * BOOLEAN类型的抽象节点
  *
  * @author Bryan.Zhang
- * @since 2.8.5
+ * @since 2.12.0
  */
-public abstract class NodeIfComponent extends NodeComponent {
+public abstract class NodeBooleanComponent extends NodeComponent {
 
 	@Override
 	public void process() throws Exception {
-		boolean result = this.processIf();
+		boolean result = this.processBoolean();
 		this.getSlot().setIfResult(this.getMetaValueKey(), result);
 	}
 
-	public abstract boolean processIf() throws Exception;
+	public abstract boolean processBoolean() throws Exception;
 
 	@Override
 	@SuppressWarnings("unchecked")

+ 0 - 30
liteflow-core/src/main/java/com/yomahub/liteflow/core/NodeBreakComponent.java

@@ -1,30 +0,0 @@
-package com.yomahub.liteflow.core;
-
-import com.yomahub.liteflow.slot.DataBus;
-import com.yomahub.liteflow.slot.Slot;
-import com.yomahub.liteflow.core.proxy.LiteFlowProxyUtil;
-
-/**
- * 循环跳出节点逻辑抽象类
- *
- * @author Bryan.Zhang
- * @since 2.9.0
- */
-public abstract class NodeBreakComponent extends NodeComponent {
-
-	@Override
-	public void process() throws Exception {
-		boolean breakFlag = processBreak();
-		Slot slot = this.getSlot();
-		slot.setBreakResult(this.getMetaValueKey(), breakFlag);
-	}
-
-	public abstract boolean processBreak() throws Exception;
-
-	@Override
-	@SuppressWarnings("unchecked")
-	public Boolean getItemResultMetaValue(Integer slotIndex) {
-		return DataBus.getSlot(slotIndex).getBreakResult(this.getMetaValueKey());
-	}
-
-}

+ 0 - 30
liteflow-core/src/main/java/com/yomahub/liteflow/core/NodeWhileComponent.java

@@ -1,30 +0,0 @@
-package com.yomahub.liteflow.core;
-
-import com.yomahub.liteflow.slot.DataBus;
-import com.yomahub.liteflow.slot.Slot;
-import com.yomahub.liteflow.core.proxy.LiteFlowProxyUtil;
-
-/**
- * WHILE条件节点抽象类
- *
- * @author Bryan.Zhang
- * @since 2.9.0
- */
-public abstract class NodeWhileComponent extends NodeComponent {
-
-	@Override
-	public void process() throws Exception {
-		boolean whileFlag = processWhile();
-		Slot slot = this.getSlot();
-		slot.setWhileResult(this.getMetaValueKey(), whileFlag);
-	}
-
-	public abstract boolean processWhile() throws Exception;
-
-	@Override
-	@SuppressWarnings("unchecked")
-	public Boolean getItemResultMetaValue(Integer slotIndex) {
-		return DataBus.getSlot(slotIndex).getWhileResult(this.getMetaValueKey());
-	}
-
-}

+ 4 - 6
liteflow-core/src/main/java/com/yomahub/liteflow/core/ScriptIfComponent.java → liteflow-core/src/main/java/com/yomahub/liteflow/core/ScriptBooleanComponent.java

@@ -3,18 +3,16 @@ package com.yomahub.liteflow.core;
 import com.yomahub.liteflow.script.ScriptExecuteWrap;
 import com.yomahub.liteflow.script.ScriptExecutorFactory;
 
-import java.util.Map;
-
 /**
- * 脚本IF节点
+ * 脚本BOOLEAN节点
  *
  * @author Bryan.Zhang
- * @since 2.8.5
+ * @since 2.12.0
  */
-public class ScriptIfComponent extends NodeIfComponent implements ScriptComponent {
+public class ScriptBooleanComponent extends NodeBooleanComponent implements ScriptComponent {
 
 	@Override
-	public boolean processIf() throws Exception {
+	public boolean processBoolean() throws Exception {
 		ScriptExecuteWrap wrap = this.buildWrap(this);
 		return (boolean) ScriptExecutorFactory.loadInstance()
 			.getScriptExecutor(this.getRefNode().getLanguage())

+ 0 - 29
liteflow-core/src/main/java/com/yomahub/liteflow/core/ScriptBreakComponent.java

@@ -1,29 +0,0 @@
-package com.yomahub.liteflow.core;
-
-import com.yomahub.liteflow.script.ScriptExecuteWrap;
-import com.yomahub.liteflow.script.ScriptExecutorFactory;
-
-import java.util.Map;
-
-/**
- * 脚本BREAK节点
- *
- * @author Bryan.Zhang
- * @since 2.9.0
- */
-public class ScriptBreakComponent extends NodeBreakComponent implements ScriptComponent {
-
-	@Override
-	public boolean processBreak() throws Exception {
-		ScriptExecuteWrap wrap = this.buildWrap(this);
-		return (boolean) ScriptExecutorFactory.loadInstance()
-			.getScriptExecutor(this.getRefNode().getLanguage())
-			.execute(wrap);
-	}
-
-	@Override
-	public void loadScript(String script, String language) {
-		ScriptExecutorFactory.loadInstance().getScriptExecutor(language).load(getNodeId(), script);
-	}
-
-}

+ 1 - 3
liteflow-core/src/main/java/com/yomahub/liteflow/core/ScriptComponent.java

@@ -21,10 +21,8 @@ public interface ScriptComponent {
 		{
 			put(NodeTypeEnum.SCRIPT, ScriptCommonComponent.class);
 			put(NodeTypeEnum.SWITCH_SCRIPT, ScriptSwitchComponent.class);
-			put(NodeTypeEnum.IF_SCRIPT, ScriptIfComponent.class);
+			put(NodeTypeEnum.BOOLEAN_SCRIPT, ScriptBooleanComponent.class);
 			put(NodeTypeEnum.FOR_SCRIPT, ScriptForComponent.class);
-			put(NodeTypeEnum.WHILE_SCRIPT, ScriptWhileComponent.class);
-			put(NodeTypeEnum.BREAK_SCRIPT, ScriptBreakComponent.class);
 		}
 	};
 

+ 0 - 29
liteflow-core/src/main/java/com/yomahub/liteflow/core/ScriptWhileComponent.java

@@ -1,29 +0,0 @@
-package com.yomahub.liteflow.core;
-
-import com.yomahub.liteflow.script.ScriptExecuteWrap;
-import com.yomahub.liteflow.script.ScriptExecutorFactory;
-
-import java.util.Map;
-
-/**
- * 脚本WHILE节点
- *
- * @author Bryan.Zhang
- * @since 2.9.0
- */
-public class ScriptWhileComponent extends NodeWhileComponent implements ScriptComponent {
-
-	@Override
-	public boolean processWhile() throws Exception {
-		ScriptExecuteWrap wrap = this.buildWrap(this);
-		return (boolean) ScriptExecutorFactory.loadInstance()
-			.getScriptExecutor(this.getRefNode().getLanguage())
-			.execute(wrap);
-	}
-
-	@Override
-	public void loadScript(String script, String language) {
-		ScriptExecutorFactory.loadInstance().getScriptExecutor(language).load(getNodeId(), script);
-	}
-
-}

+ 13 - 0
liteflow-core/src/main/java/com/yomahub/liteflow/enums/BooleanTypeEnum.java

@@ -0,0 +1,13 @@
+package com.yomahub.liteflow.enums;
+
+/**
+ * 布尔节点的细分TYPE
+ * 主要用于组件降级
+ *
+ * @author Bryan.Zhang
+ * @since 2.12.0
+ */
+public enum BooleanTypeEnum {
+
+    NOT_BOOL,IF,WHILE,BREAK
+}

+ 1 - 3
liteflow-core/src/main/java/com/yomahub/liteflow/enums/LiteFlowMethodEnum.java

@@ -4,10 +4,8 @@ public enum LiteFlowMethodEnum {
 
 	PROCESS("process", true),
 	PROCESS_SWITCH("processSwitch", true),
-	PROCESS_IF("processIf", true),
+	PROCESS_BOOLEAN("processBoolean", true),
 	PROCESS_FOR("processFor", true),
-	PROCESS_WHILE("processWhile", true),
-	PROCESS_BREAK("processBreak", true),
 
 	PROCESS_ITERATOR("processIterator", true),
 

+ 2 - 10
liteflow-core/src/main/java/com/yomahub/liteflow/enums/NodeTypeEnum.java

@@ -25,28 +25,20 @@ public enum NodeTypeEnum {
 
 	SWITCH("switch", "选择", false, NodeSwitchComponent.class),
 
-	IF("if", "条件", false, NodeIfComponent.class),
+	BOOLEAN("boolean", "布尔", false, NodeBooleanComponent.class),
 
 	FOR("for", "循环次数", false, NodeForComponent.class),
 
-	WHILE("while", "循环条件", false, NodeWhileComponent.class),
-
-	BREAK("break", "循环跳出", false, NodeBreakComponent.class),
-
 	ITERATOR("iterator", "循环迭代", false, NodeIteratorComponent.class),
 
 	SCRIPT("script", "脚本", true, ScriptCommonComponent.class),
 
 	SWITCH_SCRIPT("switch_script", "选择脚本", true, ScriptSwitchComponent.class),
 
-	IF_SCRIPT("if_script", "条件脚本", true, ScriptIfComponent.class),
+	BOOLEAN_SCRIPT("boolean_script", "布尔脚本", true, ScriptBooleanComponent.class),
 
 	FOR_SCRIPT("for_script", "循环次数脚本", true, ScriptForComponent.class),
 
-	WHILE_SCRIPT("while_script", "循环条件脚本", true, ScriptWhileComponent.class),
-
-	BREAK_SCRIPT("break_script", "循环跳出脚本", true, ScriptBreakComponent.class),
-
 	FALLBACK("fallback", "降级", false, null);
 
 	private static final LFLog LOG = LFLoggerManager.getLogger(NodeTypeEnum.class);

+ 10 - 3
liteflow-core/src/main/java/com/yomahub/liteflow/flow/FlowBus.java

@@ -16,6 +16,7 @@ import com.yomahub.liteflow.core.ComponentInitializer;
 import com.yomahub.liteflow.core.NodeComponent;
 import com.yomahub.liteflow.core.ScriptComponent;
 import com.yomahub.liteflow.core.proxy.DeclWarpBean;
+import com.yomahub.liteflow.enums.BooleanTypeEnum;
 import com.yomahub.liteflow.enums.FlowParserTypeEnum;
 import com.yomahub.liteflow.enums.NodeTypeEnum;
 import com.yomahub.liteflow.exception.ComponentCannotRegisterException;
@@ -59,7 +60,7 @@ public class FlowBus {
 
 	private static final Map<String, Node> nodeMap;
 
-	private static final Map<NodeTypeEnum, Node> fallbackNodeMap;
+	private static final Map<String, Node> fallbackNodeMap;
 
 	private static AtomicBoolean initStat = new AtomicBoolean(false);
 
@@ -261,7 +262,12 @@ public class FlowBus {
 	}
 
 	public static Node getFallBackNode(NodeTypeEnum nodeType) {
-		return fallbackNodeMap.get(nodeType);
+		return getFallBackNode(nodeType, BooleanTypeEnum.NOT_BOOL);
+	}
+
+	public static Node getFallBackNode(NodeTypeEnum nodeType, BooleanTypeEnum booleanTypeEnum){
+		String key = StrUtil.format("{}_{}", nodeType.name(), booleanTypeEnum.name());
+		return fallbackNodeMap.get(key);
 	}
 
 	public static void cleanCache() {
@@ -322,7 +328,8 @@ public class FlowBus {
 		}
 
 		NodeTypeEnum nodeType = node.getType();
-		fallbackNodeMap.put(nodeType, node);
+		String key = StrUtil.format("{}_{}", nodeType.name(), fallbackCmp.value().name());
+		fallbackNodeMap.put(key, node);
 	}
 
     // 重新加载脚本

+ 6 - 4
liteflow-core/src/main/java/com/yomahub/liteflow/flow/element/FallbackNode.java

@@ -3,6 +3,7 @@ package com.yomahub.liteflow.flow.element;
 import cn.hutool.core.text.StrFormatter;
 import cn.hutool.core.util.ObjectUtil;
 import com.yomahub.liteflow.core.NodeComponent;
+import com.yomahub.liteflow.enums.BooleanTypeEnum;
 import com.yomahub.liteflow.enums.ConditionTypeEnum;
 import com.yomahub.liteflow.enums.NodeTypeEnum;
 import com.yomahub.liteflow.exception.FallbackCmpNotFoundException;
@@ -89,7 +90,8 @@ public class FallbackNode extends Node {
                 return findNodeInIterator((IteratorCondition) condition);
             case TYPE_NOT_OPT:
             case TYPE_AND_OR_OPT:
-                return FlowBus.getFallBackNode(NodeTypeEnum.IF);
+                //组件降级用在与并或中,只能用在IF表达式中
+                return FlowBus.getFallBackNode(NodeTypeEnum.BOOLEAN, BooleanTypeEnum.IF);
             default:
                 return null;
         }
@@ -99,7 +101,7 @@ public class FallbackNode extends Node {
         Executable ifItem = ifCondition.getIfItem();
         if (ifItem == this) {
             // 需要条件组件
-            return FlowBus.getFallBackNode(NodeTypeEnum.IF);
+            return FlowBus.getFallBackNode(NodeTypeEnum.BOOLEAN, BooleanTypeEnum.IF);
         }
 
         // 需要普通组件
@@ -127,7 +129,7 @@ public class FallbackNode extends Node {
     private Node findNodeInWhile(WhileCondition whileCondition) {
         Executable whileItem = whileCondition.getWhileItem();
         if (whileItem == this) {
-            return FlowBus.getFallBackNode(NodeTypeEnum.WHILE);
+            return FlowBus.getFallBackNode(NodeTypeEnum.BOOLEAN, BooleanTypeEnum.WHILE);
         }
 
         return findNodeInLoop(whileCondition);
@@ -145,7 +147,7 @@ public class FallbackNode extends Node {
     private Node findNodeInLoop(LoopCondition loopCondition) {
         Executable breakItem = loopCondition.getExecutableOne(ConditionKey.BREAK_KEY);
         if (breakItem == this) {
-            return FlowBus.getFallBackNode(NodeTypeEnum.BREAK);
+            return FlowBus.getFallBackNode(NodeTypeEnum.BOOLEAN, BooleanTypeEnum.BREAK);
         }
 
         return FlowBus.getFallBackNode(NodeTypeEnum.COMMON);

+ 4 - 4
liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/NodeIfComponentOfMethod.java → liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/NodeBooleanComponentOfMethod.java

@@ -1,6 +1,6 @@
 package com.yomahub.liteflow.solon;
 
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import com.yomahub.liteflow.enums.LiteFlowMethodEnum;
 import com.yomahub.liteflow.exception.LiteFlowException;
 import org.noear.solon.core.BeanWrap;
@@ -11,7 +11,7 @@ import java.lang.reflect.Method;
  * @author noear
  * @since 1.11
  */
-public class NodeIfComponentOfMethod extends NodeIfComponent {
+public class NodeBooleanComponentOfMethod extends NodeBooleanComponent {
 
 	final BeanWrap beanWrap;
 
@@ -19,7 +19,7 @@ public class NodeIfComponentOfMethod extends NodeIfComponent {
 
 	final LiteFlowMethodEnum methodEnum;
 
-	public NodeIfComponentOfMethod(BeanWrap beanWrap, Method method, LiteFlowMethodEnum methodEnum) {
+	public NodeBooleanComponentOfMethod(BeanWrap beanWrap, Method method, LiteFlowMethodEnum methodEnum) {
 		this.beanWrap = beanWrap;
 		this.method = method;
 		this.methodEnum = methodEnum;
@@ -45,7 +45,7 @@ public class NodeIfComponentOfMethod extends NodeIfComponent {
 	}
 
 	@Override
-	public boolean processIf() throws Exception {
+	public boolean processBoolean() throws Exception {
 		return (boolean) exec();
 	}
 

+ 0 - 53
liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/NodeBreakComponentOfMethod.java

@@ -1,53 +0,0 @@
-package com.yomahub.liteflow.solon;
-
-import com.yomahub.liteflow.core.NodeBreakComponent;
-import com.yomahub.liteflow.enums.LiteFlowMethodEnum;
-import com.yomahub.liteflow.exception.LiteFlowException;
-import org.noear.solon.core.BeanWrap;
-
-import java.lang.reflect.Method;
-
-/**
- * @author noear
- * @since 1.11
- */
-public class NodeBreakComponentOfMethod extends NodeBreakComponent {
-
-	final BeanWrap beanWrap;
-
-	final Method method;
-
-	final LiteFlowMethodEnum methodEnum;
-
-	public NodeBreakComponentOfMethod(BeanWrap beanWrap, Method method, LiteFlowMethodEnum methodEnum) {
-		this.beanWrap = beanWrap;
-		this.method = method;
-		this.methodEnum = methodEnum;
-
-		if (method.getParameterCount() > 1) {
-			String methodFullName = beanWrap.clz().getName() + "::" + method.getName();
-			throw new LiteFlowException(
-					"NodeBreakComponent method parameter cannot be more than one: " + methodFullName);
-		}
-
-		if (method.getReturnType() != Boolean.class && method.getReturnType() != boolean.class) {
-			String methodFullName = beanWrap.clz().getName() + "::" + method.getName();
-			throw new LiteFlowException("NodeBreakComponent method returnType can only be boolean: " + methodFullName);
-		}
-	}
-
-	private Object exec() throws Exception {
-		if (method.getParameterCount() == 0) {
-			return method.invoke(beanWrap.get());
-		}
-		else {
-			return method.invoke(beanWrap.get(), this);
-		}
-	}
-
-	@Override
-	public boolean processBreak() throws Exception {
-		return (boolean) exec();
-	}
-
-}

+ 0 - 53
liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/NodeWhileComponentOfMethod.java

@@ -1,53 +0,0 @@
-package com.yomahub.liteflow.solon;
-
-import com.yomahub.liteflow.core.NodeWhileComponent;
-import com.yomahub.liteflow.enums.LiteFlowMethodEnum;
-import com.yomahub.liteflow.exception.LiteFlowException;
-import org.noear.solon.core.BeanWrap;
-
-import java.lang.reflect.Method;
-
-/**
- * @author noear
- * @since 1.11
- */
-public class NodeWhileComponentOfMethod extends NodeWhileComponent {
-
-	final BeanWrap beanWrap;
-
-	final Method method;
-
-	final LiteFlowMethodEnum methodEnum;
-
-	public NodeWhileComponentOfMethod(BeanWrap beanWrap, Method method, LiteFlowMethodEnum methodEnum) {
-		this.beanWrap = beanWrap;
-		this.method = method;
-		this.methodEnum = methodEnum;
-
-		if (method.getParameterCount() > 1) {
-			String methodFullName = beanWrap.clz().getName() + "::" + method.getName();
-			throw new LiteFlowException(
-					"NodeWhileComponent method parameter cannot be more than one: " + methodFullName);
-		}
-
-		if (method.getReturnType() != Boolean.class && method.getReturnType() != boolean.class) {
-			String methodFullName = beanWrap.clz().getName() + "::" + method.getName();
-			throw new LiteFlowException("NodeWhileComponent method returnType can only be boolean: " + methodFullName);
-		}
-	}
-
-	private Object exec() throws Exception {
-		if (method.getParameterCount() == 0) {
-			return method.invoke(beanWrap.get());
-		}
-		else {
-			return method.invoke(beanWrap.get(), this);
-		}
-	}
-
-	@Override
-	public boolean processWhile() throws Exception {
-		return (boolean) exec();
-	}
-
-}

+ 2 - 8
liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/integration/XPluginImpl.java

@@ -58,18 +58,12 @@ public class XPluginImpl implements Plugin {
 				case PROCESS_SWITCH:
 					node1 = new NodeSwitchComponentOfMethod(bw, method, anno.value());
 					break;
-				case PROCESS_IF:
-					node1 = new NodeIfComponentOfMethod(bw, method, anno.value());
+				case PROCESS_BOOLEAN:
+					node1 = new NodeBooleanComponentOfMethod(bw, method, anno.value());
 					break;
 				case PROCESS_FOR:
 					node1 = new NodeForComponentOfMethod(bw, method, anno.value());
 					break;
-				case PROCESS_WHILE:
-					node1 = new NodeWhileComponentOfMethod(bw, method, anno.value());
-					break;
-				case PROCESS_BREAK:
-					node1 = new NodeBreakComponentOfMethod(bw, method, anno.value());
-					break;
 				default:
 					node1 = new NodeComponentOfMethod(bw, method, anno.value());
 			}

+ 1 - 1
liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/abstractChain/cmp/CmpConfig.java

@@ -25,7 +25,7 @@ public class CmpConfig {
         System.out.println("BCmp executed!");
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_IF, nodeId = "c", nodeType = NodeTypeEnum.IF)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "c", nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processIfC(NodeComponent bindCmp) throws Exception{
         return true;
     }

+ 1 - 1
liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/ifelse/cmp/CmpConfig.java

@@ -30,7 +30,7 @@ public class CmpConfig {
 		System.out.println("DCmp executed!");
 	}
 
-	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_IF, nodeId = "x1", nodeType = NodeTypeEnum.IF)
+	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "x1", nodeType = NodeTypeEnum.BOOLEAN)
 	public boolean processIfX1(NodeComponent bindCmp) throws Exception {
 		return Boolean.parseBoolean(bindCmp.getTag());
 	}

+ 1 - 1
liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/iterator/cmp/CmpConfig.java

@@ -29,7 +29,7 @@ public class CmpConfig {
 		}
 	}
 
-	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BREAK, nodeId = "b", nodeType = NodeTypeEnum.BREAK)
+	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "b", nodeType = NodeTypeEnum.BOOLEAN)
 	public boolean processB(NodeComponent bindCmp) {
 		return bindCmp.getLoopIndex() == 1;
 	}

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/loop/cmp/CmpConfig.java

@@ -59,14 +59,14 @@ public class CmpConfig {
 		return 3;
 	}
 
-	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BREAK, nodeId = "y", nodeType = NodeTypeEnum.BREAK)
+	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "y", nodeType = NodeTypeEnum.BOOLEAN)
 	public boolean processY(NodeComponent bindCmp) {
 		DefaultContext context = bindCmp.getFirstContextBean();
 		int count = context.getData("test");
 		return count > 3;
 	}
 
-	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_WHILE, nodeId = "z", nodeType = NodeTypeEnum.WHILE)
+	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "z", nodeType = NodeTypeEnum.BOOLEAN)
 	public boolean processZ(NodeComponent bindCmp) {
 		DefaultContext context = bindCmp.getFirstContextBean();
 		String key = "test";

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/maxWaitMilliseconds/cmp/CmpConfig.java

@@ -69,7 +69,7 @@ public class CmpConfig {
         System.out.println("DCmp executed!");
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_IF, nodeId = "f", nodeType = NodeTypeEnum.IF)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "f", nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processIf(NodeComponent bindCmp) throws Exception {
         return true;
     }
@@ -79,7 +79,7 @@ public class CmpConfig {
         return "b";
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_WHILE, nodeId = "w", nodeType = NodeTypeEnum.WHILE)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "w", nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processWhile(NodeComponent bindCmp) throws Exception {
         // 判断是否切换了 chain
         if (!executedChain.contains(bindCmp.getCurrChainId())) {

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/maxWaitSeconds/cmp/CmpConfig.java

@@ -69,7 +69,7 @@ public class CmpConfig {
         System.out.println("DCmp executed!");
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_IF, nodeId = "f", nodeType = NodeTypeEnum.IF)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "f", nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processIf(NodeComponent bindCmp) throws Exception {
         return true;
     }
@@ -79,7 +79,7 @@ public class CmpConfig {
         return "b";
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_WHILE, nodeId = "w", nodeType = NodeTypeEnum.WHILE)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "w", nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processWhile(NodeComponent bindCmp) throws Exception {
         // 判断是否切换了 chain
         if (!executedChain.contains(bindCmp.getCurrChainId())) {

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/parallelLoop/cmp/CmpConfig.java

@@ -94,7 +94,7 @@ public class CmpConfig {
         return 3;
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BREAK, nodeId = "y", nodeType = NodeTypeEnum.BREAK)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "y", nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processY(NodeComponent bindCmp) {
         DefaultContext context = bindCmp.getFirstContextBean();
         int count = 0;
@@ -104,7 +104,7 @@ public class CmpConfig {
         return count > 3;
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_WHILE, nodeId = "z", nodeType = NodeTypeEnum.WHILE)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "z", nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processZ(NodeComponent bindCmp) {
         DefaultContext context = bindCmp.getFirstContextBean();
         String key = "test";

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/retry/cmp/CmpConfig.java

@@ -51,7 +51,7 @@ public class CmpConfig {
         else return "a";
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_IF, nodeId = "f", nodeType = NodeTypeEnum.IF)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "f", nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processF(NodeComponent bindCmp) {
         System.out.println("FCmp executed!");
         flagf ++;
@@ -77,7 +77,7 @@ public class CmpConfig {
         else flagm = 0;
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_WHILE, nodeId = "n", nodeType = NodeTypeEnum.WHILE)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "n", nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processN(NodeComponent bindCmp) {
         flagn ++;
         System.out.println("NCmp executed!");

+ 6 - 6
liteflow-testcase-el/liteflow-testcase-el-declare-multi-springboot/src/test/java/com/yomahub/liteflow/test/rollback/cmp/CmpConfig.java

@@ -102,13 +102,13 @@ public class CmpConfig {
         System.out.println("GCmp rollback!");
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BREAK, nodeId = "h", nodeType = NodeTypeEnum.BREAK)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "h", nodeType = NodeTypeEnum.BOOLEAN)
     public int processH(NodeComponent bindCmp) {
         System.out.println("HCmp executed!");
         throw new RuntimeException();
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.ROLLBACK, nodeId = "h", nodeType = NodeTypeEnum.BREAK)
+    @LiteflowMethod(value = LiteFlowMethodEnum.ROLLBACK, nodeId = "h", nodeType = NodeTypeEnum.BOOLEAN)
     public void rollbackH() throws Exception {
         System.out.println("HCmp rollback!");
     }
@@ -124,24 +124,24 @@ public class CmpConfig {
         System.out.println("ICmp rollback!");
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_WHILE, nodeId = "w", nodeType = NodeTypeEnum.WHILE)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "w", nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processW(NodeComponent bindCmp) {
         System.out.println("WCmp executed!");
         return true;
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.ROLLBACK, nodeId = "w", nodeType = NodeTypeEnum.WHILE)
+    @LiteflowMethod(value = LiteFlowMethodEnum.ROLLBACK, nodeId = "w", nodeType = NodeTypeEnum.BOOLEAN)
     public void rollbackW() throws Exception {
         System.out.println("WCmp rollback!");
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_IF, nodeId = "x", nodeType = NodeTypeEnum.IF)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeId = "x", nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processX(NodeComponent bindCmp) {
         System.out.println("XCmp executed!");
         return true;
     }
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.ROLLBACK, nodeId = "x", nodeType = NodeTypeEnum.IF)
+    @LiteflowMethod(value = LiteFlowMethodEnum.ROLLBACK, nodeId = "x", nodeType = NodeTypeEnum.BOOLEAN)
     public void rollbackX() throws Exception {
         System.out.println("XCmp rollback!");
     }

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/abstractChain/cmp/CCmp.java

@@ -8,9 +8,9 @@ import com.yomahub.liteflow.enums.NodeTypeEnum;
 import org.springframework.stereotype.Component;
 
 @Component("c")
-@LiteflowCmpDefine(NodeTypeEnum.IF)
+@LiteflowCmpDefine(NodeTypeEnum.BOOLEAN)
 public class CCmp {
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_IF, nodeType = NodeTypeEnum.IF)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processIf(NodeComponent bindCmp) throws Exception {
         return true;
     }

+ 4 - 3
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/fallback/cmp/BreakCmp.java

@@ -5,15 +5,16 @@ import com.yomahub.liteflow.annotation.LiteflowCmpDefine;
 import com.yomahub.liteflow.annotation.LiteflowComponent;
 import com.yomahub.liteflow.annotation.LiteflowMethod;
 import com.yomahub.liteflow.core.NodeComponent;
+import com.yomahub.liteflow.enums.BooleanTypeEnum;
 import com.yomahub.liteflow.enums.LiteFlowMethodEnum;
 import com.yomahub.liteflow.enums.NodeTypeEnum;
 
 @LiteflowComponent("bn1")
-@LiteflowCmpDefine(NodeTypeEnum.BREAK)
-@FallbackCmp
+@LiteflowCmpDefine(NodeTypeEnum.BOOLEAN)
+@FallbackCmp(BooleanTypeEnum.BREAK)
 public class BreakCmp {
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BREAK)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN)
     public boolean processBreak(NodeComponent bindCmp) throws Exception {
         return true;
     }

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/fallback/cmp/IfCmp1.java

@@ -8,10 +8,10 @@ import com.yomahub.liteflow.enums.LiteFlowMethodEnum;
 import com.yomahub.liteflow.enums.NodeTypeEnum;
 
 @LiteflowComponent("ifn1")
-@LiteflowCmpDefine(NodeTypeEnum.IF)
+@LiteflowCmpDefine(NodeTypeEnum.BOOLEAN)
 public class IfCmp1 {
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_IF)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN)
     public boolean processIf(NodeComponent bindCmp) throws Exception {
         return true;
     }

+ 4 - 3
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/fallback/cmp/IfCmp2.java

@@ -5,15 +5,16 @@ import com.yomahub.liteflow.annotation.LiteflowCmpDefine;
 import com.yomahub.liteflow.annotation.LiteflowComponent;
 import com.yomahub.liteflow.annotation.LiteflowMethod;
 import com.yomahub.liteflow.core.NodeComponent;
+import com.yomahub.liteflow.enums.BooleanTypeEnum;
 import com.yomahub.liteflow.enums.LiteFlowMethodEnum;
 import com.yomahub.liteflow.enums.NodeTypeEnum;
 
 @LiteflowComponent("ifn2")
-@LiteflowCmpDefine(NodeTypeEnum.IF)
-@FallbackCmp
+@LiteflowCmpDefine(NodeTypeEnum.BOOLEAN)
+@FallbackCmp(BooleanTypeEnum.IF)
 public class IfCmp2 {
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_IF)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN)
     public boolean processIf(NodeComponent bindCmp) throws Exception {
         return false;
     }

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/fallback/cmp/WhileCmp1.java

@@ -11,14 +11,14 @@ import java.util.HashSet;
 import java.util.Set;
 
 @LiteflowComponent("wn1")
-@LiteflowCmpDefine(NodeTypeEnum.WHILE)
+@LiteflowCmpDefine(NodeTypeEnum.BOOLEAN)
 public class WhileCmp1 {
     private int count = 0;
 
     // 执行过的 chain
     Set<String> executedChain = new HashSet<>();
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_WHILE)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN)
     public boolean processWhile(NodeComponent bindCmp) throws Exception {
         // 判断是否切换了 chain
         if (!executedChain.contains(bindCmp.getCurrChainId())) {

+ 4 - 3
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/fallback/cmp/WhileCmp2.java

@@ -5,15 +5,16 @@ import com.yomahub.liteflow.annotation.LiteflowCmpDefine;
 import com.yomahub.liteflow.annotation.LiteflowComponent;
 import com.yomahub.liteflow.annotation.LiteflowMethod;
 import com.yomahub.liteflow.core.NodeComponent;
+import com.yomahub.liteflow.enums.BooleanTypeEnum;
 import com.yomahub.liteflow.enums.LiteFlowMethodEnum;
 import com.yomahub.liteflow.enums.NodeTypeEnum;
 
 @LiteflowComponent("wn2")
-@LiteflowCmpDefine(NodeTypeEnum.WHILE)
-@FallbackCmp
+@LiteflowCmpDefine(NodeTypeEnum.BOOLEAN)
+@FallbackCmp(BooleanTypeEnum.WHILE)
 public class WhileCmp2 {
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_WHILE)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN)
     public boolean processWhile(NodeComponent bindCmp) throws Exception {
         return false;
     }

+ 1 - 1
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/ifelse/cmp/X1Cmp.java

@@ -16,7 +16,7 @@ import org.springframework.stereotype.Component;
 @Component("x1")
 public class X1Cmp {
 
-	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_IF, nodeType = NodeTypeEnum.IF)
+	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeType = NodeTypeEnum.BOOLEAN)
 	public boolean processIf(NodeComponent bindCmp) throws Exception {
 		return Boolean.parseBoolean(bindCmp.getTag());
 	}

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/iterator/cmp/BCmp.java

@@ -3,17 +3,17 @@ package com.yomahub.liteflow.test.iterator.cmp;
 
 import com.yomahub.liteflow.annotation.LiteflowCmpDefine;
 import com.yomahub.liteflow.annotation.LiteflowMethod;
-import com.yomahub.liteflow.core.NodeBreakComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import com.yomahub.liteflow.core.NodeComponent;
 import com.yomahub.liteflow.enums.LiteFlowMethodEnum;
 import com.yomahub.liteflow.enums.NodeTypeEnum;
 import org.springframework.stereotype.Component;
 
 @Component("b")
-@LiteflowCmpDefine(NodeTypeEnum.BREAK)
+@LiteflowCmpDefine(NodeTypeEnum.BOOLEAN)
 public class BCmp {
 
-	@LiteflowMethod(LiteFlowMethodEnum.PROCESS_BREAK)
+	@LiteflowMethod(LiteFlowMethodEnum.PROCESS_BOOLEAN)
 	public boolean processBreak(NodeComponent bindCmp) throws Exception {
 		return bindCmp.getLoopIndex() == 1;
 	}

+ 1 - 1
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/loop/cmp/YCmp.java

@@ -10,7 +10,7 @@ import com.yomahub.liteflow.slot.DefaultContext;
 @LiteflowComponent("y")
 public class YCmp {
 
-	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BREAK, nodeType = NodeTypeEnum.BREAK)
+	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeType = NodeTypeEnum.BOOLEAN)
 	public boolean processBreak(NodeComponent bindCmp) throws Exception {
 		DefaultContext context = bindCmp.getFirstContextBean();
 		int count = context.getData("test");

+ 1 - 1
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/loop/cmp/ZCmp.java

@@ -10,7 +10,7 @@ import com.yomahub.liteflow.slot.DefaultContext;
 @LiteflowComponent("z")
 public class ZCmp {
 
-	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_WHILE, nodeType = NodeTypeEnum.WHILE)
+	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeType = NodeTypeEnum.BOOLEAN)
 	public boolean processWhile(NodeComponent bindCmp) throws Exception {
 		DefaultContext context = bindCmp.getFirstContextBean();
 		String key = "test";

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/maxWaitMilliseconds/cmp/FCmp.java

@@ -8,10 +8,10 @@ import com.yomahub.liteflow.enums.LiteFlowMethodEnum;
 import com.yomahub.liteflow.enums.NodeTypeEnum;
 
 @LiteflowComponent("f")
-@LiteflowCmpDefine(NodeTypeEnum.IF)
+@LiteflowCmpDefine(NodeTypeEnum.BOOLEAN)
 public class FCmp {
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_IF, nodeType = NodeTypeEnum.IF)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processIf(NodeComponent bindCmp) throws Exception {
         return true;
     }

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/maxWaitMilliseconds/cmp/WCmp.java

@@ -11,14 +11,14 @@ import java.util.HashSet;
 import java.util.Set;
 
 @LiteflowComponent("w")
-@LiteflowCmpDefine(NodeTypeEnum.WHILE)
+@LiteflowCmpDefine(NodeTypeEnum.BOOLEAN)
 public class WCmp {
     private int count = 0;
 
     // 执行过的 chain
     Set<String> executedChain = new HashSet<>();
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_WHILE, nodeType = NodeTypeEnum.WHILE)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processWhile(NodeComponent bindCmp) throws Exception {
         // 判断是否切换了 chain
         if (!executedChain.contains(bindCmp.getCurrChainId())) {

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/maxWaitSeconds/cmp/FCmp.java

@@ -8,10 +8,10 @@ import com.yomahub.liteflow.enums.LiteFlowMethodEnum;
 import com.yomahub.liteflow.enums.NodeTypeEnum;
 
 @LiteflowComponent("f")
-@LiteflowCmpDefine(NodeTypeEnum.IF)
+@LiteflowCmpDefine(NodeTypeEnum.BOOLEAN)
 public class FCmp {
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_IF, nodeType = NodeTypeEnum.IF)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processIf(NodeComponent bindCmp) throws Exception {
         return true;
     }

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/maxWaitSeconds/cmp/WCmp.java

@@ -11,14 +11,14 @@ import java.util.HashSet;
 import java.util.Set;
 
 @LiteflowComponent("w")
-@LiteflowCmpDefine(NodeTypeEnum.WHILE)
+@LiteflowCmpDefine(NodeTypeEnum.BOOLEAN)
 public class WCmp {
     private int count = 0;
 
     // 执行过的 chain
     Set<String> executedChain = new HashSet<>();
 
-    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_WHILE, nodeType = NodeTypeEnum.WHILE)
+    @LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeType = NodeTypeEnum.BOOLEAN)
     public boolean processWhile(NodeComponent bindCmp) throws Exception {
         // 判断是否切换了 chain
         if (!executedChain.contains(bindCmp.getCurrChainId())) {

+ 1 - 1
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/parallelLoop/cmp/YCmp.java

@@ -10,7 +10,7 @@ import com.yomahub.liteflow.slot.DefaultContext;
 @LiteflowComponent("y")
 public class YCmp {
 
-	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BREAK, nodeType = NodeTypeEnum.BREAK)
+	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeType = NodeTypeEnum.BOOLEAN)
 	public boolean processBreak(NodeComponent bindCmp) throws Exception {
 		DefaultContext context = bindCmp.getFirstContextBean();
 		int count = 0;

+ 1 - 1
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/parallelLoop/cmp/ZCmp.java

@@ -10,7 +10,7 @@ import com.yomahub.liteflow.slot.DefaultContext;
 @LiteflowComponent("z")
 public class ZCmp {
 
-	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_WHILE, nodeType = NodeTypeEnum.WHILE)
+	@LiteflowMethod(value = LiteFlowMethodEnum.PROCESS_BOOLEAN, nodeType = NodeTypeEnum.BOOLEAN)
 	public boolean processWhile(NodeComponent bindCmp) throws Exception {
 		DefaultContext context = bindCmp.getFirstContextBean();
 		String key = "test";

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/retry/cmp/FCmp.java

@@ -1,13 +1,13 @@
 package com.yomahub.liteflow.test.retry.cmp;
 
 import com.yomahub.liteflow.annotation.LiteflowComponent;
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
 @LiteflowComponent("f")
-public class FCmp extends NodeIfComponent {
+public class FCmp extends NodeBooleanComponent {
     int flag = 0;
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         System.out.println("FCmp executed!");
         flag ++;
         if(flag < 4) throw new RuntimeException();

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/retry/cmp/NCmp.java

@@ -1,14 +1,14 @@
 package com.yomahub.liteflow.test.retry.cmp;
 
 import com.yomahub.liteflow.annotation.LiteflowComponent;
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
 @LiteflowComponent("n")
-public class NCmp extends NodeWhileComponent {
+public class NCmp extends NodeBooleanComponent {
     int flag = 0;
 
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         flag ++;
         System.out.println("NCmp executed!");
         if(flag < 4) throw new RuntimeException();

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/rollback/cmp/HCmp.java

@@ -1,13 +1,13 @@
 package com.yomahub.liteflow.test.rollback.cmp;
 
-import com.yomahub.liteflow.core.NodeBreakComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import org.springframework.stereotype.Component;
 
 @Component("h")
-public class HCmp extends NodeBreakComponent {
+public class HCmp extends NodeBooleanComponent {
 
     @Override
-    public boolean processBreak() throws Exception {
+    public boolean processBoolean() throws Exception {
         System.out.println("HCmp executed!");
         throw new RuntimeException();
     }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/rollback/cmp/WCmp.java

@@ -1,13 +1,13 @@
 package com.yomahub.liteflow.test.rollback.cmp;
 
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import org.springframework.stereotype.Component;
 
 @Component("w")
-public class WCmp extends NodeWhileComponent {
+public class WCmp extends NodeBooleanComponent {
 
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         System.out.println("WCmp executed!");
         return true;
     }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-declare-springboot/src/test/java/com/yomahub/liteflow/test/rollback/cmp/XCmp.java

@@ -1,12 +1,12 @@
 package com.yomahub.liteflow.test.rollback.cmp;
 
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import org.springframework.stereotype.Component;
 
 @Component("x")
-public class XCmp extends NodeIfComponent {
+public class XCmp extends NodeBooleanComponent {
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         System.out.println("XCmp executed!");
         return true;
     }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/abstractChain/cmp/CCmp.java

@@ -1,11 +1,11 @@
 package com.yomahub.liteflow.test.abstractChain.cmp;
 
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
 
-public class CCmp extends NodeIfComponent {
+public class CCmp extends NodeBooleanComponent {
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         //do your biz
         return true;
     }

+ 5 - 4
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/fallback/cmp/BreakCmp.java

@@ -1,13 +1,14 @@
 package com.yomahub.liteflow.test.fallback.cmp;
 
 import com.yomahub.liteflow.annotation.FallbackCmp;
-import com.yomahub.liteflow.core.NodeBreakComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
+import com.yomahub.liteflow.enums.BooleanTypeEnum;
 
-@FallbackCmp
-public class BreakCmp extends NodeBreakComponent {
+@FallbackCmp(BooleanTypeEnum.BREAK)
+public class BreakCmp extends NodeBooleanComponent {
 
     @Override
-    public boolean processBreak() throws Exception {
+    public boolean processBoolean() throws Exception {
         return true;
     }
 }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/fallback/cmp/IfCmp1.java

@@ -1,11 +1,11 @@
 package com.yomahub.liteflow.test.fallback.cmp;
 
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
-public class IfCmp1 extends NodeIfComponent {
+public class IfCmp1 extends NodeBooleanComponent {
 
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         return true;
     }
 }

+ 5 - 4
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/fallback/cmp/IfCmp2.java

@@ -1,13 +1,14 @@
 package com.yomahub.liteflow.test.fallback.cmp;
 
 import com.yomahub.liteflow.annotation.FallbackCmp;
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
+import com.yomahub.liteflow.enums.BooleanTypeEnum;
 
-@FallbackCmp
-public class IfCmp2 extends NodeIfComponent {
+@FallbackCmp(BooleanTypeEnum.IF)
+public class IfCmp2 extends NodeBooleanComponent {
 
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         return false;
     }
 }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/fallback/cmp/WhileCmp1.java

@@ -1,18 +1,18 @@
 package com.yomahub.liteflow.test.fallback.cmp;
 
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
 import java.util.HashSet;
 import java.util.Set;
 
-public class WhileCmp1 extends NodeWhileComponent {
+public class WhileCmp1 extends NodeBooleanComponent {
     private int count = 0;
 
     // 执行过的 chain
     Set<String> executedChain = new HashSet<>();
 
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         // 判断是否切换了 chain
         if (!executedChain.contains(this.getCurrChainId())) {
             count = 0;

+ 5 - 4
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/fallback/cmp/WhileCmp2.java

@@ -1,13 +1,14 @@
 package com.yomahub.liteflow.test.fallback.cmp;
 
 import com.yomahub.liteflow.annotation.FallbackCmp;
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
+import com.yomahub.liteflow.enums.BooleanTypeEnum;
 
-@FallbackCmp
-public class WhileCmp2 extends NodeWhileComponent {
+@FallbackCmp(BooleanTypeEnum.WHILE)
+public class WhileCmp2 extends NodeBooleanComponent {
     
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         return false;
     }
 }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/ifelse/cmp/X1Cmp.java

@@ -7,12 +7,12 @@
  */
 package com.yomahub.liteflow.test.ifelse.cmp;
 
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
-public class X1Cmp extends NodeIfComponent {
+public class X1Cmp extends NodeBooleanComponent {
 
 	@Override
-	public boolean processIf() throws Exception {
+	public boolean processBoolean() throws Exception {
 		return Boolean.parseBoolean(this.getTag());
 	}
 

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/iterator/cmp/BCmp.java

@@ -1,12 +1,12 @@
 
 package com.yomahub.liteflow.test.iterator.cmp;
 
-import com.yomahub.liteflow.core.NodeBreakComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
-public class BCmp extends NodeBreakComponent {
+public class BCmp extends NodeBooleanComponent {
 
 	@Override
-	public boolean processBreak() throws Exception {
+	public boolean processBoolean() throws Exception {
 		return this.getLoopIndex() == 1;
 	}
 

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/loop/cmp/YCmp.java

@@ -1,12 +1,12 @@
 package com.yomahub.liteflow.test.loop.cmp;
 
-import com.yomahub.liteflow.core.NodeBreakComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import com.yomahub.liteflow.slot.DefaultContext;
 
-public class YCmp extends NodeBreakComponent {
+public class YCmp extends NodeBooleanComponent {
 
 	@Override
-	public boolean processBreak() throws Exception {
+	public boolean processBoolean() throws Exception {
 		DefaultContext context = this.getFirstContextBean();
 		int count = context.getData("test");
 		return count > 3;

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/loop/cmp/ZCmp.java

@@ -1,12 +1,12 @@
 package com.yomahub.liteflow.test.loop.cmp;
 
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import com.yomahub.liteflow.slot.DefaultContext;
 
-public class ZCmp extends NodeWhileComponent {
+public class ZCmp extends NodeBooleanComponent {
 
 	@Override
-	public boolean processWhile() throws Exception {
+	public boolean processBoolean() throws Exception {
 		DefaultContext context = this.getFirstContextBean();
 		String key = "test";
 		if (context.hasData(key)) {

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/maxWaitMilliseconds/cmp/FCmp.java

@@ -1,10 +1,10 @@
 package com.yomahub.liteflow.test.maxWaitMilliseconds.cmp;
 
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
-public class FCmp extends NodeIfComponent {
+public class FCmp extends NodeBooleanComponent {
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         return true;
     }
 }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/maxWaitMilliseconds/cmp/WCmp.java

@@ -1,18 +1,18 @@
 package com.yomahub.liteflow.test.maxWaitMilliseconds.cmp;
 
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
 import java.util.HashSet;
 import java.util.Set;
 
-public class WCmp extends NodeWhileComponent {
+public class WCmp extends NodeBooleanComponent {
     private int count = 0;
 
     // 执行过的 chain
     Set<String> executedChain = new HashSet<>();
 
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         // 判断是否切换了 chain
         if (!executedChain.contains(this.getCurrChainId())) {
             count = 0;

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/maxWaitSeconds/cmp/FCmp.java

@@ -1,10 +1,10 @@
 package com.yomahub.liteflow.test.maxWaitSeconds.cmp;
 
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
-public class FCmp extends NodeIfComponent {
+public class FCmp extends NodeBooleanComponent {
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         return true;
     }
 }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/maxWaitSeconds/cmp/WCmp.java

@@ -1,18 +1,18 @@
 package com.yomahub.liteflow.test.maxWaitSeconds.cmp;
 
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
 import java.util.HashSet;
 import java.util.Set;
 
-public class WCmp extends NodeWhileComponent {
+public class WCmp extends NodeBooleanComponent {
     private int count = 0;
 
     // 执行过的 chain
     Set<String> executedChain = new HashSet<>();
 
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         // 判断是否切换了 chain
         if (!executedChain.contains(this.getCurrChainId())) {
             count = 0;

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/parallelLoop/cmp/YCmp.java

@@ -1,12 +1,12 @@
 package com.yomahub.liteflow.test.parallelLoop.cmp;
 
-import com.yomahub.liteflow.core.NodeBreakComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import com.yomahub.liteflow.slot.DefaultContext;
 
-public class YCmp extends NodeBreakComponent {
+public class YCmp extends NodeBooleanComponent {
 
 	@Override
-	public boolean processBreak() throws Exception {
+	public boolean processBoolean() throws Exception {
 		DefaultContext context = this.getFirstContextBean();
 		int count = 0;
 		if(context.hasData("test")) {

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/parallelLoop/cmp/ZCmp.java

@@ -1,12 +1,12 @@
 package com.yomahub.liteflow.test.parallelLoop.cmp;
 
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import com.yomahub.liteflow.slot.DefaultContext;
 
-public class ZCmp extends NodeWhileComponent {
+public class ZCmp extends NodeBooleanComponent {
 
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         DefaultContext context = this.getFirstContextBean();
         String key = "test";
         if (context.hasData(key)) {

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/retry/cmp/FCmp.java

@@ -1,12 +1,12 @@
 package com.yomahub.liteflow.test.retry.cmp;
 
 
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
-public class FCmp extends NodeIfComponent {
+public class FCmp extends NodeBooleanComponent {
     int flag = 0;
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         System.out.println("FCmp executed!");
         flag ++;
         if(flag < 4) throw new RuntimeException();

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/retry/cmp/NCmp.java

@@ -1,13 +1,13 @@
 package com.yomahub.liteflow.test.retry.cmp;
 
 
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
-public class NCmp extends NodeWhileComponent {
+public class NCmp extends NodeBooleanComponent {
     int flag = 0;
 
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         flag ++;
         System.out.println("NCmp executed!");
         if(flag < 4) throw new RuntimeException();

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/rollback/cmp/HCmp.java

@@ -1,11 +1,11 @@
 package com.yomahub.liteflow.test.rollback.cmp;
 
-import com.yomahub.liteflow.core.NodeBreakComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
-public class HCmp extends NodeBreakComponent {
+public class HCmp extends NodeBooleanComponent {
 
     @Override
-    public boolean processBreak() throws Exception {
+    public boolean processBoolean() throws Exception {
         System.out.println("HCmp executed!");
         throw new RuntimeException();
     }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/rollback/cmp/WCmp.java

@@ -1,11 +1,11 @@
 package com.yomahub.liteflow.test.rollback.cmp;
 
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
-public class WCmp extends NodeWhileComponent {
+public class WCmp extends NodeBooleanComponent {
 
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         System.out.println("WCmp executed!");
         return true;
     }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-nospring/src/test/java/com/yomahub/liteflow/test/rollback/cmp/XCmp.java

@@ -1,10 +1,10 @@
 package com.yomahub.liteflow.test.rollback.cmp;
 
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
-public class XCmp extends NodeIfComponent {
+public class XCmp extends NodeBooleanComponent {
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         System.out.println("XCmp executed!");
         return true;
     }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-script-graaljs-springboot/src/test/java/com/yomahub/liteflow/test/script/graaljs/getnodes/cmp/FCmp.java

@@ -1,12 +1,12 @@
 package com.yomahub.liteflow.test.script.graaljs.getnodes.cmp;
 
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import org.springframework.stereotype.Component;
 
 @Component("f")
-public class FCmp extends NodeIfComponent {
+public class FCmp extends NodeBooleanComponent {
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         return true;
     }
 }

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-script-graaljs-springboot/src/test/resources/getnodes/flow.xml

@@ -19,13 +19,13 @@
             ]]>
         </node>
 
-        <node id="x" name="条件循环脚本" type="while_script" language="js">
+        <node id="x" name="条件循环脚本" type="boolean_script" language="js">
             <![CDATA[
                 return true;
             ]]>
         </node>
 
-        <node id="y" name="退出循环脚本" type="break_script" language="js">
+        <node id="y" name="退出循环脚本" type="boolean_script" language="js">
             <![CDATA[
                 return true;
             ]]>

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-script-graaljs-springboot/src/test/resources/ifelse/flow.xml

@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <flow>
     <nodes>
-        <node id="x0" type="if_script" language="js">
+        <node id="x0" type="boolean_script" language="js">
             <![CDATA[
                 return true;
             ]]>
         </node>
 
-        <node id="x1" type="if_script" language="js">
+        <node id="x1" type="boolean_script" language="js">
             <![CDATA[
                 return false;
             ]]>

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-script-graaljs-springboot/src/test/resources/loop/flow.xml

@@ -8,14 +8,14 @@
             ]]>
         </node>
 
-        <node id="y" type="break_script" language="js">
+        <node id="y" type="boolean_script" language="js">
             <![CDATA[
                 var count = defaultContext.getData("test");
                 return count > 3;
             ]]>
         </node>
 
-        <node id="z" type="while_script" language="js">
+        <node id="z" type="boolean_script" language="js">
             <![CDATA[
                 var key = "test";
                 if (defaultContext.hasData(key)){

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-script-groovy-springboot/src/test/resources/ifelse/flow.el.xml

@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <flow>
     <nodes>
-        <node id="x0" type="if_script" language="groovy">
+        <node id="x0" type="boolean_script" language="groovy">
             <![CDATA[
                 return true
             ]]>
         </node>
 
-        <node id="x1" type="if_script" language="groovy">
+        <node id="x1" type="boolean_script" language="groovy">
             <![CDATA[
                 return false
             ]]>

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-script-groovy-springboot/src/test/resources/loop/flow.xml

@@ -8,14 +8,14 @@
             ]]>
         </node>
 
-        <node id="y" type="break_script" language="groovy">
+        <node id="y" type="boolean_script" language="groovy">
             <![CDATA[
                 def count = defaultContext.getData("test")
                 return count > 3
             ]]>
         </node>
 
-        <node id="z" type="while_script" language="groovy">
+        <node id="z" type="boolean_script" language="groovy">
             <![CDATA[
                 def key = "test"
                 if (defaultContext.hasData(key)){

+ 1 - 1
liteflow-testcase-el/liteflow-testcase-el-script-groovy-springboot/src/test/resources/scriptOrder/flow1.xml

@@ -2,7 +2,7 @@
 <!DOCTYPE flow PUBLIC  "liteflow" "liteflow.dtd">
 <flow>
     <nodes>
-        <node id="s1" language="groovy" type="if_script">
+        <node id="s1" language="groovy" type="boolean_script">
             <![CDATA[
             System.out.println("Groovy 脚本1 被调用。")
             return false

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-script-javascript-springboot/src/test/java/com/yomahub/liteflow/test/script/javascript/getnodes/cmp/FCmp.java

@@ -1,12 +1,12 @@
 package com.yomahub.liteflow.test.script.javascript.getnodes.cmp;
 
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import org.springframework.stereotype.Component;
 
 @Component("f")
-public class FCmp extends NodeIfComponent {
+public class FCmp extends NodeBooleanComponent {
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         return true;
     }
 }

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-script-javascript-springboot/src/test/resources/getnodes/flow.xml

@@ -19,13 +19,13 @@
             ]]>
         </node>
 
-        <node id="x" name="条件循环脚本" type="while_script" language="js">
+        <node id="x" name="条件循环脚本" type="boolean_script" language="js">
             <![CDATA[
                 return true;
             ]]>
         </node>
 
-        <node id="y" name="退出循环脚本" type="break_script" language="js">
+        <node id="y" name="退出循环脚本" type="boolean_script" language="js">
             <![CDATA[
                 return true;
             ]]>

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-script-javascript-springboot/src/test/resources/ifelse/flow.xml

@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <flow>
     <nodes>
-        <node id="x0" type="if_script" language="js">
+        <node id="x0" type="boolean_script" language="js">
             <![CDATA[
                 return true;
             ]]>
         </node>
 
-        <node id="x1" type="if_script" language="js">
+        <node id="x1" type="boolean_script" language="js">
             <![CDATA[
                 return false;
             ]]>

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-script-javascript-springboot/src/test/resources/loop/flow.xml

@@ -8,14 +8,14 @@
             ]]>
         </node>
 
-        <node id="y" type="break_script" language="js">
+        <node id="y" type="boolean_script" language="js">
             <![CDATA[
                 var count = defaultContext.getData("test");
                 return count > 3;
             ]]>
         </node>
 
-        <node id="z" type="while_script" language="js">
+        <node id="z" type="boolean_script" language="js">
             <![CDATA[
                 var key = "test";
                 if (defaultContext.hasData(key)){

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-script-qlexpress-springboot/src/test/resources/ifelse/flow.el.xml

@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <flow>
     <nodes>
-        <node id="x0" type="if_script">
+        <node id="x0" type="boolean_script">
             <![CDATA[
                 return true;
             ]]>
         </node>
 
-        <node id="x1" type="if_script">
+        <node id="x1" type="boolean_script">
             <![CDATA[
                 return false;
             ]]>

+ 2 - 2
liteflow-testcase-el/liteflow-testcase-el-script-qlexpress-springboot/src/test/resources/loop/flow.xml

@@ -8,14 +8,14 @@
             ]]>
         </node>
 
-        <node id="y" type="break_script">
+        <node id="y" type="boolean_script">
             <![CDATA[
                 count = defaultContext.getData("test");
                 return count > 3;
             ]]>
         </node>
 
-        <node id="z" type="while_script">
+        <node id="z" type="boolean_script">
             <![CDATA[
                 key = "test";
                 if (defaultContext.hasData(key)){

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/abstractChain/cmp/CCmp.java

@@ -1,13 +1,13 @@
 package com.yomahub.liteflow.test.abstractChain.cmp;
 
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import org.noear.solon.annotation.Component;
 
 
 @Component("c")
-public class CCmp extends NodeIfComponent {
+public class CCmp extends NodeBooleanComponent {
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         //do your biz
         return true;
     }

+ 5 - 4
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/fallback/cmp/BreakCmp.java

@@ -2,14 +2,15 @@ package com.yomahub.liteflow.test.fallback.cmp;
 
 import com.yomahub.liteflow.annotation.FallbackCmp;
 import com.yomahub.liteflow.annotation.LiteflowComponent;
-import com.yomahub.liteflow.core.NodeBreakComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
+import com.yomahub.liteflow.enums.BooleanTypeEnum;
 
 @LiteflowComponent("bn1")
-@FallbackCmp
-public class BreakCmp extends NodeBreakComponent {
+@FallbackCmp(BooleanTypeEnum.BREAK)
+public class BreakCmp extends NodeBooleanComponent {
 
     @Override
-    public boolean processBreak() throws Exception {
+    public boolean processBoolean() throws Exception {
         return true;
     }
 }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/fallback/cmp/IfCmp1.java

@@ -1,13 +1,13 @@
 package com.yomahub.liteflow.test.fallback.cmp;
 
 import com.yomahub.liteflow.annotation.LiteflowComponent;
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
 @LiteflowComponent("ifn1")
-public class IfCmp1 extends NodeIfComponent {
+public class IfCmp1 extends NodeBooleanComponent {
 
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         return true;
     }
 }

+ 5 - 4
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/fallback/cmp/IfCmp2.java

@@ -2,14 +2,15 @@ package com.yomahub.liteflow.test.fallback.cmp;
 
 import com.yomahub.liteflow.annotation.FallbackCmp;
 import com.yomahub.liteflow.annotation.LiteflowComponent;
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
+import com.yomahub.liteflow.enums.BooleanTypeEnum;
 
 @LiteflowComponent("ifn2")
-@FallbackCmp
-public class IfCmp2 extends NodeIfComponent {
+@FallbackCmp(BooleanTypeEnum.IF)
+public class IfCmp2 extends NodeBooleanComponent {
 
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         return false;
     }
 }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/fallback/cmp/WhileCmp1.java

@@ -1,20 +1,20 @@
 package com.yomahub.liteflow.test.fallback.cmp;
 
 import com.yomahub.liteflow.annotation.LiteflowComponent;
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
 import java.util.HashSet;
 import java.util.Set;
 
 @LiteflowComponent("wn1")
-public class WhileCmp1 extends NodeWhileComponent {
+public class WhileCmp1 extends NodeBooleanComponent {
     private int count = 0;
 
     // 执行过的 chain
     Set<String> executedChain = new HashSet<>();
 
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         // 判断是否切换了 chain
         if (!executedChain.contains(this.getCurrChainId())) {
             count = 0;

+ 5 - 4
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/fallback/cmp/WhileCmp2.java

@@ -2,14 +2,15 @@ package com.yomahub.liteflow.test.fallback.cmp;
 
 import com.yomahub.liteflow.annotation.FallbackCmp;
 import com.yomahub.liteflow.annotation.LiteflowComponent;
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
+import com.yomahub.liteflow.enums.BooleanTypeEnum;
 
 @LiteflowComponent("wn2")
-@FallbackCmp
-public class WhileCmp2 extends NodeWhileComponent {
+@FallbackCmp(BooleanTypeEnum.WHILE)
+public class WhileCmp2 extends NodeBooleanComponent {
     
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         return false;
     }
 }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/ifelse/cmp/X1Cmp.java

@@ -7,14 +7,14 @@
  */
 package com.yomahub.liteflow.test.ifelse.cmp;
 
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import org.noear.solon.annotation.Component;
 
 @Component("x1")
-public class X1Cmp extends NodeIfComponent {
+public class X1Cmp extends NodeBooleanComponent {
 
 	@Override
-	public boolean processIf() throws Exception {
+	public boolean processBoolean() throws Exception {
 		return Boolean.parseBoolean(this.getTag());
 	}
 

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/loop/cmp/YCmp.java

@@ -1,15 +1,15 @@
 package com.yomahub.liteflow.test.loop.cmp;
 
 import com.yomahub.liteflow.annotation.LiteflowComponent;
-import com.yomahub.liteflow.core.NodeBreakComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import com.yomahub.liteflow.core.NodeForComponent;
 import com.yomahub.liteflow.slot.DefaultContext;
 
 @LiteflowComponent("y")
-public class YCmp extends NodeBreakComponent {
+public class YCmp extends NodeBooleanComponent {
 
 	@Override
-	public boolean processBreak() throws Exception {
+	public boolean processBoolean() throws Exception {
 		DefaultContext context = this.getFirstContextBean();
 		int count = context.getData("test");
 		return count > 3;

+ 4 - 4
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/loop/cmp/ZCmp.java

@@ -1,15 +1,15 @@
 package com.yomahub.liteflow.test.loop.cmp;
 
 import com.yomahub.liteflow.annotation.LiteflowComponent;
-import com.yomahub.liteflow.core.NodeBreakComponent;
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import com.yomahub.liteflow.slot.DefaultContext;
 
 @LiteflowComponent("z")
-public class ZCmp extends NodeWhileComponent {
+public class ZCmp extends NodeBooleanComponent {
 
 	@Override
-	public boolean processWhile() throws Exception {
+	public boolean processBoolean() throws Exception {
 		DefaultContext context = this.getFirstContextBean();
 		String key = "test";
 		if (context.hasData(key)) {

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/maxWaitMilliseconds/cmp/FCmp.java

@@ -1,12 +1,12 @@
 package com.yomahub.liteflow.test.maxWaitMilliseconds.cmp;
 
 import com.yomahub.liteflow.annotation.LiteflowComponent;
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
 @LiteflowComponent("f")
-public class FCmp extends NodeIfComponent {
+public class FCmp extends NodeBooleanComponent {
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         return true;
     }
 }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/maxWaitMilliseconds/cmp/WCmp.java

@@ -1,20 +1,20 @@
 package com.yomahub.liteflow.test.maxWaitMilliseconds.cmp;
 
 import com.yomahub.liteflow.annotation.LiteflowComponent;
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
 import java.util.HashSet;
 import java.util.Set;
 
 @LiteflowComponent("w")
-public class WCmp extends NodeWhileComponent {
+public class WCmp extends NodeBooleanComponent {
     private int count = 0;
 
     // 执行过的 chain
     Set<String> executedChain = new HashSet<>();
 
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         // 判断是否切换了 chain
         if (!executedChain.contains(this.getCurrChainId())) {
             count = 0;

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/maxWaitSeconds/cmp/FCmp.java

@@ -1,12 +1,12 @@
 package com.yomahub.liteflow.test.maxWaitSeconds.cmp;
 
 import com.yomahub.liteflow.annotation.LiteflowComponent;
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
 @LiteflowComponent("f")
-public class FCmp extends NodeIfComponent {
+public class FCmp extends NodeBooleanComponent {
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         return true;
     }
 }

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/maxWaitSeconds/cmp/WCmp.java

@@ -1,20 +1,20 @@
 package com.yomahub.liteflow.test.maxWaitSeconds.cmp;
 
 import com.yomahub.liteflow.annotation.LiteflowComponent;
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 
 import java.util.HashSet;
 import java.util.Set;
 
 @LiteflowComponent("w")
-public class WCmp extends NodeWhileComponent {
+public class WCmp extends NodeBooleanComponent {
     private int count = 0;
 
     // 执行过的 chain
     Set<String> executedChain = new HashSet<>();
 
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         // 判断是否切换了 chain
         if (!executedChain.contains(this.getCurrChainId())) {
             count = 0;

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/parallelLoop/cmp/YCmp.java

@@ -1,14 +1,14 @@
 package com.yomahub.liteflow.test.parallelLoop.cmp;
 
-import com.yomahub.liteflow.core.NodeBreakComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import com.yomahub.liteflow.slot.DefaultContext;
 import org.noear.solon.annotation.Component;
 
 @Component("y")
-public class YCmp extends NodeBreakComponent {
+public class YCmp extends NodeBooleanComponent {
 
 	@Override
-	public boolean processBreak() throws Exception {
+	public boolean processBoolean() throws Exception {
 		DefaultContext context = this.getFirstContextBean();
 		int count = 0;
 		if(context.hasData("test")) {

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/parallelLoop/cmp/ZCmp.java

@@ -1,14 +1,14 @@
 package com.yomahub.liteflow.test.parallelLoop.cmp;
 
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import com.yomahub.liteflow.slot.DefaultContext;
 import org.noear.solon.annotation.Component;
 
 @Component("z")
-public class ZCmp extends NodeWhileComponent {
+public class ZCmp extends NodeBooleanComponent {
 
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         DefaultContext context = this.getFirstContextBean();
         String key = "test";
         if (context.hasData(key)) {

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/retry/cmp/FCmp.java

@@ -1,13 +1,13 @@
 package com.yomahub.liteflow.test.retry.cmp;
 
-import com.yomahub.liteflow.core.NodeIfComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import org.noear.solon.annotation.Component;
 
 @Component("f")
-public class FCmp extends NodeIfComponent {
+public class FCmp extends NodeBooleanComponent {
     int flag = 0;
     @Override
-    public boolean processIf() throws Exception {
+    public boolean processBoolean() throws Exception {
         System.out.println("FCmp executed!");
         flag ++;
         if(flag < 4) throw new RuntimeException();

+ 3 - 3
liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/retry/cmp/NCmp.java

@@ -1,14 +1,14 @@
 package com.yomahub.liteflow.test.retry.cmp;
 
-import com.yomahub.liteflow.core.NodeWhileComponent;
+import com.yomahub.liteflow.core.NodeBooleanComponent;
 import org.noear.solon.annotation.Component;
 
 @Component("n")
-public class NCmp extends NodeWhileComponent {
+public class NCmp extends NodeBooleanComponent {
     int flag = 0;
 
     @Override
-    public boolean processWhile() throws Exception {
+    public boolean processBoolean() throws Exception {
         flag ++;
         System.out.println("NCmp executed!");
         if(flag < 4) throw new RuntimeException();

Některé soubory nejsou zobrazeny, neboť je v těchto rozdílových datech změněno mnoho souborů