diff --git a/rec-common/src/main/java/cn/icanci/rec/common/enums/DataSourceTypeEnum.java b/rec-common/src/main/java/cn/icanci/rec/common/enums/DataSourceTypeEnum.java index 03e5b6ab9bafaf0fbd49b3c6d3721ce0de3e9601..55c4d23f7ebad68a50b71d691f569607f3539401 100644 --- a/rec-common/src/main/java/cn/icanci/rec/common/enums/DataSourceTypeEnum.java +++ b/rec-common/src/main/java/cn/icanci/rec/common/enums/DataSourceTypeEnum.java @@ -16,10 +16,12 @@ public enum DataSourceTypeEnum { * HTTP */ HTTP("HTTP", "HTTP"), - /** - * SQL - */ - SQL("SQL", "SQL"), + + // SQL 的方式需要动态加载数据源、数据库等,第一发行版暂不处理 + // /** + // * SQL + // */ + // SQL("SQL", "SQL"), ; diff --git a/rec-common/src/main/java/cn/icanci/rec/common/utils/DateFormatUtils.java b/rec-common/src/main/java/cn/icanci/rec/common/utils/DateFormatUtils.java new file mode 100644 index 0000000000000000000000000000000000000000..6db0a6cf90df7c28911a326e04cf346e244dc93f --- /dev/null +++ b/rec-common/src/main/java/cn/icanci/rec/common/utils/DateFormatUtils.java @@ -0,0 +1,10 @@ +package cn.icanci.rec.common.utils; + +/** + * TODO 为脚本执行提供一些公共的日期方法 + * + * @author icanci + * @since 1.0 Created in 2022/11/13 15:23 + */ +public class DateFormatUtils { +} diff --git a/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/RecRuleEngineActuator.java b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/RecRuleEngineActuator.java new file mode 100644 index 0000000000000000000000000000000000000000..13ae89779ae3936d129df20e613d342f2848b8c5 --- /dev/null +++ b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/RecRuleEngineActuator.java @@ -0,0 +1,20 @@ +package cn.icanci.rec.engine.sdk; + +import cn.icanci.rec.engine.sdk.actuator.RuleEngineRequest; +import cn.icanci.rec.engine.sdk.actuator.RuleEngineResponse; + +/** + * 规则引擎执行器入口 + * + * @author icanci + * @since 1.0 Created in 2022/11/13 15:18 + */ +public interface RecRuleEngineActuator { + /** + * 执行器执行 + * + * @param request request + * @return 返回执行结果 + */ + RuleEngineResponse executor(RuleEngineRequest request); +} diff --git a/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/actuator/RecRuleEngineActuatorImpl.java b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/actuator/RecRuleEngineActuatorImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..7fff05b78869ca706229dc3bbcacfbc7ea75f28f --- /dev/null +++ b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/actuator/RecRuleEngineActuatorImpl.java @@ -0,0 +1,15 @@ +package cn.icanci.rec.engine.sdk.actuator; + +import cn.icanci.rec.engine.sdk.RecRuleEngineActuator; + +/** + * @author icanci + * @since 1.0 Created in 2022/11/13 15:21 + */ +public class RecRuleEngineActuatorImpl implements RecRuleEngineActuator { + + @Override + public RuleEngineResponse executor(RuleEngineRequest request) { + return null; + } +} diff --git a/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/actuator/RuleEngineRequest.java b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/actuator/RuleEngineRequest.java new file mode 100644 index 0000000000000000000000000000000000000000..606f28c4592a50307e462e3be7ef4bb3fa81a651 --- /dev/null +++ b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/actuator/RuleEngineRequest.java @@ -0,0 +1,48 @@ +package cn.icanci.rec.engine.sdk.actuator; + +import java.io.Serializable; +import java.util.Map; + +/** + * 执行引擎执行请求参数 + * + * @author icanci + * @since 1.0 Created in 2022/11/13 15:22 + */ +public class RuleEngineRequest implements Serializable { + + private static final long serialVersionUID = -2598161333711352719L; + + /** 输入参数 Map 格式 */ + private Map parameters; + + /** 域 */ + private String domainCode; + + /** 场景编码 */ + private String sceneCode; + + public Map getParameters() { + return parameters; + } + + public void setParameters(Map parameters) { + this.parameters = parameters; + } + + public String getDomainCode() { + return domainCode; + } + + public void setDomainCode(String domainCode) { + this.domainCode = domainCode; + } + + public String getSceneCode() { + return sceneCode; + } + + public void setSceneCode(String sceneCode) { + this.sceneCode = sceneCode; + } +} diff --git a/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/actuator/RuleEngineResponse.java b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/actuator/RuleEngineResponse.java new file mode 100644 index 0000000000000000000000000000000000000000..555eafa1c72f23e6a6340858a7c7b5f04fd4eb44 --- /dev/null +++ b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/actuator/RuleEngineResponse.java @@ -0,0 +1,13 @@ +package cn.icanci.rec.engine.sdk.actuator; + +import java.io.Serializable; + +/** + * 规则执行器返回结果 + * + * @author icanci + * @since 1.0 Created in 2022/11/13 15:25 + */ +public class RuleEngineResponse implements Serializable { + private static final long serialVersionUID = -4658078915045778725L; +} diff --git a/rec-core/src/main/java/cn/icanci/rec/core/spi/BaseDataSPI.java b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/BaseDataSPI.java similarity index 83% rename from rec-core/src/main/java/cn/icanci/rec/core/spi/BaseDataSPI.java rename to rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/BaseDataSPI.java index c86e1a64a1eaf622f0aa761c182d9c57e370b500..124d802e6bf0ae1f40f53b25cbc3d0e52d4ea1d8 100644 --- a/rec-core/src/main/java/cn/icanci/rec/core/spi/BaseDataSPI.java +++ b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/BaseDataSPI.java @@ -1,4 +1,4 @@ -package cn.icanci.rec.core.spi; +package cn.icanci.rec.engine.sdk.spi; import cn.icanci.rec.common.model.config.BaseDataVO; diff --git a/rec-core/src/main/java/cn/icanci/rec/core/spi/DataSourceSPI.java b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/DataSourceSPI.java similarity index 83% rename from rec-core/src/main/java/cn/icanci/rec/core/spi/DataSourceSPI.java rename to rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/DataSourceSPI.java index 9a37b8934329bea78244ec6996f8b1df3c3d64b5..91f3e8cc6ae64061c42da1498181b119c451f6cc 100644 --- a/rec-core/src/main/java/cn/icanci/rec/core/spi/DataSourceSPI.java +++ b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/DataSourceSPI.java @@ -1,4 +1,4 @@ -package cn.icanci.rec.core.spi; +package cn.icanci.rec.engine.sdk.spi; import cn.icanci.rec.common.model.config.DataSourceVO; diff --git a/rec-core/src/main/java/cn/icanci/rec/core/spi/DomainSPI.java b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/DomainSPI.java similarity index 84% rename from rec-core/src/main/java/cn/icanci/rec/core/spi/DomainSPI.java rename to rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/DomainSPI.java index 3497ccdc8bd87cd22350322597b93492bcb3a9ba..deecd2f2c8487679a233b31bb70825481d21457f 100644 --- a/rec-core/src/main/java/cn/icanci/rec/core/spi/DomainSPI.java +++ b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/DomainSPI.java @@ -1,4 +1,4 @@ -package cn.icanci.rec.core.spi; +package cn.icanci.rec.engine.sdk.spi; import cn.icanci.rec.common.model.config.DomainVO; diff --git a/rec-core/src/main/java/cn/icanci/rec/core/spi/MetadataSPI.java b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/MetadataSPI.java similarity index 83% rename from rec-core/src/main/java/cn/icanci/rec/core/spi/MetadataSPI.java rename to rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/MetadataSPI.java index 70d89521a41ee5fd52a18a314890312d3d887c49..5b879f1366ca42f6a16eec5c12ea6c9fefb04731 100644 --- a/rec-core/src/main/java/cn/icanci/rec/core/spi/MetadataSPI.java +++ b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/MetadataSPI.java @@ -1,4 +1,4 @@ -package cn.icanci.rec.core.spi; +package cn.icanci.rec.engine.sdk.spi; import cn.icanci.rec.common.model.config.MetadataVO; diff --git a/rec-core/src/main/java/cn/icanci/rec/core/spi/RecSupportSPI.java b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/RecSupportSPI.java similarity index 92% rename from rec-core/src/main/java/cn/icanci/rec/core/spi/RecSupportSPI.java rename to rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/RecSupportSPI.java index 6d160fd09f7167bbb00613ca7c84665b5a944d72..0e5556e830dfc4be7a2856ace20f040c389c7311 100644 --- a/rec-core/src/main/java/cn/icanci/rec/core/spi/RecSupportSPI.java +++ b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/RecSupportSPI.java @@ -1,10 +1,10 @@ -package cn.icanci.rec.core.spi; - -import cn.icanci.rec.common.model.config.BaseVO; +package cn.icanci.rec.engine.sdk.spi; import java.util.List; import java.util.Set; +import cn.icanci.rec.common.model.config.BaseVO; + /** * @author icanci * @since 1.0 Created in 2022/11/13 09:11 diff --git a/rec-core/src/main/java/cn/icanci/rec/core/spi/SceneSPI.java b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/SceneSPI.java similarity index 82% rename from rec-core/src/main/java/cn/icanci/rec/core/spi/SceneSPI.java rename to rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/SceneSPI.java index 5aa4ae836c516e2481922b3b009d90a8e7b79efe..3f4b14188633e973e53f99d595cb168dbcbe1d02 100644 --- a/rec-core/src/main/java/cn/icanci/rec/core/spi/SceneSPI.java +++ b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/SceneSPI.java @@ -1,4 +1,4 @@ -package cn.icanci.rec.core.spi; +package cn.icanci.rec.engine.sdk.spi; import cn.icanci.rec.common.model.config.SceneVO; diff --git a/rec-core/src/main/java/cn/icanci/rec/core/spi/StrategySPI.java b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/StrategySPI.java similarity index 83% rename from rec-core/src/main/java/cn/icanci/rec/core/spi/StrategySPI.java rename to rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/StrategySPI.java index 732b8ca2602bd43ed42a5edefd6fa3afc2c71bd2..6c382d9836007cdd8c89959276d65aa4abc9acf0 100644 --- a/rec-core/src/main/java/cn/icanci/rec/core/spi/StrategySPI.java +++ b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/StrategySPI.java @@ -1,4 +1,4 @@ -package cn.icanci.rec.core.spi; +package cn.icanci.rec.engine.sdk.spi; import cn.icanci.rec.common.model.config.StrategyVO; diff --git a/rec-core/src/main/java/cn/icanci/rec/core/spi/http/HttpDomainSPI.java b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/http/HttpDomainSPI.java similarity index 72% rename from rec-core/src/main/java/cn/icanci/rec/core/spi/http/HttpDomainSPI.java rename to rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/http/HttpDomainSPI.java index 4ebeb0d443eb0629eb53616b645c42a65f23d365..83e1ca12ea09b544effde019a9d510fe851b4610 100644 --- a/rec-core/src/main/java/cn/icanci/rec/core/spi/http/HttpDomainSPI.java +++ b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/http/HttpDomainSPI.java @@ -1,18 +1,15 @@ -package cn.icanci.rec.core.spi.http; +package cn.icanci.rec.engine.sdk.spi.http; import cn.icanci.rec.common.model.config.DomainVO; -import cn.icanci.rec.core.spi.DomainSPI; +import cn.icanci.rec.engine.sdk.spi.DomainSPI; import java.util.List; import java.util.Set; -import org.springframework.stereotype.Service; - /** * @author icanci * @since 1.0 Created in 2022/11/13 09:18 */ -@Service("httpDomainSPI") public class HttpDomainSPI implements DomainSPI { @Override diff --git a/rec-core/src/main/java/cn/icanci/rec/core/spi/mongo/MongoDomainSPI.java b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/mongo/MongoDomainSPI.java similarity index 72% rename from rec-core/src/main/java/cn/icanci/rec/core/spi/mongo/MongoDomainSPI.java rename to rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/mongo/MongoDomainSPI.java index 038c2dd7bb695ba2cf43fea75f389a24bd99e4e9..ed84246c7a1aee88f0a6dd38e374bb57cf7b596a 100644 --- a/rec-core/src/main/java/cn/icanci/rec/core/spi/mongo/MongoDomainSPI.java +++ b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/mongo/MongoDomainSPI.java @@ -1,18 +1,15 @@ -package cn.icanci.rec.core.spi.mongo; +package cn.icanci.rec.engine.sdk.spi.mongo; import cn.icanci.rec.common.model.config.DomainVO; -import cn.icanci.rec.core.spi.DomainSPI; +import cn.icanci.rec.engine.sdk.spi.DomainSPI; import java.util.List; import java.util.Set; -import org.springframework.stereotype.Service; - /** * @author icanci * @since 1.0 Created in 2022/11/13 09:19 */ -@Service("mongoDomainSPI") public class MongoDomainSPI implements DomainSPI { @Override public List load(Set domains) { diff --git a/rec-core/src/main/java/cn/icanci/rec/core/spi/package-info.java b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/package-info.java similarity index 86% rename from rec-core/src/main/java/cn/icanci/rec/core/spi/package-info.java rename to rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/package-info.java index 868d6b69c0e64e83df749e51132b36cb53cc5868..ae3f1b376b20dd88a5b20b7c5d4e89c083d54025 100644 --- a/rec-core/src/main/java/cn/icanci/rec/core/spi/package-info.java +++ b/rec-engine/rec-engine-sdk/src/main/java/cn/icanci/rec/engine/sdk/spi/package-info.java @@ -6,4 +6,4 @@ * @author icanci * @since 1.0 Created in 2022/11/13 09:19 */ -package cn.icanci.rec.core.spi; \ No newline at end of file +package cn.icanci.rec.engine.sdk.spi; \ No newline at end of file