sql 插件代码规范调整

This commit is contained in:
gaibu
2023-09-28 16:51:33 +08:00
parent 9b585b4fc6
commit 50c86aa029
12 changed files with 75 additions and 68 deletions

View File

@@ -1,12 +1,11 @@
package com.yomahub.liteflow.parser.constant;
/**
* Copyright (C), 2021, 北京同创永益科技发展有限公司
* sql 类型枚举
*
* @author tangkc
* @version 3.0.0
* @description
* @date 2023/9/28 11:43
* @author tangkc huxinyu
* @date 2023/9/28 11:49
* @since 2.11.1
*/
public enum ReadType {
CHAIN,

View File

@@ -1,12 +1,11 @@
package com.yomahub.liteflow.parser.constant;
/**
* Copyright (C), 2021, 北京同创永益科技发展有限公司
* sql 读取常量类
*
* @author tangkc
* @version 3.0.0
* @description
* @date 2023/9/28 11:42
* @author tangkc huxinyu
* @date 2023/9/28 11:49
* @since 2.11.1
*/
public class SqlReadConstant {

View File

@@ -1,7 +1,6 @@
package com.yomahub.liteflow.parser.sql.polling;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.digest.DigestUtil;
import com.yomahub.liteflow.parser.sql.exception.ELSQLException;
@@ -14,12 +13,11 @@ import java.util.Map;
import java.util.Set;
/**
* Copyright (C), 2021, 北京同创永益科技发展有限公司
* sql 轮询任务抽象类,维护公共方法
*
* @author tangkc
* @version 3.0.0
* @description
* @date 2023/9/28 14:12
* @author tangkc huxinyu
* @date 2023/9/28 11:49
* @since 2.11.1
*/
public abstract class AbstractSqlReadPollTask implements SqlReadPollTask {
private final Map<String/*唯一键*/, String/*data-xml的sha1值*/> DATA_SHA_MAP;

View File

@@ -3,16 +3,21 @@ package com.yomahub.liteflow.parser.sql.polling;
import com.yomahub.liteflow.parser.constant.ReadType;
/**
* Copyright (C), 2021, 北京同创永益科技发展有限公司
* sql 轮询任务接口
*
* @author tangkc
* @version 3.0.0
* @description
* @date 2023/9/28 14:10
* @author tangkc huxinyu
* @date 2023/9/28 11:49
* @since 2.11.1
*/
public interface SqlReadPollTask {
/**
* 执行
*/
void execute();
/**
* 类型
*/
ReadType type();
}

View File

@@ -3,27 +3,18 @@ package com.yomahub.liteflow.parser.sql.polling.impl;
import com.yomahub.liteflow.builder.el.LiteFlowChainELBuilder;
import com.yomahub.liteflow.flow.FlowBus;
import com.yomahub.liteflow.parser.constant.ReadType;
import com.yomahub.liteflow.parser.helper.ParserHelper;
import com.yomahub.liteflow.parser.sql.polling.AbstractSqlReadPollTask;
import com.yomahub.liteflow.parser.sql.polling.SqlReadPollTask;
import com.yomahub.liteflow.parser.sql.read.SqlRead;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import static com.yomahub.liteflow.common.ChainConstant.ID;
import static com.yomahub.liteflow.common.ChainConstant.NAME;
/**
* Copyright (C), 2021, 北京同创永益科技发展有限公司
* chain 读取任务
*
* @author tangkc
* @version 3.0.0
* @description
* @date 2023/9/28 14:46
* @author tangkc huxinyu
* @date 2023/9/28 11:49
* @since 2.11.1
*/
public class ChainReadPollTask extends AbstractSqlReadPollTask {

View File

@@ -10,12 +10,11 @@ import java.util.List;
import java.util.Map;
/**
* Copyright (C), 2021, 北京同创永益科技发展有限公司
* 脚本轮询任务
*
* @author tangkc
* @version 3.0.0
* @description
* @date 2023/9/28 15:03
* @author tangkc huxinyu
* @date 2023/9/28 11:49
* @since 2.11.1
*/
public class ScriptReadPollTask extends AbstractSqlReadPollTask {
public ScriptReadPollTask(Map<String, String> dataMap, SqlRead read) {

View File

@@ -5,7 +5,6 @@ import com.yomahub.liteflow.log.LFLog;
import com.yomahub.liteflow.log.LFLoggerManager;
import com.yomahub.liteflow.parser.constant.SqlReadConstant;
import com.yomahub.liteflow.parser.sql.exception.ELSQLException;
import com.yomahub.liteflow.parser.sql.read.impl.ScriptRead;
import com.yomahub.liteflow.parser.sql.util.LiteFlowJdbcUtil;
import com.yomahub.liteflow.parser.sql.vo.SQLParserVO;
@@ -17,12 +16,11 @@ import java.util.HashMap;
import java.util.Map;
/**
* Copyright (C), 2021, 北京同创永益科技发展有限公司
* sql 读取抽象类,维护公共方法
*
* @author tangkc
* @version 3.0.0
* @description
* @date 2023/9/28 11:26
* @author tangkc huxinyu
* @date 2023/9/28 11:49
* @since 2.11.1
*/
public abstract class AbstractSqlRead implements SqlRead {
public final SQLParserVO config;

View File

@@ -5,16 +5,21 @@ import com.yomahub.liteflow.parser.constant.ReadType;
import java.util.Map;
/**
* Copyright (C), 2021, 北京同创永益科技发展有限公司
* sql 读取接口
*
* @author tangkc
* @version 3.0.0
* @description
* @date 2023/9/28 11:25
* @author tangkc huxinyu
* @date 2023/9/28 11:49
* @since 2.11.1
*/
public interface SqlRead {
/**
* 读取
*/
Map<String/*规则唯一键*/, String/*规则内容*/> read();
/**
* 类型
*/
ReadType type();
}

View File

@@ -12,12 +12,11 @@ import java.util.HashMap;
import java.util.Map;
/**
* Copyright (C), 2021, 北京同创永益科技发展有限公司
* sql 读取工厂类
*
* @author tangkc
* @version 3.0.0
* @description
* @date 2023/9/28 15:42
* @author tangkc huxinyu
* @date 2023/9/28 11:49
* @since 2.11.1
*/
public class SqlReadFactory {
private static final Map<ReadType, SqlRead> READ_MAP = new HashMap<>();

View File

@@ -1,7 +1,6 @@
package com.yomahub.liteflow.parser.sql.read.impl;
import cn.hutool.core.util.StrUtil;
import cn.hutool.core.util.XmlUtil;
import com.yomahub.liteflow.parser.constant.ReadType;
import com.yomahub.liteflow.parser.constant.SqlReadConstant;
import com.yomahub.liteflow.parser.sql.exception.ELSQLException;
@@ -12,12 +11,11 @@ import java.sql.ResultSet;
import java.sql.SQLException;
/**
* Copyright (C), 2021, 北京同创永益科技发展有限公司
* chain 读取
*
* @author tangkc
* @version 3.0.0
* @description
* @date 2023/9/28 11:44
* @author tangkc huxinyu
* @date 2023/9/28 11:49
* @since 2.11.1
*/
public class ChainRead extends AbstractSqlRead {

View File

@@ -2,11 +2,8 @@ package com.yomahub.liteflow.parser.sql.read.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.core.util.XmlUtil;
import com.yomahub.liteflow.enums.NodeTypeEnum;
import com.yomahub.liteflow.enums.ScriptTypeEnum;
import com.yomahub.liteflow.log.LFLog;
import com.yomahub.liteflow.log.LFLoggerManager;
import com.yomahub.liteflow.parser.constant.ReadType;
import com.yomahub.liteflow.parser.constant.SqlReadConstant;
import com.yomahub.liteflow.parser.sql.exception.ELSQLException;
@@ -21,12 +18,11 @@ import java.util.List;
import java.util.Objects;
/**
* Copyright (C), 2021, 北京同创永益科技发展有限公司
* 脚本读取
*
* @author tangkc
* @version 3.0.0
* @description
* @author tangkc huxinyu
* @date 2023/9/28 11:49
* @since 2.11.1
*/
public class ScriptRead extends AbstractSqlRead {

View File

@@ -74,6 +74,8 @@ public class SQLWithXmlELSpringbootPollingTest extends BaseTest {
insertData();
Thread.sleep(4000);
Assertions.assertEquals("a==>b", flowExecutor.execute2Resp("chain5", "arg").getExecuteStepStr());
}
@@ -99,6 +101,24 @@ public class SQLWithXmlELSpringbootPollingTest extends BaseTest {
Assertions.assertEquals("hello", context.getData("test"));
}
/**
* 删除chain数据
*/
private void deleteData(){
LiteflowConfig liteflowConfig = LiteflowConfigGetter.get();
SQLParserVO sqlParserVO = JsonUtil.parseObject(liteflowConfig.getRuleSourceExtData(), SQLParserVO.class);
Connection connection;
try {
connection = DriverManager.getConnection(sqlParserVO.getUrl(), sqlParserVO.getUsername(),
sqlParserVO.getPassword());
Statement statement = connection.createStatement();
statement.executeUpdate("DELETE FROM EL_TABLE WHERE chain_name='chain1'");
}
catch (SQLException e) {
throw new ELSQLException(e.getMessage());
}
}
/**
* 修改chain数据
*/