From e579540e3af5735e39b5cb2a947f4904c28d19f5 Mon Sep 17 00:00:00 2001 From: noear Date: Thu, 22 Dec 2022 12:46:01 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E6=AD=A5=E5=AE=8C=E6=88=90=20liteflow?= =?UTF-8?q?-solon-plugin=20=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yomahub/liteflow/solon/LiteflowProperty.java | 7 ++++++- .../liteflow/solon/integration/XPluginImpl.java | 11 +++++------ .../subflow/ImplicitSubFlowELSpringbootTest.java | 1 - .../SubflowInDifferentConfigELSpringbootTest.java | 1 - .../test/subflow/SubflowXMLELSpringBootTest.java | 1 - .../test/subflow/SubflowYmlELSpringBootTest.java | 1 - .../SubflowJsonELSpringBootTest.java | 4 +--- .../yomahub/liteflow/test/subflow2/cmp1/ACmp.java | 13 +++++++++++++ .../yomahub/liteflow/test/subflow2/cmp1/BCmp.java | 13 +++++++++++++ .../yomahub/liteflow/test/subflow2/cmp1/CCmp.java | 13 +++++++++++++ .../yomahub/liteflow/test/subflow2/cmp1/DCmp.java | 13 +++++++++++++ .../yomahub/liteflow/test/subflow2/cmp1/ECmp.java | 14 ++++++++++++++ pom.xml | 2 +- 13 files changed, 79 insertions(+), 15 deletions(-) rename liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/{subflow => subflow2}/SubflowJsonELSpringBootTest.java (87%) create mode 100644 liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/ACmp.java create mode 100644 liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/BCmp.java create mode 100644 liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/CCmp.java create mode 100644 liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/DCmp.java create mode 100644 liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/ECmp.java diff --git a/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/LiteflowProperty.java b/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/LiteflowProperty.java index 60d38e4aa..d1d1690cf 100644 --- a/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/LiteflowProperty.java +++ b/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/LiteflowProperty.java @@ -1,6 +1,7 @@ package com.yomahub.liteflow.solon; +import org.noear.solon.Utils; import org.noear.solon.annotation.Configuration; import org.noear.solon.annotation.Inject; @@ -84,7 +85,11 @@ public class LiteflowProperty { } public void setRuleSource(String ruleSource) { - this.ruleSource = ruleSource; + if (ruleSource.contains("*")) { + this.ruleSource = String.join(",", Utils.resolvePaths(ruleSource)); + } else { + this.ruleSource = ruleSource; + } } public int getSlotSize() { diff --git a/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/integration/XPluginImpl.java b/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/integration/XPluginImpl.java index 49d24799c..712f2821c 100644 --- a/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/integration/XPluginImpl.java +++ b/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/integration/XPluginImpl.java @@ -48,19 +48,18 @@ public class XPluginImpl implements Plugin { node1.setNodeId(nodeId); node1.setType(anno.nodeType()); - FlowBus.addSpringScanNode(bw.name(), node1); + FlowBus.addSpringScanNode(nodeId, node1); }); context.beanBuilderAdd(LiteflowComponent.class, (clz, bw, anno) -> { if(NodeComponent.class.isAssignableFrom(clz)) { NodeComponent node1 = bw.raw(); - String id1 = Utils.annoAlias(anno.id(), anno.value()); - String name1 =Utils.annoAlias(anno.name(), id1); + String nodeId = Utils.annoAlias(anno.id(), anno.value()); - node1.setNodeId(id1); - node1.setName(name1); + node1.setNodeId(nodeId); + node1.setName(anno.name()); - FlowBus.addSpringScanNode(node1.getNodeId(), node1); + FlowBus.addSpringScanNode(nodeId, node1); }else{ context.beanExtract(bw); //尝试提取 LiteflowMethod 函数 } diff --git a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/ImplicitSubFlowELSpringbootTest.java b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/ImplicitSubFlowELSpringbootTest.java index 2ccd18509..f84de8d1c 100644 --- a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/ImplicitSubFlowELSpringbootTest.java +++ b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/ImplicitSubFlowELSpringbootTest.java @@ -23,7 +23,6 @@ import java.util.Set; */ @RunWith(SolonJUnit4ClassRunner.class) @TestPropertySource(value = "classpath:/subflow/application-implicit.properties") -@Import(scanPackages = {"com.yomahub.liteflow.test.subflow.cmp2"}) public class ImplicitSubFlowELSpringbootTest extends BaseTest { @Inject private FlowExecutor flowExecutor; diff --git a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowInDifferentConfigELSpringbootTest.java b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowInDifferentConfigELSpringbootTest.java index be7023a69..b758e1f4b 100644 --- a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowInDifferentConfigELSpringbootTest.java +++ b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowInDifferentConfigELSpringbootTest.java @@ -21,7 +21,6 @@ import org.noear.solon.test.annotation.TestPropertySource; */ @RunWith(SolonJUnit4ClassRunner.class) @TestPropertySource("classpath:/subflow/application-subInDifferentConfig1.properties") -@Import(scanPackages = {"com.yomahub.liteflow.test.subflow.cmp1","com.yomahub.liteflow.test.subflow.cmp2"}) public class SubflowInDifferentConfigELSpringbootTest extends BaseTest { @Inject private FlowExecutor flowExecutor; diff --git a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowXMLELSpringBootTest.java b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowXMLELSpringBootTest.java index 6e7be89c7..675d0be27 100644 --- a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowXMLELSpringBootTest.java +++ b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowXMLELSpringBootTest.java @@ -19,7 +19,6 @@ import org.noear.solon.test.annotation.TestPropertySource; */ @RunWith(SolonJUnit4ClassRunner.class) @TestPropertySource(value = "classpath:/subflow/application-xml.properties") -@Import(scanPackages = {"com.yomahub.liteflow.test.subflow.cmp1"}) public class SubflowXMLELSpringBootTest extends BaseTest { @Inject private FlowExecutor flowExecutor; diff --git a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowYmlELSpringBootTest.java b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowYmlELSpringBootTest.java index e8eedb6f3..12a1c3b29 100644 --- a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowYmlELSpringBootTest.java +++ b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowYmlELSpringBootTest.java @@ -19,7 +19,6 @@ import org.noear.solon.test.annotation.TestPropertySource; */ @RunWith(SolonJUnit4ClassRunner.class) @TestPropertySource(value = "classpath:/subflow/application-yml.properties") -@Import(scanPackages = {"com.yomahub.liteflow.test.subflow.cmp1"}) public class SubflowYmlELSpringBootTest extends BaseTest { @Inject private FlowExecutor flowExecutor; diff --git a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowJsonELSpringBootTest.java b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/SubflowJsonELSpringBootTest.java similarity index 87% rename from liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowJsonELSpringBootTest.java rename to liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/SubflowJsonELSpringBootTest.java index be0bf2a6b..1702ce0f7 100644 --- a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow/SubflowJsonELSpringBootTest.java +++ b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/SubflowJsonELSpringBootTest.java @@ -1,4 +1,4 @@ -package com.yomahub.liteflow.test.subflow; +package com.yomahub.liteflow.test.subflow2; import com.yomahub.liteflow.core.FlowExecutor; import com.yomahub.liteflow.flow.LiteflowResponse; @@ -6,7 +6,6 @@ import com.yomahub.liteflow.test.BaseTest; import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; -import org.noear.solon.annotation.Import; import org.noear.solon.annotation.Inject; import org.noear.solon.test.SolonJUnit4ClassRunner; import org.noear.solon.test.annotation.TestPropertySource; @@ -19,7 +18,6 @@ import org.noear.solon.test.annotation.TestPropertySource; */ @RunWith(SolonJUnit4ClassRunner.class) @TestPropertySource(value = "classpath:/subflow/application-json.properties") -@Import(scanPackages = {"com.yomahub.liteflow.test.subflow.cmp1"}) public class SubflowJsonELSpringBootTest extends BaseTest { @Inject private FlowExecutor flowExecutor; diff --git a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/ACmp.java b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/ACmp.java new file mode 100644 index 000000000..720376df0 --- /dev/null +++ b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/ACmp.java @@ -0,0 +1,13 @@ +package com.yomahub.liteflow.test.subflow2.cmp1; + +import com.yomahub.liteflow.core.NodeComponent; +import org.noear.solon.annotation.Component; + + +@Component("a") +public class ACmp extends NodeComponent { + @Override + public void process() { + System.out.println("Acomp executed!"); + } +} diff --git a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/BCmp.java b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/BCmp.java new file mode 100644 index 000000000..e72e220f2 --- /dev/null +++ b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/BCmp.java @@ -0,0 +1,13 @@ +package com.yomahub.liteflow.test.subflow2.cmp1; + +import com.yomahub.liteflow.core.NodeComponent; +import org.noear.solon.annotation.Component; + + +@Component("b") +public class BCmp extends NodeComponent { + @Override + public void process() { + System.out.println("Bcomp executed!"); + } +} diff --git a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/CCmp.java b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/CCmp.java new file mode 100644 index 000000000..0bfbee60f --- /dev/null +++ b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/CCmp.java @@ -0,0 +1,13 @@ +package com.yomahub.liteflow.test.subflow2.cmp1; + +import com.yomahub.liteflow.core.NodeComponent; +import org.noear.solon.annotation.Component; + + +@Component("c") +public class CCmp extends NodeComponent { + @Override + public void process() throws Exception { + System.out.println("Ccomp executed!"); + } +} diff --git a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/DCmp.java b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/DCmp.java new file mode 100644 index 000000000..e2e43805d --- /dev/null +++ b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/DCmp.java @@ -0,0 +1,13 @@ +package com.yomahub.liteflow.test.subflow2.cmp1; + +import com.yomahub.liteflow.core.NodeComponent; +import org.noear.solon.annotation.Component; + + +@Component("d") +public class DCmp extends NodeComponent { + @Override + public void process() throws Exception { + System.out.println("Dcomp executed!"); + } +} diff --git a/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/ECmp.java b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/ECmp.java new file mode 100644 index 000000000..361455157 --- /dev/null +++ b/liteflow-testcase-el/liteflow-testcase-el-solon/src/test/java/com/yomahub/liteflow/test/subflow2/cmp1/ECmp.java @@ -0,0 +1,14 @@ +package com.yomahub.liteflow.test.subflow2.cmp1; + +import com.yomahub.liteflow.core.NodeComponent; +import org.noear.solon.annotation.Component; + + +@Component("e") +public class ECmp extends NodeComponent { + + @Override + public void process() throws Exception { + System.out.println("Ecomp executed!"); + } +} diff --git a/pom.xml b/pom.xml index cebcbbc0b..56deab30a 100644 --- a/pom.xml +++ b/pom.xml @@ -65,7 +65,7 @@ 1.8.13 1.2.3 - 1.11.7-M1 + 1.11.7-M2 4.1.84.Final 31.1-jre