From 4ed56dc04125e267e13732c5acf93b2e2e4dc5dc Mon Sep 17 00:00:00 2001
From: gaibu <1016771049@qq.com>
Date: Sat, 27 Jul 2024 22:40:54 +0800
Subject: [PATCH] =?UTF-8?q?enhancement=20#IAF4NJ=20=E5=A2=9E=E5=8A=A0=20li?=
=?UTF-8?q?teflow-rule-sql=20=E5=8D=95=E5=85=83=E6=B5=8B=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../config/LiteflowMainAutoConfiguration.java | 2 +-
.../liteflow-testcase-el-sql-solon/pom.xml | 107 ++++++++++++++++++
.../com/yomahub/liteflow/test/BaseTest.java | 21 ++++
.../test/def/SQLWithXmlELSpringbootTest.java | 32 ++++++
.../yomahub/liteflow/test/def/cmp/ACmp.java | 21 ++++
.../yomahub/liteflow/test/def/cmp/BCmp.java | 21 ++++
.../yomahub/liteflow/test/def/cmp/CCmp.java | 21 ++++
.../src/test/resources/application.properties | 21 ++++
.../src/test/resources/sql/data.sql | 16 +++
.../src/test/resources/sql/schema.sql | 22 ++++
liteflow-testcase-el/pom.xml | 1 +
11 files changed, 284 insertions(+), 1 deletion(-)
create mode 100644 liteflow-testcase-el/liteflow-testcase-el-sql-solon/pom.xml
create mode 100644 liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/java/com/yomahub/liteflow/test/BaseTest.java
create mode 100644 liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/java/com/yomahub/liteflow/test/def/SQLWithXmlELSpringbootTest.java
create mode 100644 liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/java/com/yomahub/liteflow/test/def/cmp/ACmp.java
create mode 100644 liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/java/com/yomahub/liteflow/test/def/cmp/BCmp.java
create mode 100644 liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/java/com/yomahub/liteflow/test/def/cmp/CCmp.java
create mode 100644 liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/resources/application.properties
create mode 100644 liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/resources/sql/data.sql
create mode 100644 liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/resources/sql/schema.sql
diff --git a/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/config/LiteflowMainAutoConfiguration.java b/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/config/LiteflowMainAutoConfiguration.java
index 319ed9edf..2398202a6 100644
--- a/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/config/LiteflowMainAutoConfiguration.java
+++ b/liteflow-solon-plugin/src/main/java/com/yomahub/liteflow/solon/config/LiteflowMainAutoConfiguration.java
@@ -18,7 +18,7 @@ import org.noear.solon.core.AppContext;
@Configuration
public class LiteflowMainAutoConfiguration {
- @Inject(value = "${liteflow.parseOnStart}", required = false)
+ @Inject(value = "${liteflow.parseOnStart:true}", required = false)
boolean parseOnStart;
@Inject
diff --git a/liteflow-testcase-el/liteflow-testcase-el-sql-solon/pom.xml b/liteflow-testcase-el/liteflow-testcase-el-sql-solon/pom.xml
new file mode 100644
index 000000000..33e2bc582
--- /dev/null
+++ b/liteflow-testcase-el/liteflow-testcase-el-sql-solon/pom.xml
@@ -0,0 +1,107 @@
+
+
Title: liteflow
+ *Description: 轻量级的组件式流程框架
+ * @author Bryan.Zhang + * @email weenyc31@163.com + * @Date 2020/4/1 + */ +package com.yomahub.liteflow.test.def.cmp; + +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("ACmp executed!"); + } + +} diff --git a/liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/java/com/yomahub/liteflow/test/def/cmp/BCmp.java b/liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/java/com/yomahub/liteflow/test/def/cmp/BCmp.java new file mode 100644 index 000000000..c1a5c5612 --- /dev/null +++ b/liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/java/com/yomahub/liteflow/test/def/cmp/BCmp.java @@ -0,0 +1,21 @@ +/** + *Title: liteflow
+ *Description: 轻量级的组件式流程框架
+ * @author Bryan.Zhang + * @email weenyc31@163.com + * @Date 2020/4/1 + */ +package com.yomahub.liteflow.test.def.cmp; + +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("BCmp executed!"); + } + +} diff --git a/liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/java/com/yomahub/liteflow/test/def/cmp/CCmp.java b/liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/java/com/yomahub/liteflow/test/def/cmp/CCmp.java new file mode 100644 index 000000000..29502f361 --- /dev/null +++ b/liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/java/com/yomahub/liteflow/test/def/cmp/CCmp.java @@ -0,0 +1,21 @@ +/** + *Title: liteflow
+ *Description: 轻量级的组件式流程框架
+ * @author Bryan.Zhang + * @email weenyc31@163.com + * @Date 2020/4/1 + */ +package com.yomahub.liteflow.test.def.cmp; + +import com.yomahub.liteflow.core.NodeComponent; +import org.noear.solon.annotation.Component; + +@Component("c") +public class CCmp extends NodeComponent { + + @Override + public void process() { + System.out.println("CCmp executed!"); + } + +} diff --git a/liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/resources/application.properties b/liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/resources/application.properties new file mode 100644 index 000000000..7374e9fed --- /dev/null +++ b/liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/resources/application.properties @@ -0,0 +1,21 @@ +liteflow.rule-source-ext-data-map.url=jdbc:h2:mem:test_db;MODE=MySQL;INIT=RUNSCRIPT FROM 'classpath:sql/schema.sql'\\;RUNSCRIPT FROM 'classpath:sql/data.sql' +liteflow.rule-source-ext-data-map.driverClassName=org.h2.Driver +liteflow.rule-source-ext-data-map.username=root +liteflow.rule-source-ext-data-map.password=123456 +liteflow.rule-source-ext-data-map.applicationName=demo +liteflow.rule-source-ext-data-map.sqlLogEnabled=true +liteflow.rule-source-ext-data-map.pollingEnabled=true +liteflow.rule-source-ext-data-map.pollingIntervalSeconds=60 +liteflow.rule-source-ext-data-map.pollingStartSeconds=60 +liteflow.rule-source-ext-data-map.chainTableName=EL_TABLE +liteflow.rule-source-ext-data-map.chainApplicationNameField=application_name +liteflow.rule-source-ext-data-map.chainNameField=chain_name +liteflow.rule-source-ext-data-map.elDataField=EL_DATA +liteflow.rule-source-ext-data-map.namespaceField=namespace +liteflow.rule-source-ext-data-map.scriptTableName=script_node_table +liteflow.rule-source-ext-data-map.scriptApplicationNameField=application_name +liteflow.rule-source-ext-data-map.scriptIdField=script_node_id +liteflow.rule-source-ext-data-map.scriptNameField=script_node_name +liteflow.rule-source-ext-data-map.scriptDataField=script_node_data +liteflow.rule-source-ext-data-map.scriptTypeField=script_node_type +liteflow.rule-source-ext-data-map.scriptLanguageField=script_language \ No newline at end of file diff --git a/liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/resources/sql/data.sql b/liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/resources/sql/data.sql new file mode 100644 index 000000000..e885458bf --- /dev/null +++ b/liteflow-testcase-el/liteflow-testcase-el-sql-solon/src/test/resources/sql/data.sql @@ -0,0 +1,16 @@ +DELETE FROM EL_TABLE; + +INSERT INTO EL_TABLE (APPLICATION_NAME,CHAIN_NAME,EL_DATA) values ('demo','chain1','THEN(a, b, c);'); +INSERT INTO EL_TABLE (APPLICATION_NAME,CHAIN_NAME,EL_DATA) values ('demo','chain2','IF(x1, THEN(a, b));'); +INSERT INTO EL_TABLE (APPLICATION_NAME,CHAIN_NAME,EL_DATA) values ('demo','chain3','IF(x0, THEN(a, b));'); +INSERT INTO EL_TABLE (APPLICATION_NAME,CHAIN_NAME,EL_DATA) values ('demo','