diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/AliasFor.java b/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/AliasFor.java
index 06b3c58c4..de149a409 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/AliasFor.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/AliasFor.java
@@ -1,7 +1,9 @@
package com.yomahub.liteflow.annotation;
import java.lang.annotation.*;
-
+/**
+ * @author Bryan.Zhang
+ */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
@Documented
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/LiteflowCmpDefine.java b/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/LiteflowCmpDefine.java
index e3df930db..65cd2c4ec 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/LiteflowCmpDefine.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/LiteflowCmpDefine.java
@@ -3,7 +3,9 @@ package com.yomahub.liteflow.annotation;
import com.yomahub.liteflow.enums.NodeTypeEnum;
import java.lang.annotation.*;
-
+/**
+ * @author Bryan.Zhang
+ */
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/LiteflowMethod.java b/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/LiteflowMethod.java
index 659b3d5b7..0c36ea8e0 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/LiteflowMethod.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/LiteflowMethod.java
@@ -5,6 +5,9 @@ import com.yomahub.liteflow.enums.NodeTypeEnum;
import java.lang.annotation.*;
+/**
+ * @author Bryan.Zhang
+ */
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@@ -13,8 +16,11 @@ public @interface LiteflowMethod {
LiteFlowMethodEnum value();
- // 节点ID,用于区分节点
- // 默认为空 则按照Spring模式下BeanName为准。
+ /**
+ * 节点ID,用于区分节点
+ * 默认为空 则按照Spring模式下BeanName为准。
+ * @return
+ */
String nodeId() default "";
/**
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/util/AnnoUtil.java b/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/util/AnnoUtil.java
index 47460d351..45e1e2382 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/util/AnnoUtil.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/annotation/util/AnnoUtil.java
@@ -11,7 +11,10 @@ import java.lang.reflect.AnnotatedElement;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
-
+/**
+ * 注解工具类
+ * @author Bryan.Zhang
+ */
public class AnnoUtil {
public static A getAnnotation(AnnotatedElement annotatedElement, Class annotationType) {
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/aop/ICmpAroundAspect.java b/liteflow-core/src/main/java/com/yomahub/liteflow/aop/ICmpAroundAspect.java
index 5c2c3dce2..b2ec45a4c 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/aop/ICmpAroundAspect.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/aop/ICmpAroundAspect.java
@@ -1,6 +1,7 @@
/**
* Title: liteflow
* Description: 轻量级的组件式流程框架
+ *
* @author Bryan.Zhang
* @email weenyc31@163.com
* @Date 2020/10/22
@@ -16,7 +17,17 @@ import com.yomahub.liteflow.slot.Slot;
*/
public interface ICmpAroundAspect {
+ /**
+ * 前置处理
+ * @param nodeId 节点ID
+ * @param slot
+ */
void beforeProcess(String nodeId, Slot slot);
+ /**
+ * 后置处理
+ * @param nodeId 节点ID
+ * @param slot
+ */
void afterProcess(String nodeId, Slot slot);
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/LiteFlowChainELBuilder.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/LiteFlowChainELBuilder.java
index 3c85ad0ba..4aee371ed 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/LiteFlowChainELBuilder.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/LiteFlowChainELBuilder.java
@@ -6,6 +6,7 @@ import com.ql.util.express.DefaultContext;
import com.ql.util.express.ExpressRunner;
import com.ql.util.express.exception.QLException;
import com.yomahub.liteflow.builder.el.operator.*;
+import com.yomahub.liteflow.common.ChainConstant;
import com.yomahub.liteflow.exception.DataNofFoundException;
import com.yomahub.liteflow.exception.ELParseException;
import com.yomahub.liteflow.exception.FlowSystemException;
@@ -31,45 +32,53 @@ public class LiteFlowChainELBuilder {
private Chain chain;
- //这是主体的Condition,不包含前置和后置
- //声明这个变量,而不是用chain.getConditionList的目的,是为了辅助平滑加载
- //虽然FlowBus里面的map都是CopyOnWrite类型的,但是在buildCondition的时候,为了平滑加载,所以不能事先把chain.getConditionList给设为空List
- //所以在这里做一个缓存,等conditionList全部build完毕后,再去一次性替换chain里面的conditionList
+ /**
+ * //这是主体的Condition,不包含前置和后置
+ * //声明这个变量,而不是用chain.getConditionList的目的,是为了辅助平滑加载
+ * //虽然FlowBus里面的map都是CopyOnWrite类型的,但是在buildCondition的时候,为了平滑加载,所以不能事先把chain.getConditionList给设为空List
+ * //所以在这里做一个缓存,等conditionList全部build完毕后,再去一次性替换chain里面的conditionList
+ */
private final List conditionList;
- //前置处理Condition,用来区别主体的Condition
+ /**
+ * 前置处理Condition,用来区别主体的Condition
+ */
private final List preConditionList;
- //后置处理Condition,用来区别主体的Condition
+ /**
+ * 后置处理Condition,用来区别主体的Condition
+ */
private final List finallyConditionList;
- //EL解析引擎
+ /**
+ * EL解析引擎
+ */
private final static ExpressRunner EXPRESS_RUNNER = new ExpressRunner();
static {
//初始化QLExpress的Runner
- EXPRESS_RUNNER.addFunction("THEN", new ThenOperator());
- EXPRESS_RUNNER.addFunction("WHEN", new WhenOperator());
- EXPRESS_RUNNER.addFunction("SWITCH", new SwitchOperator());
- EXPRESS_RUNNER.addFunction("PRE", new PreOperator());
- EXPRESS_RUNNER.addFunction("FINALLY", new FinallyOperator());
- EXPRESS_RUNNER.addFunction("IF", new IfOperator());
- EXPRESS_RUNNER.addFunctionAndClassMethod("ELSE", Object.class, new ElseOperator());
- EXPRESS_RUNNER.addFunctionAndClassMethod("ELIF", Object.class, new ElifOperator());
- EXPRESS_RUNNER.addFunctionAndClassMethod("TO", Object.class, new ToOperator());
- EXPRESS_RUNNER.addFunctionAndClassMethod("to", Object.class, new ToOperator());
- EXPRESS_RUNNER.addFunctionAndClassMethod("tag", Object.class, new TagOperator());
- EXPRESS_RUNNER.addFunctionAndClassMethod("any", Object.class, new AnyOperator());
- EXPRESS_RUNNER.addFunctionAndClassMethod("id", Object.class, new IdOperator());
- EXPRESS_RUNNER.addFunctionAndClassMethod("ignoreError", Object.class, new IgnoreErrorOperator());
- EXPRESS_RUNNER.addFunctionAndClassMethod("threadPool", Object.class, new ThreadPoolOperator());
- EXPRESS_RUNNER.addFunction("NODE", new NodeOperator());
- EXPRESS_RUNNER.addFunction("node", new NodeOperator());
- EXPRESS_RUNNER.addFunction("FOR", new ForOperator());
- EXPRESS_RUNNER.addFunction("WHILE", new WhileOperator());
- EXPRESS_RUNNER.addFunctionAndClassMethod("DO", Object.class, new DoOperator());
- EXPRESS_RUNNER.addFunctionAndClassMethod("BREAK", Object.class, new BreakOperator());
- EXPRESS_RUNNER.addFunctionAndClassMethod("data", Object.class, new DataOperator());
+ EXPRESS_RUNNER.addFunction(ChainConstant.THEN, new ThenOperator());
+ EXPRESS_RUNNER.addFunction(ChainConstant.WHEN, new WhenOperator());
+ EXPRESS_RUNNER.addFunction(ChainConstant.SWITCH, new SwitchOperator());
+ EXPRESS_RUNNER.addFunction(ChainConstant.PRE, new PreOperator());
+ EXPRESS_RUNNER.addFunction(ChainConstant.FINALLY, new FinallyOperator());
+ EXPRESS_RUNNER.addFunction(ChainConstant.IF, new IfOperator());
+ EXPRESS_RUNNER.addFunctionAndClassMethod(ChainConstant.ELSE, Object.class, new ElseOperator());
+ EXPRESS_RUNNER.addFunctionAndClassMethod(ChainConstant.ELIF, Object.class, new ElifOperator());
+ EXPRESS_RUNNER.addFunctionAndClassMethod(ChainConstant.TO, Object.class, new ToOperator());
+ EXPRESS_RUNNER.addFunctionAndClassMethod(ChainConstant.TO.toLowerCase(), Object.class, new ToOperator());
+ EXPRESS_RUNNER.addFunctionAndClassMethod(ChainConstant.TAG, Object.class, new TagOperator());
+ EXPRESS_RUNNER.addFunctionAndClassMethod(ChainConstant.ANY, Object.class, new AnyOperator());
+ EXPRESS_RUNNER.addFunctionAndClassMethod(ChainConstant.ID, Object.class, new IdOperator());
+ EXPRESS_RUNNER.addFunctionAndClassMethod(ChainConstant.IGNORE_ERROR, Object.class, new IgnoreErrorOperator());
+ EXPRESS_RUNNER.addFunctionAndClassMethod(ChainConstant.THREAD_POOL, Object.class, new ThreadPoolOperator());
+ EXPRESS_RUNNER.addFunction(ChainConstant.NODE.toUpperCase(), new NodeOperator());
+ EXPRESS_RUNNER.addFunction(ChainConstant.NODE, new NodeOperator());
+ EXPRESS_RUNNER.addFunction(ChainConstant.FOR, new ForOperator());
+ EXPRESS_RUNNER.addFunction(ChainConstant.WHILE, new WhileOperator());
+ EXPRESS_RUNNER.addFunctionAndClassMethod(ChainConstant.DO, Object.class, new DoOperator());
+ EXPRESS_RUNNER.addFunctionAndClassMethod(ChainConstant.BREAK, Object.class, new BreakOperator());
+ EXPRESS_RUNNER.addFunctionAndClassMethod(ChainConstant.DATA, Object.class, new DataOperator());
}
public static LiteFlowChainELBuilder createChain() {
@@ -86,10 +95,10 @@ public class LiteFlowChainELBuilder {
//在parser中chain的build是2段式的,因为涉及到依赖问题,以前是递归parser
//2.6.8之后取消了递归的模式,两段式组装,先把带有chainName的chain对象放进去,第二段再组装chain里面的condition
//所以这里setChainName的时候需要判断下
+
/**
- *
- * @deprecated 请使用 {@link #setChainId(String)}
* @return LiteFlowChainELBuilder
+ * @deprecated 请使用 {@link #setChainId(String)}
*/
public LiteFlowChainELBuilder setChainName(String chainName) {
if (FlowBus.containChain(chainName)) {
@@ -99,7 +108,7 @@ public class LiteFlowChainELBuilder {
}
return this;
}
-
+
public LiteFlowChainELBuilder setChainId(String chainId) {
if (FlowBus.containChain(chainId)) {
this.chain = FlowBus.getChain(chainId);
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/AnyOperator.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/AnyOperator.java
index 22083cd7a..1da1d2ff5 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/AnyOperator.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/AnyOperator.java
@@ -1,6 +1,5 @@
package com.yomahub.liteflow.builder.el.operator;
-import com.ql.util.express.exception.QLException;
import com.yomahub.liteflow.builder.el.operator.base.BaseOperator;
import com.yomahub.liteflow.builder.el.operator.base.OperatorHelper;
import com.yomahub.liteflow.flow.element.condition.WhenCondition;
@@ -13,14 +12,14 @@ import com.yomahub.liteflow.flow.element.condition.WhenCondition;
*/
public class AnyOperator extends BaseOperator {
- @Override
- public WhenCondition build(Object[] objects) throws Exception {
- OperatorHelper.checkObjectSizeEqTwo(objects);
+ @Override
+ public WhenCondition build(Object[] objects) throws Exception {
+ OperatorHelper.checkObjectSizeEqTwo(objects);
- WhenCondition whenCondition = OperatorHelper.convert(objects[0], WhenCondition.class);
+ WhenCondition whenCondition = OperatorHelper.convert(objects[0], WhenCondition.class);
- Boolean any = OperatorHelper.convert(objects[1], Boolean.class);
- whenCondition.setAny(any);
- return whenCondition;
- }
+ Boolean any = OperatorHelper.convert(objects[1], Boolean.class);
+ whenCondition.setAny(any);
+ return whenCondition;
+ }
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/BreakOperator.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/BreakOperator.java
index f9e9c3821..d48ce99bd 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/BreakOperator.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/BreakOperator.java
@@ -6,10 +6,7 @@ import com.yomahub.liteflow.builder.el.operator.base.BaseOperator;
import com.yomahub.liteflow.builder.el.operator.base.OperatorHelper;
import com.yomahub.liteflow.enums.NodeTypeEnum;
import com.yomahub.liteflow.flow.element.Node;
-import com.yomahub.liteflow.flow.element.condition.Condition;
-import com.yomahub.liteflow.flow.element.condition.ForCondition;
import com.yomahub.liteflow.flow.element.condition.LoopCondition;
-import com.yomahub.liteflow.flow.element.condition.WhileCondition;
/**
* EL规则中的BREAK的操作符
@@ -31,9 +28,9 @@ public class BreakOperator extends BaseOperator {
//获得需要执行的可执行表达式
Node breakNode = OperatorHelper.convert(objects[1], Node.class);
- if (ListUtil.toList(NodeTypeEnum.BREAK, NodeTypeEnum.BREAK_SCRIPT).contains(breakNode.getType())){
+ if (ListUtil.toList(NodeTypeEnum.BREAK, NodeTypeEnum.BREAK_SCRIPT).contains(breakNode.getType())) {
condition.setBreakNode(breakNode);
- }else{
+ } else {
throw new QLException("The parameter must be node-break item");
}
return condition;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/DataOperator.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/DataOperator.java
index da22cab75..61a25b1ef 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/DataOperator.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/DataOperator.java
@@ -12,16 +12,16 @@ import com.yomahub.liteflow.flow.element.Node;
*/
public class DataOperator extends BaseOperator {
- @Override
- public Node build(Object[] objects) throws Exception {
- OperatorHelper.checkObjectSizeEqTwo(objects);
+ @Override
+ public Node build(Object[] objects) throws Exception {
+ OperatorHelper.checkObjectSizeEqTwo(objects);
- Node node = OperatorHelper.convert(objects[0], Node.class);
+ Node node = OperatorHelper.convert(objects[0], Node.class);
- String cmpData = OperatorHelper.convert(objects[1], String.class);
+ String cmpData = OperatorHelper.convert(objects[1], String.class);
- node.setCmpData(cmpData);
+ node.setCmpData(cmpData);
- return node;
- }
+ return node;
+ }
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/DoOperator.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/DoOperator.java
index 0749f3310..f4b02110c 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/DoOperator.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/DoOperator.java
@@ -1,14 +1,10 @@
package com.yomahub.liteflow.builder.el.operator;
import cn.hutool.core.collection.ListUtil;
-import com.ql.util.express.exception.QLException;
import com.yomahub.liteflow.builder.el.operator.base.BaseOperator;
import com.yomahub.liteflow.builder.el.operator.base.OperatorHelper;
import com.yomahub.liteflow.flow.element.Executable;
-import com.yomahub.liteflow.flow.element.condition.Condition;
-import com.yomahub.liteflow.flow.element.condition.ForCondition;
import com.yomahub.liteflow.flow.element.condition.LoopCondition;
-import com.yomahub.liteflow.flow.element.condition.WhileCondition;
/**
* EL规则中的DO的操作符
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/IdOperator.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/IdOperator.java
index f8cde7c7a..df34bca0a 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/IdOperator.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/IdOperator.java
@@ -1,11 +1,8 @@
package com.yomahub.liteflow.builder.el.operator;
-import com.ql.util.express.exception.QLException;
import com.yomahub.liteflow.builder.el.operator.base.BaseOperator;
import com.yomahub.liteflow.builder.el.operator.base.OperatorHelper;
import com.yomahub.liteflow.flow.element.condition.Condition;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
/**
* EL规则中的id的操作符,只有condition可加id
@@ -15,18 +12,16 @@ import org.slf4j.LoggerFactory;
*/
public class IdOperator extends BaseOperator {
- private final Logger LOG = LoggerFactory.getLogger(this.getClass());
+ @Override
+ public Condition build(Object[] objects) throws Exception {
+ OperatorHelper.checkObjectSizeEqTwo(objects);
- @Override
- public Condition build(Object[] objects) throws Exception {
- OperatorHelper.checkObjectSizeEqTwo(objects);
+ Condition condition = OperatorHelper.convert(objects[0], Condition.class);
- Condition condition = OperatorHelper.convert(objects[0], Condition.class);
+ String id = OperatorHelper.convert(objects[1], String.class);
- String id = OperatorHelper.convert(objects[1], String.class);
+ condition.setId(id);
- condition.setId(id);
-
- return condition;
- }
+ return condition;
+ }
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/IfOperator.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/IfOperator.java
index 10ad49987..5551ca36b 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/IfOperator.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/IfOperator.java
@@ -17,29 +17,29 @@ import com.yomahub.liteflow.flow.element.condition.IfCondition;
*/
public class IfOperator extends BaseOperator {
- @Override
- public IfCondition build(Object[] objects) throws Exception {
- OperatorHelper.checkObjectSizeEq(objects, 2, 3);
+ @Override
+ public IfCondition build(Object[] objects) throws Exception {
+ OperatorHelper.checkObjectSizeEq(objects, 2, 3);
- //解析第一个参数
- Node ifNode = OperatorHelper.convert(objects[0], Node.class);
- if (!ListUtil.toList(NodeTypeEnum.IF, NodeTypeEnum.IF_SCRIPT).contains(ifNode.getType())) {
- throw new QLException("The first parameter must be If item");
- }
+ //解析第一个参数
+ Node ifNode = OperatorHelper.convert(objects[0], Node.class);
+ if (!ListUtil.toList(NodeTypeEnum.IF, NodeTypeEnum.IF_SCRIPT).contains(ifNode.getType())) {
+ throw new QLException("The first parameter must be If item");
+ }
- //解析第二个参数
- Executable trueCaseExecutableItem = OperatorHelper.convert(objects[1], Executable.class);
+ //解析第二个参数
+ Executable trueCaseExecutableItem = OperatorHelper.convert(objects[1], Executable.class);
- //解析第三个参数,如果有的话
- Executable falseCaseExecutableItem = null;
- if (objects.length == 3) {
- falseCaseExecutableItem = OperatorHelper.convert(objects[2], Executable.class);
- }
+ //解析第三个参数,如果有的话
+ Executable falseCaseExecutableItem = null;
+ if (objects.length == 3) {
+ falseCaseExecutableItem = OperatorHelper.convert(objects[2], Executable.class);
+ }
- IfCondition ifCondition = new IfCondition();
- ifCondition.setExecutableList(ListUtil.toList(ifNode));
- ifCondition.setTrueCaseExecutableItem(trueCaseExecutableItem);
- ifCondition.setFalseCaseExecutableItem(falseCaseExecutableItem);
- return ifCondition;
- }
+ IfCondition ifCondition = new IfCondition();
+ ifCondition.setExecutableList(ListUtil.toList(ifNode));
+ ifCondition.setTrueCaseExecutableItem(trueCaseExecutableItem);
+ ifCondition.setFalseCaseExecutableItem(falseCaseExecutableItem);
+ return ifCondition;
+ }
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/PreOperator.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/PreOperator.java
index 0a0022a2d..f6f62cedd 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/PreOperator.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/PreOperator.java
@@ -1,6 +1,5 @@
package com.yomahub.liteflow.builder.el.operator;
-import com.ql.util.express.exception.QLException;
import com.yomahub.liteflow.builder.el.operator.base.BaseOperator;
import com.yomahub.liteflow.builder.el.operator.base.OperatorHelper;
import com.yomahub.liteflow.flow.element.Executable;
@@ -14,14 +13,14 @@ import com.yomahub.liteflow.flow.element.condition.PreCondition;
*/
public class PreOperator extends BaseOperator {
- @Override
- public PreCondition build(Object[] objects) throws Exception {
- OperatorHelper.checkObjectSizeGtZero(objects);
+ @Override
+ public PreCondition build(Object[] objects) throws Exception {
+ OperatorHelper.checkObjectSizeGtZero(objects);
- PreCondition preCondition = new PreCondition();
- for (Object obj : objects) {
- preCondition.addExecutable(OperatorHelper.convert(obj, Executable.class));
- }
- return preCondition;
- }
+ PreCondition preCondition = new PreCondition();
+ for (Object obj : objects) {
+ preCondition.addExecutable(OperatorHelper.convert(obj, Executable.class));
+ }
+ return preCondition;
+ }
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/ThenOperator.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/ThenOperator.java
index 5b33bf894..7c19aa0da 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/ThenOperator.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/ThenOperator.java
@@ -1,6 +1,5 @@
package com.yomahub.liteflow.builder.el.operator;
-import com.ql.util.express.exception.QLException;
import com.yomahub.liteflow.builder.el.operator.base.BaseOperator;
import com.yomahub.liteflow.builder.el.operator.base.OperatorHelper;
import com.yomahub.liteflow.flow.element.Executable;
@@ -14,14 +13,14 @@ import com.yomahub.liteflow.flow.element.condition.ThenCondition;
*/
public class ThenOperator extends BaseOperator {
- @Override
- public ThenCondition build(Object[] objects) throws Exception {
- OperatorHelper.checkObjectSizeGtZero(objects);
+ @Override
+ public ThenCondition build(Object[] objects) throws Exception {
+ OperatorHelper.checkObjectSizeGtZero(objects);
- ThenCondition thenCondition = new ThenCondition();
- for (Object obj : objects) {
- thenCondition.addExecutable(OperatorHelper.convert(obj, Executable.class));
- }
- return thenCondition;
- }
+ ThenCondition thenCondition = new ThenCondition();
+ for (Object obj : objects) {
+ thenCondition.addExecutable(OperatorHelper.convert(obj, Executable.class));
+ }
+ return thenCondition;
+ }
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/ThreadPoolOperator.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/ThreadPoolOperator.java
index 4034e9848..b3c81ef16 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/ThreadPoolOperator.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/ThreadPoolOperator.java
@@ -1,6 +1,5 @@
package com.yomahub.liteflow.builder.el.operator;
-import com.ql.util.express.exception.QLException;
import com.yomahub.liteflow.builder.el.operator.base.BaseOperator;
import com.yomahub.liteflow.builder.el.operator.base.OperatorHelper;
import com.yomahub.liteflow.flow.element.condition.WhenCondition;
@@ -13,14 +12,14 @@ import com.yomahub.liteflow.flow.element.condition.WhenCondition;
*/
public class ThreadPoolOperator extends BaseOperator {
- @Override
- public WhenCondition build(Object[] objects) throws Exception {
- OperatorHelper.checkObjectSizeEqTwo(objects);
+ @Override
+ public WhenCondition build(Object[] objects) throws Exception {
+ OperatorHelper.checkObjectSizeEqTwo(objects);
- WhenCondition whenCondition = OperatorHelper.convert(objects[0], WhenCondition.class);
+ WhenCondition whenCondition = OperatorHelper.convert(objects[0], WhenCondition.class);
- whenCondition.setThreadExecutorClass(OperatorHelper.convert(objects[1], String.class));
+ whenCondition.setThreadExecutorClass(OperatorHelper.convert(objects[1], String.class));
- return whenCondition;
- }
+ return whenCondition;
+ }
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/ToOperator.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/ToOperator.java
index 0ba6216c6..1ce13724d 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/ToOperator.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/ToOperator.java
@@ -1,6 +1,5 @@
package com.yomahub.liteflow.builder.el.operator;
-import com.ql.util.express.exception.QLException;
import com.yomahub.liteflow.builder.el.operator.base.BaseOperator;
import com.yomahub.liteflow.builder.el.operator.base.OperatorHelper;
import com.yomahub.liteflow.flow.element.Executable;
@@ -14,16 +13,16 @@ import com.yomahub.liteflow.flow.element.condition.SwitchCondition;
*/
public class ToOperator extends BaseOperator {
- @Override
- public SwitchCondition build(Object[] objects) throws Exception {
- OperatorHelper.checkObjectSizeGtTwo(objects);
+ @Override
+ public SwitchCondition build(Object[] objects) throws Exception {
+ OperatorHelper.checkObjectSizeGtTwo(objects);
- SwitchCondition switchCondition = OperatorHelper.convert(objects[0], SwitchCondition.class);
+ SwitchCondition switchCondition = OperatorHelper.convert(objects[0], SwitchCondition.class);
- for (int i = 1; i < objects.length; i++) {
- Executable target = OperatorHelper.convert(objects[i], Executable.class);
- switchCondition.addTargetItem(target);
- }
- return switchCondition;
- }
+ for (int i = 1; i < objects.length; i++) {
+ Executable target = OperatorHelper.convert(objects[i], Executable.class);
+ switchCondition.addTargetItem(target);
+ }
+ return switchCondition;
+ }
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/WhenOperator.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/WhenOperator.java
index b68a989d0..b2faa3f0e 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/WhenOperator.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/WhenOperator.java
@@ -1,6 +1,5 @@
package com.yomahub.liteflow.builder.el.operator;
-import com.ql.util.express.exception.QLException;
import com.yomahub.liteflow.builder.el.operator.base.BaseOperator;
import com.yomahub.liteflow.builder.el.operator.base.OperatorHelper;
import com.yomahub.liteflow.flow.element.Executable;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/base/OperatorHelper.java b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/base/OperatorHelper.java
index b3a3139d3..c2ddcb779 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/base/OperatorHelper.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/builder/el/operator/base/OperatorHelper.java
@@ -3,13 +3,13 @@ package com.yomahub.liteflow.builder.el.operator.base;
import cn.hutool.core.util.StrUtil;
import com.ql.util.express.exception.QLException;
import com.yomahub.liteflow.exception.DataNofFoundException;
-import com.yomahub.liteflow.flow.FlowBus;
import com.yomahub.liteflow.flow.element.Node;
import java.util.Objects;
/**
* Operator 常用工具类
+ *
* @author gaibu
* @since 2.8.6
*/
@@ -131,17 +131,17 @@ public class OperatorHelper {
* 如果是Node类型的则进行copy
*/
public static T convert(Object object, Class clazz, String errorMsg) throws QLException {
- try{
+ try {
if (clazz.isAssignableFrom(object.getClass())) {
- if(clazz.equals(Node.class)){
+ if (clazz.equals(Node.class)) {
Node node = (Node) object;
return (T) node.copy();
- }else{
+ } else {
return (T) object;
}
}
- }catch (Exception e){
+ } catch (Exception e) {
throw new QLException("An error occurred while copying an object");
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/common/ChainConstant.java b/liteflow-core/src/main/java/com/yomahub/liteflow/common/ChainConstant.java
index 768f1c37b..fea1f6e23 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/common/ChainConstant.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/common/ChainConstant.java
@@ -36,4 +36,40 @@ public interface ChainConstant {
String CONDITION = "condition";
String TYPE = "type";
+
+ String THEN = "THEN";
+
+ String WHEN = "WHEN";
+
+ String SWITCH = "SWITCH";
+
+ String PRE = "PRE";
+
+ String FINALLY = "FINALLY";
+
+ String IF = "IF";
+
+ String ELSE = "ELSE";
+
+ String ELIF = "ELIF";
+
+ String TO = "TO";
+
+ String TAG = "tag";
+
+ String IGNORE_ERROR = "ignoreError";
+
+ String THREAD_POOL = "threadPool";
+
+ String WHILE = "WHILE";
+
+ String FOR = "FOR";
+
+ String DO = "DO";
+
+ String BREAK = "BREAK";
+
+ String DATA = "data";
+
+ String MONITOR_BUS = "monitorBus";
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/common/LocalDefaultFlowConstant.java b/liteflow-core/src/main/java/com/yomahub/liteflow/common/LocalDefaultFlowConstant.java
index 0e752c5e9..2dc4f1969 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/common/LocalDefaultFlowConstant.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/common/LocalDefaultFlowConstant.java
@@ -1,5 +1,8 @@
package com.yomahub.liteflow.common;
+/**
+ * @author Yun
+ */
public class LocalDefaultFlowConstant {
public static final String DEFAULT="default";
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/core/ComponentInitializer.java b/liteflow-core/src/main/java/com/yomahub/liteflow/core/ComponentInitializer.java
index 89c22261e..4aaa40c8f 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/core/ComponentInitializer.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/core/ComponentInitializer.java
@@ -1,12 +1,12 @@
package com.yomahub.liteflow.core;
-import cn.hutool.core.collection.ListUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.yomahub.liteflow.annotation.LiteflowRetry;
import com.yomahub.liteflow.annotation.util.AnnoUtil;
-import com.yomahub.liteflow.flow.executor.NodeExecutor;
+import com.yomahub.liteflow.common.ChainConstant;
import com.yomahub.liteflow.enums.NodeTypeEnum;
+import com.yomahub.liteflow.flow.executor.NodeExecutor;
import com.yomahub.liteflow.monitor.MonitorBus;
import com.yomahub.liteflow.property.LiteflowConfig;
import com.yomahub.liteflow.property.LiteflowConfigGetter;
@@ -15,6 +15,7 @@ import com.yomahub.liteflow.spi.holder.LiteflowComponentSupportHolder;
/**
* 组件初始化器
+ *
* @author Bryan.Zhang
* @since 2.6.0
*/
@@ -22,22 +23,22 @@ public class ComponentInitializer {
private static ComponentInitializer instance;
- public static ComponentInitializer loadInstance(){
- if (ObjectUtil.isNull(instance)){
+ public static ComponentInitializer loadInstance() {
+ if (ObjectUtil.isNull(instance)) {
instance = new ComponentInitializer();
}
return instance;
}
- public NodeComponent initComponent(NodeComponent nodeComponent, NodeTypeEnum type, String name, String nodeId){
+ public NodeComponent initComponent(NodeComponent nodeComponent, NodeTypeEnum type, String name, String nodeId) {
nodeComponent.setNodeId(nodeId);
nodeComponent.setSelf(nodeComponent);
nodeComponent.setType(type);
//设置MonitorBus,如果没有就不注入
- if (ContextAwareHolder.loadContextAware().hasBean("monitorBus")){
+ if (ContextAwareHolder.loadContextAware().hasBean(ChainConstant.MONITOR_BUS)) {
MonitorBus monitorBus = ContextAwareHolder.loadContextAware().getBean(MonitorBus.class);
- if(ObjectUtil.isNotNull(monitorBus)){
+ if (ObjectUtil.isNotNull(monitorBus)) {
nodeComponent.setMonitorBus(monitorBus);
}
}
@@ -45,17 +46,17 @@ public class ComponentInitializer {
//先取传进来的name值(配置文件中配置的),再看有没有配置@LiteflowComponent标注
//@LiteflowComponent标注只在spring体系下生效,这里用了spi机制取到相应环境下的实现类
nodeComponent.setName(name);
- if (!type.isScript() && StrUtil.isBlank(nodeComponent.getName())){
+ if (!type.isScript() && StrUtil.isBlank(nodeComponent.getName())) {
nodeComponent.setName(LiteflowComponentSupportHolder.loadLiteflowComponentSupport().getCmpName(nodeComponent));
}
//先从组件上取@RetryCount标注,如果没有,则看全局配置,全局配置如果不配置的话,默认是0
//默认retryForExceptions为Exception.class
- LiteflowRetry liteflowRetryAnnotation = AnnoUtil.getAnnotation(nodeComponent.getClass(), LiteflowRetry.class);
+ LiteflowRetry liteFlowRetryAnnotation = AnnoUtil.getAnnotation(nodeComponent.getClass(), LiteflowRetry.class);
LiteflowConfig liteflowConfig = LiteflowConfigGetter.get();
- if (liteflowRetryAnnotation != null) {
- nodeComponent.setRetryCount(liteflowRetryAnnotation.retry());
- nodeComponent.setRetryForExceptions(liteflowRetryAnnotation.forExceptions());
+ if (liteFlowRetryAnnotation != null) {
+ nodeComponent.setRetryCount(liteFlowRetryAnnotation.retry());
+ nodeComponent.setRetryForExceptions(liteFlowRetryAnnotation.forExceptions());
} else {
nodeComponent.setRetryCount(liteflowConfig.getRetryCount());
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/core/FlowExecutorHolder.java b/liteflow-core/src/main/java/com/yomahub/liteflow/core/FlowExecutorHolder.java
index 9848af46e..436a9bbf9 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/core/FlowExecutorHolder.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/core/FlowExecutorHolder.java
@@ -4,6 +4,9 @@ import cn.hutool.core.util.ObjectUtil;
import com.yomahub.liteflow.exception.FlowExecutorNotInitException;
import com.yomahub.liteflow.property.LiteflowConfig;
+/**
+ * @author Bryan.Zhang
+ */
public class FlowExecutorHolder {
private static FlowExecutor flowExecutor;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/core/ScriptComponent.java b/liteflow-core/src/main/java/com/yomahub/liteflow/core/ScriptComponent.java
index 5407c88c9..6584e1897 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/core/ScriptComponent.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/core/ScriptComponent.java
@@ -7,5 +7,9 @@ package com.yomahub.liteflow.core;
*/
public interface ScriptComponent {
+ /**
+ * 加载脚本
+ * @param script
+ */
void loadScript(String script);
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/core/proxy/LiteFlowMethodBean.java b/liteflow-core/src/main/java/com/yomahub/liteflow/core/proxy/LiteFlowMethodBean.java
index 3da3caf44..27388b325 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/core/proxy/LiteFlowMethodBean.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/core/proxy/LiteFlowMethodBean.java
@@ -2,6 +2,9 @@ package com.yomahub.liteflow.core.proxy;
import java.lang.reflect.Method;
+/**
+ * @author Bryan.Zhang
+ */
public class LiteFlowMethodBean {
private String methodName;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/enums/ConditionTypeEnum.java b/liteflow-core/src/main/java/com/yomahub/liteflow/enums/ConditionTypeEnum.java
index bbee526cd..fa9178f26 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/enums/ConditionTypeEnum.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/enums/ConditionTypeEnum.java
@@ -1,5 +1,8 @@
package com.yomahub.liteflow.enums;
+/**
+ * @author Yun
+ */
public enum ConditionTypeEnum {
TYPE_THEN("then","then"),
TYPE_WHEN("when","when"),
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ChainEndException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ChainEndException.java
index 42a9cf3f6..378cbe888 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ChainEndException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ChainEndException.java
@@ -1,6 +1,10 @@
package com.yomahub.liteflow.exception;
+/**
+ * 链端异常
+ * @author Bryan.Zhang
+ */
public class ChainEndException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ChainNotFoundException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ChainNotFoundException.java
index 7e08373eb..585a6b43e 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ChainNotFoundException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ChainNotFoundException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 链端不存在
+ * @author Bryan.Zhang
+ */
public class ChainNotFoundException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ComponentMethodDefineErrorException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ComponentMethodDefineErrorException.java
index 520b29d76..f7f985124 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ComponentMethodDefineErrorException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ComponentMethodDefineErrorException.java
@@ -1,6 +1,10 @@
package com.yomahub.liteflow.exception;
+/**
+ * 组件方法定义错误异常
+ * @author Bryan.Zhang
+ */
public class ComponentMethodDefineErrorException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ComponentNotAccessException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ComponentNotAccessException.java
index 1ad1db869..7603ae082 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ComponentNotAccessException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ComponentNotAccessException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 组件不可访问异常
+ * @author Bryan.Zhang
+ */
public class ComponentNotAccessException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ComponentProxyErrorException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ComponentProxyErrorException.java
index d8177be53..9ff854001 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ComponentProxyErrorException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ComponentProxyErrorException.java
@@ -1,6 +1,10 @@
package com.yomahub.liteflow.exception;
+/**
+ * 组件代理错误异常
+ * @author Yun
+ */
public class ComponentProxyErrorException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ConfigErrorException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ConfigErrorException.java
index 7ff1a6e65..b38075221 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ConfigErrorException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ConfigErrorException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 配置错误异常
+ * @author Yun
+ */
public class ConfigErrorException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/CyclicDependencyException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/CyclicDependencyException.java
index 700aef088..179e0ecdb 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/CyclicDependencyException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/CyclicDependencyException.java
@@ -1,6 +1,10 @@
package com.yomahub.liteflow.exception;
+/**
+ * 循环依赖异常
+ * @author Yun
+ */
public class CyclicDependencyException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/DataNofFoundException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/DataNofFoundException.java
index e9b44e39a..c31111517 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/DataNofFoundException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/DataNofFoundException.java
@@ -1,6 +1,7 @@
package com.yomahub.liteflow.exception;
/**
+ * 未找到数据异常
* @author tangkc
*/
public class DataNofFoundException extends RuntimeException {
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ELParseException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ELParseException.java
index c50322751..871f0ac27 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ELParseException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ELParseException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * EL 解析异常
+ * @author Yun
+ */
public class ELParseException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/EmptyConditionValueException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/EmptyConditionValueException.java
index 76614442b..821df9680 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/EmptyConditionValueException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/EmptyConditionValueException.java
@@ -1,6 +1,10 @@
package com.yomahub.liteflow.exception;
+/**
+ * 空条件值异常
+ * @author Yun
+ */
public class EmptyConditionValueException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ErrorSupportPathException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ErrorSupportPathException.java
index dcc4d782f..a3da14296 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ErrorSupportPathException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ErrorSupportPathException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 错误支持路径异常
+ * @author Yun
+ */
public class ErrorSupportPathException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/FlowExecutorNotInitException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/FlowExecutorNotInitException.java
index 3b0ceb0df..bf7fbad10 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/FlowExecutorNotInitException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/FlowExecutorNotInitException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 流程执行者未初始化
+ * @author Yun
+ */
public class FlowExecutorNotInitException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/FlowSystemException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/FlowSystemException.java
index 5ce4647d4..da0fea935 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/FlowSystemException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/FlowSystemException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 流程系统异常
+ * @author Yun
+ */
public class FlowSystemException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/IfTargetCannotBePreOrFinallyException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/IfTargetCannotBePreOrFinallyException.java
index aa278cd91..0c8b7efab 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/IfTargetCannotBePreOrFinallyException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/IfTargetCannotBePreOrFinallyException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 如果目标不能是 Pre 或 Finally 异常
+ * @author Yun
+ */
public class IfTargetCannotBePreOrFinallyException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/IfTypeErrorException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/IfTypeErrorException.java
index c50a6854a..1a275adfd 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/IfTypeErrorException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/IfTypeErrorException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 类型错误异常
+ * @author Yun
+ */
public class IfTypeErrorException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/JsonProcessException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/JsonProcessException.java
index 98a07be82..ac2f57f69 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/JsonProcessException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/JsonProcessException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * Json 进程异常
+ * @author Yun
+ */
public class JsonProcessException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/MultipleParsersException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/MultipleParsersException.java
index 2f960e06d..4d49c4113 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/MultipleParsersException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/MultipleParsersException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 重复解析器异常
+ * @author Yun
+ */
public class MultipleParsersException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoAvailableSlotException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoAvailableSlotException.java
index 998ceeb50..2935876fb 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoAvailableSlotException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoAvailableSlotException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 无可用插槽异常
+ * @author Yun
+ */
public class NoAvailableSlotException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoForNodeException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoForNodeException.java
index 026f553a0..c61f1899d 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoForNodeException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoForNodeException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 没有节点异常
+ * @author Yun
+ */
public class NoForNodeException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoIfTrueNodeException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoIfTrueNodeException.java
index 1f075ac10..be6bf7d56 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoIfTrueNodeException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoIfTrueNodeException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 节点不为真异常
+ * @author Yun
+ */
public class NoIfTrueNodeException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoSwitchTargetNodeException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoSwitchTargetNodeException.java
index ef4a8629f..21daee14b 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoSwitchTargetNodeException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoSwitchTargetNodeException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 无切换目标节点异常
+ * @author Yun
+ */
public class NoSwitchTargetNodeException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoWhileNodeException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoWhileNodeException.java
index 239870d45..bc8608176 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoWhileNodeException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NoWhileNodeException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 没有 While 节点异常
+ * @author Yun
+ */
public class NoWhileNodeException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NodeBuildException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NodeBuildException.java
index f53277169..eb143cee9 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NodeBuildException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NodeBuildException.java
@@ -1,6 +1,10 @@
package com.yomahub.liteflow.exception;
+/**
+ * 节点构建异常
+ * @author Yun
+ */
public class NodeBuildException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NodeClassNotFoundException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NodeClassNotFoundException.java
index 022018485..ac870be33 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NodeClassNotFoundException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NodeClassNotFoundException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 找不到节点类异常
+ * @author Yun
+ */
public class NodeClassNotFoundException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NodeTypeCanNotGuessException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NodeTypeCanNotGuessException.java
index 4ca82d563..a185bde63 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NodeTypeCanNotGuessException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NodeTypeCanNotGuessException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 节点类型无法猜测异常
+ * @author Yun
+ */
public class NodeTypeCanNotGuessException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NotSupportConditionException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NotSupportConditionException.java
index 89ef7d76b..a0e0efbee 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NotSupportConditionException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NotSupportConditionException.java
@@ -1,6 +1,10 @@
package com.yomahub.liteflow.exception;
+/**
+ * 不支持条件异常
+ * @author Yun
+ */
public class NotSupportConditionException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NullNodeTypeException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NullNodeTypeException.java
index 1ed22830e..ad0379a7c 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NullNodeTypeException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/NullNodeTypeException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 空节点异常
+ * @author Yun
+ */
public class NullNodeTypeException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ParseException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ParseException.java
index b91a6e5fb..18c24a944 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ParseException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ParseException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 解析异常
+ * @author Yun
+ */
public class ParseException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ParserCannotFindException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ParserCannotFindException.java
index 3e451192c..c84c21896 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ParserCannotFindException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/ParserCannotFindException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 解析器找不到异常
+ * @author Yun
+ */
public class ParserCannotFindException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/SwitchTargetCannotBePreOrFinallyException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/SwitchTargetCannotBePreOrFinallyException.java
index 3a5e7a21d..cd04d5593 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/SwitchTargetCannotBePreOrFinallyException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/SwitchTargetCannotBePreOrFinallyException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 切换目标不能是 Pre 或 Finally 异常
+ * @author Yun
+ */
public class SwitchTargetCannotBePreOrFinallyException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/SwitchTypeErrorException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/SwitchTypeErrorException.java
index c0937e589..f39f2d7a6 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/SwitchTypeErrorException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/SwitchTypeErrorException.java
@@ -1,5 +1,9 @@
package com.yomahub.liteflow.exception;
+/**
+ * 开关类型错误异常
+ * @author Yun
+ */
public class SwitchTypeErrorException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/WhenExecuteException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/WhenExecuteException.java
index fff2b0d96..bfd883b78 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/WhenExecuteException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/WhenExecuteException.java
@@ -1,6 +1,10 @@
package com.yomahub.liteflow.exception;
+/**
+ * 执行异常时
+ * @author Yun
+ */
public class WhenExecuteException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/WhenTimeoutException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/WhenTimeoutException.java
index 6c7d9e025..c9dcacee5 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/WhenTimeoutException.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/WhenTimeoutException.java
@@ -1,6 +1,10 @@
package com.yomahub.liteflow.exception;
+/**
+ * 当超时异常
+ * @author Yun
+ */
public class WhenTimeoutException extends RuntimeException {
private static final long serialVersionUID = 1L;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/flow/element/condition/Condition.java b/liteflow-core/src/main/java/com/yomahub/liteflow/flow/element/condition/Condition.java
index 9f27eea3c..2b35361f6 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/flow/element/condition/Condition.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/flow/element/condition/Condition.java
@@ -22,13 +22,16 @@ public abstract class Condition implements Executable{
private String id;
- //可执行元素的集合
+ /**
+ * 可执行元素的集合
+ */
private List executableList = new ArrayList<>();
-
- //当前所在的ChainName
- //如果对于子流程来说,那这个就是子流程所在的Chain
+ /**
+ * 当前所在的ChainName
+ * 如果对于子流程来说,那这个就是子流程所在的Chain
+ */
private String currChainName;
@Override
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/flow/executor/NodeExecutor.java b/liteflow-core/src/main/java/com/yomahub/liteflow/flow/executor/NodeExecutor.java
index 6591dfb4a..f2ad114f4 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/flow/executor/NodeExecutor.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/flow/executor/NodeExecutor.java
@@ -19,7 +19,11 @@ import java.util.List;
public abstract class NodeExecutor {
protected final Logger LOG = LoggerFactory.getLogger(this.getClass());
- //执行器执行入口-若需要更大维度的执行方式可以重写该方法
+ /**
+ * 执行器执行入口-若需要更大维度的执行方式可以重写该方法
+ * @param instance
+ * @throws Exception
+ */
public void execute(NodeComponent instance) throws Exception {
int retryCount = instance.getRetryCount();
List> forExceptions = Arrays.asList(instance.getRetryForExceptions());
@@ -47,7 +51,12 @@ public abstract class NodeExecutor {
}
}
- //执行重试逻辑 - 子类通过实现该方法进行重试逻辑的控制
+ /**
+ * 执行重试逻辑 - 子类通过实现该方法进行重试逻辑的控制
+ * @param instance
+ * @param currentRetryCount
+ * @throws Exception
+ */
protected void retry(NodeComponent instance, int currentRetryCount) throws Exception {
Slot slot = DataBus.getSlot(instance.getSlotIndex());
LOG.info("[{}]:component[{}] performs {} retry", slot.getRequestId(),instance.getDisplayName(), currentRetryCount + 1);
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/flow/executor/NodeExecutorHelper.java b/liteflow-core/src/main/java/com/yomahub/liteflow/flow/executor/NodeExecutorHelper.java
index 0f1a71abf..203db345e 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/flow/executor/NodeExecutorHelper.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/flow/executor/NodeExecutorHelper.java
@@ -13,19 +13,26 @@ import java.util.Map;
* @since 2.6.9
*/
public class NodeExecutorHelper {
- //此处使用Map缓存线程池信息
+ /**
+ * 此处使用Map缓存线程池信息
+ */
private final Map, NodeExecutor> nodeExecutorMap;
private NodeExecutorHelper() {
nodeExecutorMap = MapUtil.newConcurrentHashMap();
}
- //使用静态内部类实现单例模式
+ /**
+ * 使用静态内部类实现单例模式
+ */
private static class Holder {
static final NodeExecutorHelper INSTANCE = new NodeExecutorHelper();
}
- //获取帮助者的实例
+ /**
+ * 获取帮助者的实例
+ * @return
+ */
public static NodeExecutorHelper loadInstance() {
// 外围类能直接访问内部类(不管是否是静态的)的私有变量
return Holder.INSTANCE;
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/slot/DataBus.java b/liteflow-core/src/main/java/com/yomahub/liteflow/slot/DataBus.java
index 12bd43705..dfb89543d 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/slot/DataBus.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/slot/DataBus.java
@@ -34,20 +34,26 @@ public class DataBus {
public static AtomicInteger OCCUPY_COUNT = new AtomicInteger(0);
- //这里为什么采用ConcurrentHashMap作为slot存放的容器?
- //因为ConcurrentHashMap的随机取值复杂度也和数组一样为O(1),并且没有并发问题,还有自动扩容的功能
- //用数组的话,扩容涉及copy,线程安全问题还要自己处理
+ /**
+ * 这里为什么采用ConcurrentHashMap作为slot存放的容器?
+ * 因为ConcurrentHashMap的随机取值复杂度也和数组一样为O(1),并且没有并发问题,还有自动扩容的功能
+ * 用数组的话,扩容涉及copy,线程安全问题还要自己处理
+ */
private static ConcurrentHashMap SLOTS;
private static ConcurrentLinkedQueue QUEUE;
- //当前slot的下标index的最大值
+ /**
+ * 当前slot的下标index的最大值
+ */
private static Integer currentIndexMaxValue;
- //这里原先版本中是static块,现在改成init静态方法,由FlowExecutor中的init去调用
- //这样的改动对项目来说没有什么实际意义,但是在单元测试中,却有意义。
- //因为单元测试中所有的一起跑,jvm是不退出的,所以如果是static块的话,跑多个testsuite只会执行一次。
- //而由FlowExecutor中的init去调用,是会被执行多次的。保证了每个单元测试都能初始化一遍
+ /**
+ * 这里原先版本中是static块,现在改成init静态方法,由FlowExecutor中的init去调用
+ * 这样的改动对项目来说没有什么实际意义,但是在单元测试中,却有意义。
+ * 因为单元测试中所有的一起跑,jvm是不退出的,所以如果是static块的话,跑多个testsuite只会执行一次。
+ * 而由FlowExecutor中的init去调用,是会被执行多次的。保证了每个单元测试都能初始化一遍
+ */
public static void init() {
if (MapUtil.isEmpty(SLOTS)){
LiteflowConfig liteflowConfig = LiteflowConfigGetter.get();
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/thread/LiteFlowDefaultMainExecutorBuilder.java b/liteflow-core/src/main/java/com/yomahub/liteflow/thread/LiteFlowDefaultMainExecutorBuilder.java
index 12c41babd..80d75c449 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/thread/LiteFlowDefaultMainExecutorBuilder.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/thread/LiteFlowDefaultMainExecutorBuilder.java
@@ -6,6 +6,10 @@ import com.yomahub.liteflow.property.LiteflowConfigGetter;
import java.util.concurrent.ExecutorService;
+/**
+ * LiteFlow 默认主执行器生成器
+ * @author Yun
+ */
public class LiteFlowDefaultMainExecutorBuilder implements ExecutorBuilder{
@Override
public ExecutorService buildExecutor() {
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/util/LiteFlowProxyUtil.java b/liteflow-core/src/main/java/com/yomahub/liteflow/util/LiteFlowProxyUtil.java
index 912595a63..98d246479 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/util/LiteFlowProxyUtil.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/util/LiteFlowProxyUtil.java
@@ -1,9 +1,8 @@
package com.yomahub.liteflow.util;
-import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
-import com.yomahub.liteflow.annotation.*;
-import com.yomahub.liteflow.core.*;
+import com.yomahub.liteflow.annotation.LiteflowMethod;
+import com.yomahub.liteflow.core.NodeComponent;
import com.yomahub.liteflow.core.proxy.ComponentProxy;
import com.yomahub.liteflow.enums.NodeTypeEnum;
import com.yomahub.liteflow.exception.ComponentProxyErrorException;
@@ -17,6 +16,7 @@ import java.util.List;
/**
* 组件代理类通用方法
* 主要用于声明式组件
+ *
* @author Bryan.Zhang
* @since 2.6.14
*/
@@ -24,14 +24,18 @@ public class LiteFlowProxyUtil {
private static final Logger LOG = LoggerFactory.getLogger(LiteFlowProxyUtil.class);
- //判断一个bean是否是声明式组件
- public static boolean isDeclareCmp(Class> clazz){
+ /**
+ * 判断一个bean是否是声明式组件
+ * @param clazz
+ * @return
+ */
+ public static boolean isDeclareCmp(Class> clazz) {
//查看bean里的method是否有方法标记了@LiteflowMethod标注
//这里的bean有可能是cglib加强过的class,所以要先进行个判断
Class> targetClass;
- if (isCglibProxyClass(clazz)){
+ if (isCglibProxyClass(clazz)) {
targetClass = getUserClass(clazz);
- }else{
+ } else {
targetClass = clazz;
}
// 判断是否有方法标记了@LiteflowMethod标注,有则为声明式组件
@@ -40,16 +44,21 @@ public class LiteFlowProxyUtil {
);
}
- //对一个满足声明式的bean进行代理,生成代理类数组
- public static List proxy2NodeComponent(Object bean, String nodeId){
- try{
+ /**
+ * 对一个满足声明式的bean进行代理,生成代理类数组
+ * @param bean
+ * @param nodeId
+ * @return
+ */
+ public static List proxy2NodeComponent(Object bean, String nodeId) {
+ try {
NodeTypeEnum nodeType = NodeTypeEnum.guessType(bean.getClass());
ComponentProxy proxy = new ComponentProxy(nodeId, bean, nodeType.getMappingClazz());
return proxy.getProxyList();
- }catch (LiteFlowException liteFlowException){
+ } catch (LiteFlowException liteFlowException) {
throw liteFlowException;
- }catch (Exception e){
- String errMsg = StrUtil.format("Error while proxying bean[{}]",bean.getClass().getName());
+ } catch (Exception e) {
+ String errMsg = StrUtil.format("Error while proxying bean[{}]", bean.getClass().getName());
LOG.error(errMsg);
throw new ComponentProxyErrorException(errMsg);
}
diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/util/SerialsUtil.java b/liteflow-core/src/main/java/com/yomahub/liteflow/util/SerialsUtil.java
index de9f3bec0..acf0e7fad 100644
--- a/liteflow-core/src/main/java/com/yomahub/liteflow/util/SerialsUtil.java
+++ b/liteflow-core/src/main/java/com/yomahub/liteflow/util/SerialsUtil.java
@@ -6,6 +6,9 @@ import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.*;
+/**
+ * @author Yun
+ */
public class SerialsUtil {
public static int serialInt = 1;