diff --git a/runtime-api/pom.xml b/runtime-api/pom.xml
index baa4d415fa7f125dd4de06700db58e7e461bdfb4..e23555f43fcfb81af1ab24908f3c36dc51dba0f5 100644
--- a/runtime-api/pom.xml
+++ b/runtime-api/pom.xml
@@ -23,9 +23,15 @@
com.inspur.edp
${custom.version}
+
4.0.0
web-jitengine-runtimebuild-api
-
+
+
+ com.inspur.edp
+ web-jitengine-common
+
+
diff --git a/runtime-api/src/main/java/com/inspur/edp/web/jitruntimebuild/api/entity/JitBuildParameter.java b/runtime-api/src/main/java/com/inspur/edp/web/jitruntimebuild/api/entity/JitBuildParameter.java
index 44e0497762c47afad765bb26a8dd230f46a3cacb..0974b2e554a6d4f96558d395730787134bef1842 100644
--- a/runtime-api/src/main/java/com/inspur/edp/web/jitruntimebuild/api/entity/JitBuildParameter.java
+++ b/runtime-api/src/main/java/com/inspur/edp/web/jitruntimebuild/api/entity/JitBuildParameter.java
@@ -16,6 +16,8 @@
package com.inspur.edp.web.jitruntimebuild.api.entity;
+import com.inspur.edp.web.common.JITEngineConstants;
+
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -70,13 +72,13 @@ public class JitBuildParameter {
* webdev 文件目录名称 默认为webdev
* 该参数默认不需要任何更改,仅当需要调整存放目录时进行调整
*/
- private String webDevPathName = "webdev";
+ private String webDevPathName = JITEngineConstants.WebDevPathName;
/**
* node_modules 路径名称
* 该参数默认不需要任何更改,仅当node_modules文件夹名称发生变化时进行调整。
*/
- private String node_ModulesName = "node_modules";
+ private String node_ModulesName = JITEngineConstants.Node_ModulesPathName;
/**
* 生成表单ts源代码文件目录
diff --git a/runtime-api/src/main/java/com/inspur/edp/web/jitruntimebuild/api/entity/JitBuildRefMetadata.java b/runtime-api/src/main/java/com/inspur/edp/web/jitruntimebuild/api/entity/JitBuildRefMetadata.java
index 0d9ff9fbd7357731544bd46ea85683b0a4d622b8..2a47cbfa0eb9a2ea98b213e092f9299d80e4be41 100644
--- a/runtime-api/src/main/java/com/inspur/edp/web/jitruntimebuild/api/entity/JitBuildRefMetadata.java
+++ b/runtime-api/src/main/java/com/inspur/edp/web/jitruntimebuild/api/entity/JitBuildRefMetadata.java
@@ -16,6 +16,8 @@
package com.inspur.edp.web.jitruntimebuild.api.entity;
+import com.inspur.edp.web.common.metadata.MetadataTypeEnum;
+
/**
* description:
*
@@ -31,7 +33,7 @@ public class JitBuildRefMetadata {
/**
* 元数据类型
*/
- private JitMetadataTypeEnum metadataType;
+ private MetadataTypeEnum metadataType;
public String getContent() {
return content;
@@ -41,11 +43,11 @@ public class JitBuildRefMetadata {
this.content = content;
}
- public JitMetadataTypeEnum getMetadataType() {
+ public MetadataTypeEnum getMetadataType() {
return metadataType;
}
- public void setMetadataType(JitMetadataTypeEnum metadataType) {
+ public void setMetadataType(MetadataTypeEnum metadataType) {
this.metadataType = metadataType;
}
diff --git a/runtime-api/src/main/java/com/inspur/edp/web/jitruntimebuild/api/entity/JitMetadataTypeEnum.java b/runtime-api/src/main/java/com/inspur/edp/web/jitruntimebuild/api/entity/JitMetadataTypeEnum.java
deleted file mode 100644
index 0b46e283ee22450138023fd87714d80c01c513e5..0000000000000000000000000000000000000000
--- a/runtime-api/src/main/java/com/inspur/edp/web/jitruntimebuild/api/entity/JitMetadataTypeEnum.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.inspur.edp.web.jitruntimebuild.api.entity;
-
-/**
- * 运行时依赖元数据类型
- * @author guozhiqi
- */
-public enum JitMetadataTypeEnum {
- /**
- * 表单元数据
- */
- Frm,
- /**
- * eapi 元数据
- */
- Eapi,
- /**
- * 资源元数据
- */
- Resource,
- /**
- * 状态机元数据
- */
- StateMachine,
- /**
- * 命令元数据
- */
- Command,
- /**
- * 页面流
- */
- Route
-}
diff --git a/runtime-api/src/main/java/com/inspur/edp/web/jitruntimebuild/api/entity/JitRuntimeConstant.java b/runtime-api/src/main/java/com/inspur/edp/web/jitruntimebuild/api/entity/JitRuntimeConstant.java
deleted file mode 100644
index d8b5f055a5bd01e79347f35c058fe07cc1d18c34..0000000000000000000000000000000000000000
--- a/runtime-api/src/main/java/com/inspur/edp/web/jitruntimebuild/api/entity/JitRuntimeConstant.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.inspur.edp.web.jitruntimebuild.api.entity;
-
-/**
- * jit运行时定制常量参数
- */
-public class JitRuntimeConstant {
-
-}
diff --git a/runtime-core/pom.xml b/runtime-core/pom.xml
index f3a78724144a9d8ffeee53481783ced6a3e3e64a..e709803c4464223b6bf9e90b6e2737e6de151142 100644
--- a/runtime-core/pom.xml
+++ b/runtime-core/pom.xml
@@ -76,5 +76,6 @@
com.inspur.edp
web-sourcecode-metadata
+
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/builddeploy/BuildDeployManager.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/builddeploy/BuildDeployManager.java
index bbc78e758af27377218382ad3a40b637fae93aec..d7052e61b0811fc5afb06273d9b7e193705ffa8e 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/builddeploy/BuildDeployManager.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/builddeploy/BuildDeployManager.java
@@ -16,15 +16,16 @@
package com.inspur.edp.web.jitruntimebuild.core.builddeploy;
+import com.inspur.edp.web.common.JITEngineConstants;
import com.inspur.edp.web.common.io.FileUtility;
import com.inspur.edp.web.common.logger.WebLogger;
import com.inspur.edp.web.jitruntimebuild.api.entity.DeployTargetEnum;
import com.inspur.edp.web.jitruntimebuild.api.entity.JitBuildParameter;
import com.inspur.edp.web.jitruntimebuild.core.utility.JitBuildUtility;
-import com.inspur.edp.web.jitruntimebuild.core.constant.FormJsonFileSuffixConstant;
import com.inspur.edp.web.jitruntimebuild.scriptcache.api.entity.PublishScriptRequest;
+import com.inspur.edp.web.jitruntimebuild.scriptcache.api.service.ScriptCacheService;
import com.inspur.edp.web.jitruntimebuild.scriptcache.localserver.LocalServerPathGenerator;
-import com.inspur.edp.web.jitruntimebuild.scriptcache.service.ScriptCacheServiceImpl;
+import io.iec.edp.caf.commons.utils.SpringBeanUtils;
import io.iec.edp.caf.tenancy.core.context.MultiTenantContextHolder;
/**
@@ -43,33 +44,11 @@ public class BuildDeployManager {
*/
public static void deployForm(JitBuildParameter buildParameter) {
WebLogger.Instance.info("begin deploy form, the formCode is " + buildParameter.getFormCode(), CurrentClassName);
- String strDeployPath = FileUtility.getCurrentWorkPath(buildParameter.isInUpgradeTool()) + (FileUtility.DIRECTORY_SEPARATOR_CHAR +
- "web" + FileUtility.DIRECTORY_SEPARATOR_CHAR +
- buildParameter.getServiceUnitPath() + FileUtility.DIRECTORY_SEPARATOR_CHAR +
- FormJsonFileSuffixConstant.DeployWebPathName + FileUtility.DIRECTORY_SEPARATOR_CHAR
- + buildParameter.getBoCode() + FileUtility.DIRECTORY_SEPARATOR_CHAR +
- buildParameter.getFormName() + JitBuildUtility.getExtraPath(buildParameter.getExtraFormPath())).toLowerCase();
- if (buildParameter.isMobileApp()) {
- strDeployPath = FileUtility.getCurrentWorkPath(buildParameter.isInUpgradeTool()) + (FileUtility.DIRECTORY_SEPARATOR_CHAR +
- "web" + FileUtility.DIRECTORY_SEPARATOR_CHAR +
- buildParameter.getServiceUnitPath() + FileUtility.DIRECTORY_SEPARATOR_CHAR +
- "mob" + FileUtility.DIRECTORY_SEPARATOR_CHAR
- + buildParameter.getBoCode() + JitBuildUtility.getExtraPath(buildParameter.getExtraFormPath())).toLowerCase();
- }
-
- if (buildParameter.isBabelCompile()) {
+ String strDeployPath = getDeployPath(buildParameter);
- strDeployPath = FileUtility.getCurrentWorkPath(buildParameter.isInUpgradeTool()) + (FileUtility.DIRECTORY_SEPARATOR_CHAR +
- "web" + FileUtility.DIRECTORY_SEPARATOR_CHAR +
- buildParameter.getServiceUnitPath() + FileUtility.DIRECTORY_SEPARATOR_CHAR +
- "web" + FileUtility.DIRECTORY_SEPARATOR_CHAR +
- buildParameter.getBoCode() + "forbabelruntime" + FileUtility.DIRECTORY_SEPARATOR_CHAR +
- buildParameter.getFormName() +
- JitBuildUtility.getExtraPath(buildParameter.getExtraFormPath())).toLowerCase();
- }
String strBaseSourcePath = buildParameter.getBuildAppPath() + (FileUtility.DIRECTORY_SEPARATOR_CHAR +
- FormJsonFileSuffixConstant.DistRollupPathName + FileUtility.DIRECTORY_SEPARATOR_CHAR +
+ JITEngineConstants.DistRollupPathName + FileUtility.DIRECTORY_SEPARATOR_CHAR +
buildParameter.getBoCode()).toLowerCase();
if (buildParameter.getDeployTargetEnum() == DeployTargetEnum.Form) {
@@ -84,8 +63,8 @@ public class BuildDeployManager {
WebLogger.Instance.info("deploy form,the source path is " + sourcePath + " , target path is " + strDeployPath, CurrentClassName);
// 部署version.json 文件
- String strSourceVersionPath = strBaseSourcePath + FileUtility.DIRECTORY_SEPARATOR_CHAR + "version.json";
- String strTargetVersionPath = strDeployPath + FileUtility.DIRECTORY_SEPARATOR_CHAR + "version.json";
+ String strSourceVersionPath = FileUtility.combine(strBaseSourcePath, "version.json");
+ String strTargetVersionPath = FileUtility.combine(strDeployPath, "version.json");
if (FileUtility.exists(strSourceVersionPath)) {
FileUtility.copyFile(strSourceVersionPath, strTargetVersionPath, true);
WebLogger.Instance.info("deploy version file success,the source file path is " + strSourceVersionPath + ",the target file path is " + strTargetVersionPath, CurrentClassName);
@@ -115,8 +94,42 @@ public class BuildDeployManager {
publishScript(buildParameter, strDeployPath);
- WebLogger.Instance.info("deploy project success,the deploy path is " + strDeployPath,CurrentClassName);
+ WebLogger.Instance.info("deploy project success,the deploy path is " + strDeployPath, CurrentClassName);
+ }
+ }
+
+ /**
+ * 获取部署路径
+ *
+ * @param buildParameter
+ * @return
+ */
+ private static String getDeployPath(JitBuildParameter buildParameter) {
+ String strDeployPath = FileUtility.getCurrentWorkPath(buildParameter.isInUpgradeTool()) + (FileUtility.DIRECTORY_SEPARATOR_CHAR +
+ "web" + FileUtility.DIRECTORY_SEPARATOR_CHAR +
+ buildParameter.getServiceUnitPath() + FileUtility.DIRECTORY_SEPARATOR_CHAR +
+ JITEngineConstants.DeployWebPathName + FileUtility.DIRECTORY_SEPARATOR_CHAR
+ + buildParameter.getBoCode() + FileUtility.DIRECTORY_SEPARATOR_CHAR +
+ buildParameter.getFormName() + JitBuildUtility.getExtraPath(buildParameter.getExtraFormPath())).toLowerCase();
+ if (buildParameter.isMobileApp()) {
+ strDeployPath = FileUtility.getCurrentWorkPath(buildParameter.isInUpgradeTool()) + (FileUtility.DIRECTORY_SEPARATOR_CHAR +
+ "web" + FileUtility.DIRECTORY_SEPARATOR_CHAR +
+ buildParameter.getServiceUnitPath() + FileUtility.DIRECTORY_SEPARATOR_CHAR +
+ "mob" + FileUtility.DIRECTORY_SEPARATOR_CHAR
+ + buildParameter.getBoCode() + JitBuildUtility.getExtraPath(buildParameter.getExtraFormPath())).toLowerCase();
+ }
+
+ if (buildParameter.isBabelCompile()) {
+
+ strDeployPath = FileUtility.getCurrentWorkPath(buildParameter.isInUpgradeTool()) + (FileUtility.DIRECTORY_SEPARATOR_CHAR +
+ "web" + FileUtility.DIRECTORY_SEPARATOR_CHAR +
+ buildParameter.getServiceUnitPath() + FileUtility.DIRECTORY_SEPARATOR_CHAR +
+ "web" + FileUtility.DIRECTORY_SEPARATOR_CHAR +
+ buildParameter.getBoCode() + "forbabelruntime" + FileUtility.DIRECTORY_SEPARATOR_CHAR +
+ buildParameter.getFormName() +
+ JitBuildUtility.getExtraPath(buildParameter.getExtraFormPath())).toLowerCase();
}
+ return strDeployPath;
}
/**
@@ -128,10 +141,10 @@ public class BuildDeployManager {
private static void publishScript(JitBuildParameter buildParameter, String strDeployPath) {
WebLogger.Instance.info("execute form script cache ", CurrentClassName);
try {
- ScriptCacheServiceImpl scriptCacheServiceImpl = new ScriptCacheServiceImpl();
PublishScriptRequest request = getPublishScriptRequest(buildParameter, strDeployPath);
- scriptCacheServiceImpl.publishScriptWithDirectory(request);
+ ScriptCacheService scriptCacheService = SpringBeanUtils.getBean(ScriptCacheService.class);
+ scriptCacheService.publishScriptWithDirectory(request);
WebLogger.Instance.info("execute form script cache completely!!!", CurrentClassName);
} catch (Exception e) {
WebLogger.Instance.error(e);
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/buildparametergenerator/JitBuildParameterGenerator.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/buildparametergenerator/JitBuildParameterGenerator.java
index b2d3432434fe1e5b47dd4c3311f007c48c8b01b2..2a5d2093a7e239f4cd84f987a6bb4ca6d41569b4 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/buildparametergenerator/JitBuildParameterGenerator.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/buildparametergenerator/JitBuildParameterGenerator.java
@@ -16,6 +16,7 @@
package com.inspur.edp.web.jitruntimebuild.core.buildparametergenerator;
+import com.inspur.edp.web.common.JITEngineConstants;
import com.inspur.edp.web.common.io.FileUtility;
import com.inspur.edp.web.common.utility.StringUtility;
import com.inspur.edp.web.jitruntimebuild.api.entity.JitBuildParameter;
@@ -104,9 +105,9 @@ public class JitBuildParameterGenerator {
// 如果su路径不为空
if (!StringUtility.isNullOrEmpty(buildParameter.getServiceUnitPath())) {
String serviceUnitPath = buildParameter.getServiceUnitPath();
- if (!serviceUnitPath.startsWith(FormJsonFileSuffixConstant.defaultSUBasePath)) {
+ if (!serviceUnitPath.startsWith(JITEngineConstants.DefaultSUBasePath)) {
// 在serviceUnit 路径前面追加apps
- serviceUnitPath = FormJsonFileSuffixConstant.defaultSUBasePath + FileUtility.DIRECTORY_SEPARATOR_CHAR + serviceUnitPath;
+ serviceUnitPath = JITEngineConstants.DefaultSUBasePath + FileUtility.DIRECTORY_SEPARATOR_CHAR + serviceUnitPath;
buildParameter.setServiceUnitPath(serviceUnitPath.toLowerCase());
}
}
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/constant/FormJsonFileSuffixConstant.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/constant/FormJsonFileSuffixConstant.java
index 0c65a323bdd95b2490a67b679bf4241e563f987c..3f5c5d2427d8c307678be050bdc49f86ece26c4e 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/constant/FormJsonFileSuffixConstant.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/constant/FormJsonFileSuffixConstant.java
@@ -16,8 +16,6 @@
package com.inspur.edp.web.jitruntimebuild.core.constant;
-import com.inspur.edp.web.common.io.FileUtility;
-
/**
* description:
*
@@ -26,60 +24,15 @@ import com.inspur.edp.web.common.io.FileUtility;
*/
public class FormJsonFileSuffixConstant {
- /**
- * 表单文件后缀
- */
- public static final String FrmJsonFile = ".json";
-
- /**
- * 命令json文件后缀 .command.json
- */
- public static final String CommandJsonFile = ".command.json";
-
- /**
- * eapi json文件后缀.eapi.json
- */
- public static final String EapiJsonFile = ".eapi.json";
-
- /**
- * 资源文件后缀 .resource.json
- */
- public static final String ResourceJsonFile = ".resource.json";
-
- /**
- * 状态机文件后缀 .sm.json
- */
- public static final String StateMachineJsonFile = ".sm.json";
-
- /**
- * 表单文件后缀 .frm
- */
- public static final String FrmSuffix = ".frm";
-
/**
* 默认的运行时工程路径名称 转换成小写形式
*/
- public static final String defaultProjectPathName = ("web" + FileUtility.DIRECTORY_SEPARATOR_CHAR + "runtime" + FileUtility.DIRECTORY_SEPARATOR_CHAR + "projects" + FileUtility.DIRECTORY_SEPARATOR_CHAR + "rtc").toLowerCase();
+ public static final String defaultProjectPathName = "web/runtime/projects/rtc";
/**
* 默认的运行时工程路径名称 转换成小写形式
*/
- public static final String defaultProjectPathNameWithoutRtc = ("web" + FileUtility.DIRECTORY_SEPARATOR_CHAR + "runtime" + FileUtility.DIRECTORY_SEPARATOR_CHAR + "projects").toLowerCase();
-
- /**
- * su运行的根目录 apps
- */
- public static final String defaultSUBasePath = "apps";
-
- /**
- * 生成脚本文件目录名称 dist-rollup
- */
- public static final String DistRollupPathName = "dist-rollup";
-
- /**
- * 部署目录中web
- */
- public static final String DeployWebPathName = "web";
+ public static final String defaultProjectPathNameWithoutRtc = "web/runtime/projects";
/**
* 维度信息为空时,设置的默认维度信息
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/AbstractFormJsonFileGenerator.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/AbstractFormJsonFileGenerator.java
index 702853d53c738b54d9908e18bfe772e1c28b3f20..f9f651122dd8ad958ca304ef9a34558ee67331e5 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/AbstractFormJsonFileGenerator.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/AbstractFormJsonFileGenerator.java
@@ -25,31 +25,25 @@ import com.inspur.edp.web.common.io.FileUtility;
* @author Noah Guo
* @date 2020/04/29
*/
-public abstract class AbstractFormJsonFileGenerator implements JsonFileGeneratorInterface {
+abstract class AbstractFormJsonFileGenerator implements JsonFileGeneratorInterface {
- private ExecuteEnvironment executeEnvironment;
- private boolean isUpdradeTool=false;
+ private final ExecuteEnvironment executeEnvironment;
+ private boolean isUpgradeTool = false;
- protected AbstractFormJsonFileGenerator(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) {
+ protected AbstractFormJsonFileGenerator(ExecuteEnvironment executeEnvironment, boolean isUpgradeTool) {
this.executeEnvironment = executeEnvironment;
- this.isUpdradeTool=isUpdradeTool;
+ this.isUpgradeTool = isUpgradeTool;
}
- public boolean isUpdradeTool() {
- return isUpdradeTool;
+ protected boolean isUpgradeTool() {
+ return isUpgradeTool;
}
-
- public ExecuteEnvironment getExecuteEnvironment() {
+ protected ExecuteEnvironment getExecuteEnvironment() {
return this.executeEnvironment;
}
- public void setExecuteEnvironment(ExecuteEnvironment value) {
- this.executeEnvironment = value;
- }
-
-
/**
* 生成文件全称
*
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/CommandJsonFileGenerator.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/CommandJsonFileGenerator.java
index 038d15be612c61697908eaf99db95f39d57b11e9..92a98c9be404274d73dd0cb9a4a54b4ab00bd437 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/CommandJsonFileGenerator.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/CommandJsonFileGenerator.java
@@ -31,8 +31,8 @@ import com.inspur.edp.web.common.utility.StringUtility;
*/
class CommandJsonFileGenerator extends AbstractFormJsonFileGenerator implements JsonFileGeneratorInterface {
- public CommandJsonFileGenerator(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) {
- super(executeEnvironment, isUpdradeTool);
+ CommandJsonFileGenerator(ExecuteEnvironment executeEnvironment, boolean isUpgradeTool) {
+ super(executeEnvironment, isUpgradeTool);
}
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/EapiJsonFileGenerator.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/EapiJsonFileGenerator.java
index 4f2602e5a13b7f2c79bc58ecb22cfd3e702744f0..26a0d9c5a10ba2ae18c9905d911941969d5b8d99 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/EapiJsonFileGenerator.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/EapiJsonFileGenerator.java
@@ -16,9 +16,9 @@
package com.inspur.edp.web.jitruntimebuild.core.formjsonfilegenerator;
+import com.inspur.edp.web.common.JITEngineConstants;
import com.inspur.edp.web.common.environment.ExecuteEnvironment;
import com.inspur.edp.web.common.utility.StringUtility;
-import com.inspur.edp.web.jitruntimebuild.core.constant.FormJsonFileSuffixConstant;
/**
* description:
@@ -26,9 +26,9 @@ import com.inspur.edp.web.jitruntimebuild.core.constant.FormJsonFileSuffixConsta
* @author Noah Guo
* @date 2020/04/29
*/
-public class EapiJsonFileGenerator extends AbstractFormJsonFileGenerator implements JsonFileGeneratorInterface {
- public EapiJsonFileGenerator(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) {
- super(executeEnvironment,isUpdradeTool);
+class EapiJsonFileGenerator extends AbstractFormJsonFileGenerator implements JsonFileGeneratorInterface {
+ EapiJsonFileGenerator(ExecuteEnvironment executeEnvironment, boolean isUpgradeTool) {
+ super(executeEnvironment, isUpgradeTool);
}
@Override
@@ -38,9 +38,9 @@ public class EapiJsonFileGenerator extends AbstractFormJsonFileGenerator impleme
}
//eapi 内容需要转换为数组形式 当前传递过来的是单个对象 组装成数组形式
- content="["+content+"]";
+ content = "[" + content + "]";
- String eapiJsonFileName = this.generateFileName(formName, FormJsonFileSuffixConstant.FrmSuffix + FormJsonFileSuffixConstant.EapiJsonFile);
+ String eapiJsonFileName = this.generateFileName(formName, JITEngineConstants.FrmSuffix + JITEngineConstants.EapiJsonFile);
this.writeFile(basePath, eapiJsonFileName, content);
}
}
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormJsonFileManager.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormJsonFileManager.java
index ae3d161f6b4ba75691fc64c58fbbdbbec8fe3915..959023760c77714795b42ec94f6f9a19b7f4fe3f 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormJsonFileManager.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormJsonFileManager.java
@@ -18,15 +18,15 @@ package com.inspur.edp.web.jitruntimebuild.core.formjsonfilegenerator;
import com.inspur.edp.web.common.environment.ExecuteEnvironment;
import com.inspur.edp.web.common.logger.WebLogger;
+import com.inspur.edp.web.common.metadata.MetadataTypeEnum;
import com.inspur.edp.web.common.utility.ListUtility;
import com.inspur.edp.web.common.utility.StringUtility;
import com.inspur.edp.web.jitruntimebuild.api.entity.JitBuildParameter;
-import com.inspur.edp.web.jitruntimebuild.api.entity.JitMetadataTypeEnum;
import java.util.concurrent.atomic.AtomicReference;
/**
- * description:
+ * description: 表单json文件构造
*
* @author Noah Guo
* @date 2020/04/29
@@ -43,10 +43,10 @@ public class FormJsonFileManager {
if (ListUtility.isNotEmpty(buildParameter.getBuildRefMetadataList())) {
buildParameter.getBuildRefMetadataList().forEach(jitBuildRefMetadata -> {
if (!StringUtility.isNullOrEmpty(jitBuildRefMetadata.getContent())) {
- JitMetadataTypeEnum metadataTypeEnum = jitBuildRefMetadata.getMetadataType();
+ MetadataTypeEnum metadataTypeEnum = jitBuildRefMetadata.getMetadataType();
String strBasePath = webDevPath;
// 针对命令构件 主表单需要放置于对应的moduleCode目录下
- if (metadataTypeEnum == JitMetadataTypeEnum.Command) {
+ if (metadataTypeEnum == MetadataTypeEnum.Command) {
AtomicReference formModuleCode = FormModuleWithBuildParameterManager.getFormModuleCodeAtomicReference(buildParameter);
if (formModuleCode != null && formModuleCode.get() != null) {
strBasePath = webDevPath + "/services/" + formModuleCode.get().toLowerCase() + "/services/";
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormModuleWithBuildParameter.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormModuleWithBuildParameter.java
deleted file mode 100644
index 163fa5084c8dd942a4354713d77e8cfb153759bf..0000000000000000000000000000000000000000
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormModuleWithBuildParameter.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.inspur.edp.web.jitruntimebuild.core.formjsonfilegenerator;
-
-import com.inspur.edp.web.common.serialize.SerializeUtility;
-import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM;
-import com.inspur.edp.web.jitruntimebuild.api.entity.JitBuildParameter;
-import com.inspur.edp.web.jitruntimebuild.api.entity.JitMetadataTypeEnum;
-
-import java.util.concurrent.atomic.AtomicReference;
-
-/**
- * description:
- *
- * @author Noah Guo
- * @date 2020/07/29
- */
-public class FormModuleWithBuildParameter {
-
- /**
- * 根据编译参数获取对应的表单 moduleCode
- * @param buildParameter
- * @return
- */
- public static AtomicReference getFormModuleCodeAtomicReference(JitBuildParameter buildParameter) {
- AtomicReference formModuleCode = new AtomicReference<>();
- buildParameter.getBuildRefMetadataList().forEach((item) -> {
- if (item.getMetadataType() == JitMetadataTypeEnum.Frm) {
- FormRuntimeMetadataEntity formRuntimeMetadataEntity = SerializeUtility.getInstance().deserialize(item.getContent(), FormRuntimeMetadataEntity.class);
- if (formRuntimeMetadataEntity != null) {
- FormDOM visualDom = SerializeUtility.getInstance().deserialize(formRuntimeMetadataEntity.getContents().toString(), FormDOM.class);
- if (visualDom != null) {
- formModuleCode.set(visualDom.getModule().getCode());
- }
- }
- }
- });
- return formModuleCode;
- }
-}
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormModuleWithBuildParameterManager.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormModuleWithBuildParameterManager.java
index b8b5004ef434836aedf9b7ac126c7a85f9b6df4b..551ac39b83a8929313c1aebd677d962959038c60 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormModuleWithBuildParameterManager.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormModuleWithBuildParameterManager.java
@@ -16,10 +16,10 @@
package com.inspur.edp.web.jitruntimebuild.core.formjsonfilegenerator;
+import com.inspur.edp.web.common.metadata.MetadataTypeEnum;
import com.inspur.edp.web.common.serialize.SerializeUtility;
import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM;
import com.inspur.edp.web.jitruntimebuild.api.entity.JitBuildParameter;
-import com.inspur.edp.web.jitruntimebuild.api.entity.JitMetadataTypeEnum;
import java.util.concurrent.atomic.AtomicReference;
@@ -33,13 +33,14 @@ public class FormModuleWithBuildParameterManager {
/**
* 根据编译参数获取对应的表单 moduleCode
+ *
* @param buildParameter
* @return
*/
public static AtomicReference getFormModuleCodeAtomicReference(JitBuildParameter buildParameter) {
AtomicReference formModuleCode = new AtomicReference<>();
buildParameter.getBuildRefMetadataList().forEach((item) -> {
- if (item.getMetadataType() == JitMetadataTypeEnum.Frm) {
+ if (item.getMetadataType() == MetadataTypeEnum.Frm) {
FormRuntimeMetadataEntity formRuntimeMetadataEntity = SerializeUtility.getInstance().deserialize(item.getContent(), FormRuntimeMetadataEntity.class);
if (formRuntimeMetadataEntity != null) {
FormDOM visualDom = SerializeUtility.getInstance().deserialize(formRuntimeMetadataEntity.getContents().toString(), FormDOM.class);
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormRouteJsonFileGenerator.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormRouteJsonFileGenerator.java
index 5455230ba89dea7be523bd71918b7b93c5f4a35a..b2ca66be94de70a30d32a13be6c71beb9b6af803 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormRouteJsonFileGenerator.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormRouteJsonFileGenerator.java
@@ -33,9 +33,9 @@ import java.util.concurrent.atomic.AtomicReference;
* @author Noah Guo
* @date 2020/04/29
*/
-public class FormRouteJsonFileGenerator extends AbstractFormJsonFileGenerator implements JsonFileGeneratorInterface {
+class FormRouteJsonFileGenerator extends AbstractFormJsonFileGenerator implements JsonFileGeneratorInterface {
- public FormRouteJsonFileGenerator(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) {
+ FormRouteJsonFileGenerator(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) {
super(executeEnvironment, isUpdradeTool);
}
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormRuntimeMetadataEntity.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormRuntimeMetadataEntity.java
index 471675f460157f1a1b29ca61ff1669ff0786dba1..6e899231ffd248ed4cd925004bfd82158bdf0185 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormRuntimeMetadataEntity.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormRuntimeMetadataEntity.java
@@ -21,8 +21,8 @@ import com.fasterxml.jackson.databind.JsonNode;
/**
* 运行时表单元数据
*/
-public class FormRuntimeMetadataEntity {
- private String Id;
+class FormRuntimeMetadataEntity {
+ private String Id;
public String getId() {
return Id;
@@ -56,7 +56,7 @@ public class FormRuntimeMetadataEntity {
Contents = contents;
}
- private String Code;
- private String Name;
- private JsonNode Contents;
+ private String Code;
+ private String Name;
+ private JsonNode Contents;
}
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java
index effad1533f0ee308d6a0267eb6ce6e2f3aeed70d..85e809ac5f314c7b215ad4677ce0bc6e7d30cfec 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java
@@ -18,6 +18,7 @@ package com.inspur.edp.web.jitruntimebuild.core.formjsonfilegenerator;
import com.inspur.edp.i18n.resource.api.metadata.ResourceMetadata;
import com.inspur.edp.lcm.metadata.api.entity.*;
+import com.inspur.edp.web.common.JITEngineConstants;
import com.inspur.edp.web.common.environment.ExecuteEnvironment;
import com.inspur.edp.web.common.io.FileUtility;
import com.inspur.edp.web.common.logger.WebLogger;
@@ -33,8 +34,6 @@ import com.inspur.edp.web.formmetadata.metadataanalysis.form.AnalysisExternalCom
import com.inspur.edp.web.jitengine.expressions.*;
import com.inspur.edp.web.jitengine.expressions.utility.ExpressionUtility;
-import com.inspur.edp.web.jitruntimebuild.core.constant.FormJsonFileSuffixConstant;
-
import java.util.ArrayList;
import java.util.HashMap;
@@ -54,7 +53,7 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen
@Override
public void generate(String basePath, String formName, String content) {
- String frmJsonFileName = this.generateFileName(formName, FormJsonFileSuffixConstant.FrmSuffix + FormJsonFileSuffixConstant.FrmJsonFile);
+ String frmJsonFileName = this.generateFileName(formName, JITEngineConstants.FrmSuffix + JITEngineConstants.FrmJsonFile);
FormRuntimeMetadataEntity formRuntimeMetadataEntity = SerializeUtility.getInstance().deserialize(content, FormRuntimeMetadataEntity.class);
if (formRuntimeMetadataEntity != null) {
this.writeFile(basePath, frmJsonFileName, formRuntimeMetadataEntity.getContents().toString());
@@ -104,7 +103,7 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen
WebLogger.Instance.info("generate command json file", FrmJsonFileGenerator.class.getName());
// 反序列化表单元数据
FormDOM json = SerializeUtility.getInstance().deserialize(content, FormDOM.class);
- CommandsAnalysis commandsAnalysis = new CommandsAnalysis(this.getExecuteEnvironment(), this.isUpdradeTool());
+ CommandsAnalysis commandsAnalysis = new CommandsAnalysis(this.getExecuteEnvironment(), this.isUpgradeTool());
HashMap projectCmpList = new HashMap<>();
try {
fileName = fileName + ".frm";
@@ -133,7 +132,7 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen
getterMetadataInfo.setId(MetadataReference.getDependentMetadata().getId());
getterMetadataInfo.setMetadataType(MetadataTypeEnum.Resource);
return getterMetadataInfo;
- }, null, this.getExecuteEnvironment(), this.isUpdradeTool());
+ }, null, this.getExecuteEnvironment(), this.isUpgradeTool());
ResourceMetadata resourceMetadata = (refMetadata == null || refMetadata.getContent() == null) ? null : ((ResourceMetadata) refMetadata.getContent());
I18nResource item = ConvertToI18nResource(resourceMetadata, resourceMetadata.getOriginalLanguage());
resourceList.add(item);
@@ -143,7 +142,7 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen
if (resourceList.size() > 0) {
resourceList.forEach(item -> {
I18nResourceItemCollection resourceItemCollection = item.getStringResources();
- if (resourceItemCollection == null || resourceItemCollection.size() <= 0) {
+ if (resourceItemCollection == null || resourceItemCollection.size() == 0) {
return;
}
@@ -173,7 +172,7 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen
resouceItemsStringBuilder.append("}");
// 将生成的结构持久化到磁盘
- FileUtility.writeFile(basePath, gspMetadata.getHeader().getFileName().toLowerCase() + ".resource.json", resouceItemsStringBuilder.toString());
+ FileUtility.writeFile(basePath, gspMetadata.getHeader().getFileName().toLowerCase() + JITEngineConstants.ResourceJsonFile, resouceItemsStringBuilder.toString());
});
}
@@ -215,7 +214,7 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen
if (json != null && json.getModule() != null && json.getModule().getExternalComponents() != null && json.getModule().getExternalComponents().size() > 0) {
for (HashMap item : json.getModule().getExternalComponents()) {
- FormAnalysis formAnalysis = new FormAnalysis(this.getExecuteEnvironment(), this.isUpdradeTool());
+ FormAnalysis formAnalysis = new FormAnalysis(this.getExecuteEnvironment(), this.isUpgradeTool());
AnalysisExternalComponentResult externalVisualDom;
try {
@@ -255,7 +254,7 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen
getterMetadataInfo.setCode(json.getModule().getCode());
getterMetadataInfo.setName(json.getModule().getName());
return getterMetadataInfo;
- }, this.getExecuteEnvironment(), this.isUpdradeTool());
+ }, this.getExecuteEnvironment(), this.isUpgradeTool());
String[] params = {externalVisualDom.getExternalComponentPath(), externalVisualDom.getJson().getModule().getCode()};
@@ -293,20 +292,20 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen
String formMetadataName = formMetadata.getHeader().getFileName();
// 临时注释,方便调试
// Step 2: Resolve StateMachine, and Save StateMachine
- StateMachineAnalysis stateMachineAnalysis = new StateMachineAnalysis(this.getExecuteEnvironment(), this.isUpdradeTool());
+ StateMachineAnalysis stateMachineAnalysis = new StateMachineAnalysis(this.getExecuteEnvironment(), this.isUpgradeTool());
stateMachineAnalysis.resolveStateMachine(formDom, formMetadataName, targetStorageBasePath, relativePath);
//
// // Step 3: Resolve Command
- CommandsAnalysis commandsAnalysis = new CommandsAnalysis(this.getExecuteEnvironment(), this.isUpdradeTool());
+ CommandsAnalysis commandsAnalysis = new CommandsAnalysis(this.getExecuteEnvironment(), this.isUpgradeTool());
commandsAnalysis.resolveCommand(CommandsAnalysis.ResolveCommandParameter.init(formMetadata, formDom),
formMetadataName, targetStorageBasePath, projectCmpList);
//
// // Step 4: Resolve eapi
- EapiAnalysis eapiAnalysis = new EapiAnalysis(this.getExecuteEnvironment(), this.isUpdradeTool());
+ EapiAnalysis eapiAnalysis = new EapiAnalysis(this.getExecuteEnvironment(), this.isUpgradeTool());
eapiAnalysis.resolveEapi(formDom, formMetadataName, targetStorageBasePath, formMetadata.getHeader().getNameSpace(), relativePath);
//
// // Step 5: Resolve command service
- CommandServiceAnalysis.resolveCommandService(formDom, relativePath, formServiceBasePath, webDevPath, this.getExecuteEnvironment(), this.isUpdradeTool());
+ CommandServiceAnalysis.resolveCommandService(formDom, relativePath, formServiceBasePath, webDevPath, this.getExecuteEnvironment(), this.isUpgradeTool());
// 构造对应的国际化资源项
//GenerateResourceManager.generateI18nResource(formMetadata, i18nResourceList, i18nResourceKeyPrefix,"en");
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/JsonFileGeneratorFactory.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/JsonFileGeneratorFactory.java
index 5ab428ba0587b8498534d9bc8a0b274a3b96f3c5..4aa365698c66044e2dad3bb43ad3edd22726d672 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/JsonFileGeneratorFactory.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/JsonFileGeneratorFactory.java
@@ -19,7 +19,7 @@ package com.inspur.edp.web.jitruntimebuild.core.formjsonfilegenerator;
import com.inspur.edp.web.common.environment.ExecuteEnvironment;
import com.inspur.edp.web.common.logger.WebLogger;
-import com.inspur.edp.web.jitruntimebuild.api.entity.JitMetadataTypeEnum;
+import com.inspur.edp.web.common.metadata.MetadataTypeEnum;
/**
* description:
@@ -28,7 +28,7 @@ import com.inspur.edp.web.jitruntimebuild.api.entity.JitMetadataTypeEnum;
* @date 2020/04/29
*/
public class JsonFileGeneratorFactory {
- public static JsonFileGeneratorInterface create(JitMetadataTypeEnum metadataType, ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) {
+ public static JsonFileGeneratorInterface create(MetadataTypeEnum metadataType, ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) {
JsonFileGeneratorInterface jsonFileGenerator = null;
switch (metadataType) {
case Frm:
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/JsonFileGeneratorInterface.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/JsonFileGeneratorInterface.java
index 78e0a85f93d4eebbefc9a0abd3b6b55f530ace35..40ffd9713401b9b6cbe3ef444ffc4f6f911e732a 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/JsonFileGeneratorInterface.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/JsonFileGeneratorInterface.java
@@ -16,6 +16,10 @@
package com.inspur.edp.web.jitruntimebuild.core.formjsonfilegenerator;
+/**
+ * 表单json文件构造 接口
+ * @author noah
+ */
public interface JsonFileGeneratorInterface {
/**
* json文件生成接口方法
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/ResourceJsonFileGenerator.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/ResourceJsonFileGenerator.java
index e470bd56d07cc1f94bbf82f2beae3b6e8c0aae92..de06f04bb09c3e127dfc2f745a0d010469bd5521 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/ResourceJsonFileGenerator.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/ResourceJsonFileGenerator.java
@@ -16,8 +16,8 @@
package com.inspur.edp.web.jitruntimebuild.core.formjsonfilegenerator;
+import com.inspur.edp.web.common.JITEngineConstants;
import com.inspur.edp.web.common.environment.ExecuteEnvironment;
-import com.inspur.edp.web.jitruntimebuild.core.constant.FormJsonFileSuffixConstant;
/**
* description:
@@ -25,15 +25,15 @@ import com.inspur.edp.web.jitruntimebuild.core.constant.FormJsonFileSuffixConsta
* @author Noah Guo
* @date 2020/04/29
*/
-public class ResourceJsonFileGenerator extends AbstractFormJsonFileGenerator implements JsonFileGeneratorInterface {
+class ResourceJsonFileGenerator extends AbstractFormJsonFileGenerator implements JsonFileGeneratorInterface {
- public ResourceJsonFileGenerator(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) {
- super(executeEnvironment,isUpdradeTool);
+ ResourceJsonFileGenerator(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) {
+ super(executeEnvironment, isUpdradeTool);
}
@Override
public void generate(String basePath, String formName, String content) {
- String resourceFileName = this.generateFileName(formName, FormJsonFileSuffixConstant.FrmSuffix + FormJsonFileSuffixConstant.ResourceJsonFile);
+ String resourceFileName = this.generateFileName(formName, JITEngineConstants.FrmSuffix + JITEngineConstants.ResourceJsonFile);
this.writeFile(basePath, resourceFileName, content);
}
}
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/StateMachineJsonFileGenerator.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/StateMachineJsonFileGenerator.java
index b459f477ba848a807c4fb17b764fbad9f5ff82fa..f4c7db6b4e650afa1604b8cf0b9b5b7d16f02907 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/StateMachineJsonFileGenerator.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/StateMachineJsonFileGenerator.java
@@ -16,25 +16,25 @@
package com.inspur.edp.web.jitruntimebuild.core.formjsonfilegenerator;
+import com.inspur.edp.web.common.JITEngineConstants;
import com.inspur.edp.web.common.environment.ExecuteEnvironment;
-import com.inspur.edp.web.jitruntimebuild.core.constant.FormJsonFileSuffixConstant;
/**
- * description:
+ * description:状态机json文件构造
*
* @author Noah Guo
* @date 2020/04/29
*/
-public class StateMachineJsonFileGenerator extends AbstractFormJsonFileGenerator implements JsonFileGeneratorInterface {
+class StateMachineJsonFileGenerator extends AbstractFormJsonFileGenerator implements JsonFileGeneratorInterface {
- public StateMachineJsonFileGenerator(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) {
- super(executeEnvironment,isUpdradeTool);
+ StateMachineJsonFileGenerator(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) {
+ super(executeEnvironment, isUpdradeTool);
}
@Override
public void generate(String basePath, String formName, String content) {
- String smJsonFileName = this.generateFileName(formName, FormJsonFileSuffixConstant.FrmSuffix + FormJsonFileSuffixConstant.StateMachineJsonFile);
+ String smJsonFileName = this.generateFileName(formName, JITEngineConstants.FrmSuffix + JITEngineConstants.StateMachineJsonFile);
this.writeFile(basePath, smJsonFileName, content);
}
}
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/service/JitBuildServiceImp.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/service/JitBuildServiceImp.java
index d84db2d041fe3198017b9b4241b79ce43db68141..e068453b7aa21b3bef82ea3d65ccdfa89e873c2b 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/service/JitBuildServiceImp.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/service/JitBuildServiceImp.java
@@ -16,6 +16,7 @@
package com.inspur.edp.web.jitruntimebuild.core.service;
+import com.inspur.edp.web.common.entity.TerminalType;
import com.inspur.edp.web.common.environment.ExecuteEnvironment;
import com.inspur.edp.web.common.io.FileUtility;
import com.inspur.edp.web.common.logger.WebLogger;
@@ -31,6 +32,7 @@ import com.inspur.edp.web.jitruntimebuild.core.buildparametervalidator.JitBuildP
import com.inspur.edp.web.jitruntimebuild.core.formjsonfilegenerator.FormJsonFileManager;
import com.inspur.edp.web.jitruntimebuild.core.sourcecodemetadata.SourceCodeMetadataManager;
+import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
@@ -46,6 +48,9 @@ public class JitBuildServiceImp implements JitBuildService {
private static final String CurrentClassName = JitBuildServiceImp.class.getName();
+ // 设定执行环境为运行时
+ private static final ExecuteEnvironment executeEnvironment = ExecuteEnvironment.Runtime;
+
/**
* jit 运行时编译
*
@@ -68,8 +73,7 @@ public class JitBuildServiceImp implements JitBuildService {
JitBuildParameterGenerator.generate(buildParameter);
WebLogger.Instance.info("build parameter executed completely", CurrentClassName);
}
- // 设定当前运行环境为runtime
- ExecuteEnvironment executeEnvironment = ExecuteEnvironment.Runtime;
+
// 首先删除service文件夹 避免service文件变更导致的编译失败
String sourceServicePath = buildParameter.getBuildWebDevPath() + "/services/";
try {
@@ -86,22 +90,7 @@ public class JitBuildServiceImp implements JitBuildService {
// 执行 脚本文件生成
WebLogger.Instance.info("begine generate source code", CurrentClassName);
- ProjectCompileContext projectCompileContext = new ProjectCompileContext(
- buildParameter.getBoCode(),
- buildParameter.getBuildNodeModulePath(),
- "pc", "angular",
- buildParameter.getBuildWebDevPath(),
- buildParameter.getBuildAppPath(), null,
- buildParameter.getServiceUnitPath(), ExecuteEnvironment.Runtime);
- if (buildParameter.isMobileApp()) {
- projectCompileContext.setFormType("mobile");
- projectCompileContext.setFrameworkType("vue");
- }
- // 设置运行时定制维度信息
- projectCompileContext.extraFormPath = buildParameter.getExtraFormPathStr();
- projectCompileContext.setGenerateViewModel(!buildParameter.isBabelCompile());
- // 运行时定制设置生成前删除代码目录
- projectCompileContext.setDeleteSourceCodeBeforeGenerate(true);
+ ProjectCompileContext projectCompileContext = generateProjectCompileContext(buildParameter);
JITEngineManager.compileProject(projectCompileContext);
WebLogger.Instance.info("begin compile project, the formCode is " + buildParameter.getFormCode(), CurrentClassName);
@@ -127,7 +116,7 @@ public class JitBuildServiceImp implements JitBuildService {
} catch (RuntimeException ex) {
// 捕获编译异常 应该指定特定的异常 方便进行异常信息提示
buildErrorMessage = ex.getMessage();
- WebLogger.Instance.error(ex.getMessage() + ex.getStackTrace());
+ WebLogger.Instance.error(ex.getMessage() + Arrays.toString(ex.getStackTrace()));
}
@@ -151,10 +140,35 @@ public class JitBuildServiceImp implements JitBuildService {
mapResult.put("babelUrl", babelUrl);
}
- // 构造成功的返回值
+ // 构造成功地返回值
buildResponse = new JitBuildResponse();
return buildResponse;
}
+ /**
+ * 构造对应的编译上下文参数
+ * @param buildParameter
+ * @return
+ */
+ private static ProjectCompileContext generateProjectCompileContext(JitBuildParameter buildParameter) {
+ ProjectCompileContext projectCompileContext = new ProjectCompileContext(
+ buildParameter.getBoCode(),
+ buildParameter.getBuildNodeModulePath(),
+ "pc", TerminalType.PC.getFrameworkType(),
+ buildParameter.getBuildWebDevPath(),
+ buildParameter.getBuildAppPath(), null,
+ buildParameter.getServiceUnitPath(), executeEnvironment);
+ if (buildParameter.isMobileApp()) {
+ projectCompileContext.setFormType("mobile");
+ projectCompileContext.setFrameworkType(TerminalType.MOBILE.getFrameworkType());
+ }
+ // 设置运行时定制维度信息
+ projectCompileContext.extraFormPath = buildParameter.getExtraFormPathStr();
+ projectCompileContext.setGenerateViewModel(!buildParameter.isBabelCompile());
+ // 运行时定制设置生成前删除代码目录
+ projectCompileContext.setDeleteSourceCodeBeforeGenerate(true);
+ return projectCompileContext;
+ }
+
}
diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/sourcecodemetadata/SourceCodeMetadataManager.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/sourcecodemetadata/SourceCodeMetadataManager.java
index 243d6c4550fd284fbaea451e1a7a116336998cbd..63a08d0026b560d824552d78b3bd68f040f86fdb 100644
--- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/sourcecodemetadata/SourceCodeMetadataManager.java
+++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/sourcecodemetadata/SourceCodeMetadataManager.java
@@ -18,13 +18,13 @@ package com.inspur.edp.web.jitruntimebuild.core.sourcecodemetadata;
import com.inspur.edp.web.common.io.FileUtility;
import com.inspur.edp.web.common.logger.WebLogger;
+import com.inspur.edp.web.common.metadata.MetadataTypeEnum;
import com.inspur.edp.web.common.utility.Base64Utility;
import com.inspur.edp.web.common.utility.StringUtility;
import com.inspur.edp.web.jitengine.sourcecode.SourceCodeInFormManager;
import com.inspur.edp.web.jitengine.sourcecode.SourceCodeInFormRef;
import com.inspur.edp.web.jitruntimebuild.api.entity.JitBuildParameter;
import com.inspur.edp.web.jitruntimebuild.api.entity.JitBuildRefMetadata;
-import com.inspur.edp.web.jitruntimebuild.api.entity.JitMetadataTypeEnum;
import com.inspur.edp.web.sourcecode.metadata.entity.SourceCodeItemEntity;
import com.inspur.edp.web.sourcecode.metadata.entity.SourceCodeMetadataEntity;
@@ -65,7 +65,6 @@ public class SourceCodeMetadataManager {
*/
private static void unZipSourceMetadataEntity(List sourceCodeMetadataEntityList, JitBuildParameter buildParameter) {
if (sourceCodeMetadataEntityList != null && sourceCodeMetadataEntityList.size() > 0) {
- String projectAppPath = buildParameter.getBuildAppPath();
sourceCodeMetadataEntityList.forEach((sourceCodeMetadataEntityItem) -> {
List items = sourceCodeMetadataEntityItem.getItems();
@@ -92,13 +91,11 @@ public class SourceCodeMetadataManager {
private static String getWriteFilePath(SourceCodeItemEntity sourceCodeItemEntity, JitBuildParameter buildParameter) {
Path writeFilePath = Paths.get(buildParameter.getBuildAppPath(), generateSourcePath(sourceCodeItemEntity, buildParameter));
- String strWritePath = writeFilePath.toString();
- return strWritePath;
+ return writeFilePath.toString();
}
private static String generateSourcePath(SourceCodeItemEntity sourceCodeItemEntity, JitBuildParameter buildParameter) {
- String strGeneratedSourcePath = StringUtility.isNullOrEmpty(sourceCodeItemEntity.getTargetPath()) ? sourceCodeItemEntity.getSourcePath() : sourceCodeItemEntity.getTargetPath();
- String strSourcePath = strGeneratedSourcePath;
+ String strSourcePath = StringUtility.isNullOrEmpty(sourceCodeItemEntity.getTargetPath()) ? sourceCodeItemEntity.getSourcePath() : sourceCodeItemEntity.getTargetPath();
strSourcePath = strSourcePath.replace("{{projectname}}", buildParameter.getBoCode());
return strSourcePath.toLowerCase();
}
@@ -117,8 +114,8 @@ public class SourceCodeMetadataManager {
List refMetadataList = buildParameter.getBuildRefMetadataList();
if (refMetadataList != null && refMetadataList.size() > 0) {
refMetadataList.forEach((metadata) -> {
- JitMetadataTypeEnum metadataTypeEnum = metadata.getMetadataType();
- if (metadataTypeEnum == JitMetadataTypeEnum.Frm) {
+ MetadataTypeEnum metadataTypeEnum = metadata.getMetadataType();
+ if (metadataTypeEnum == MetadataTypeEnum.Frm) {
String strFormMetadataContent = metadata.getContent();
SourceCodeInFormManager.getSourceCodeWithFormMetadataContent(formRefList, strFormMetadataContent);
}
diff --git a/runtime-scriptcache-api/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/api/entity/ScriptCacheResponse.java b/runtime-scriptcache-api/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/api/entity/ScriptCacheResponse.java
index cbcee60d7ca06819d8765d4cefe1e6808efdddc3..2594bee2b152ceb00a7e83b7e8988d06b7db1a8d 100644
--- a/runtime-scriptcache-api/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/api/entity/ScriptCacheResponse.java
+++ b/runtime-scriptcache-api/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/api/entity/ScriptCacheResponse.java
@@ -34,7 +34,7 @@ public class ScriptCacheResponse {
// 是否成功标识
private boolean success = true;
- //异常西悉尼
+ //异常信息
private String errorMessage;
public boolean isSuccess() {
diff --git a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/config/ScriptCacheConfiguration.java b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/config/ScriptCacheConfiguration.java
index 45af3c4f2b25dc0e6ed7963652daa0092262dec9..4f5560a8801a3cb193353600727388d169fe9a68 100644
--- a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/config/ScriptCacheConfiguration.java
+++ b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/config/ScriptCacheConfiguration.java
@@ -16,12 +16,14 @@
package com.inspur.edp.web.jitruntimebuild.scriptcache.config;
+import com.inspur.edp.web.jitruntimebuild.scriptcache.api.service.ScriptCacheService;
import com.inspur.edp.web.jitruntimebuild.scriptcache.domain.manager.FormProjectCacheManager;
import com.inspur.edp.web.jitruntimebuild.scriptcache.domain.manager.FormScriptCacheContentManager;
import com.inspur.edp.web.jitruntimebuild.scriptcache.domain.manager.FormScriptCacheManager;
import com.inspur.edp.web.jitruntimebuild.scriptcache.domain.repository.FormProjectCacheRepository;
import com.inspur.edp.web.jitruntimebuild.scriptcache.domain.repository.FormScriptCacheContentRepository;
import com.inspur.edp.web.jitruntimebuild.scriptcache.domain.repository.FormScriptCacheRepository;
+import com.inspur.edp.web.jitruntimebuild.scriptcache.localserver.LocalServerVersionManager;
import com.inspur.edp.web.jitruntimebuild.scriptcache.localserver.rpc.LocalServerVersionRpcService;
import com.inspur.edp.web.jitruntimebuild.scriptcache.localserver.rpc.LocalServerVersionRpcServiceImpl;
import com.inspur.edp.web.jitruntimebuild.scriptcache.manager.ScriptCacheVersionManager;
@@ -58,7 +60,12 @@ public class ScriptCacheConfiguration {
}
@Bean
- public ScriptCacheServiceImpl scriptCacheServiceImp() {
+ public LocalServerVersionManager localServerVersionManager() {
+ return new LocalServerVersionManager();
+ }
+
+ @Bean
+ public ScriptCacheService scriptCacheServiceImp() {
return new ScriptCacheServiceImpl();
}
@@ -69,7 +76,7 @@ public class ScriptCacheConfiguration {
@Bean
- public RESTEndpoint ScriptCacheWebServiceEndpoint(ScriptCacheWebServiceImpl webservice){
+ public RESTEndpoint ScriptCacheWebServiceEndpoint(ScriptCacheWebServiceImpl webservice) {
return new RESTEndpoint("/runtime/jit/v1.0/scriptcache", webservice);
}
@@ -77,4 +84,5 @@ public class ScriptCacheConfiguration {
public LocalServerVersionRpcService localServerVersionRpcService() {
return new LocalServerVersionRpcServiceImpl();
}
+
}
diff --git a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/constants/ScriptCacheDBTableConstant.java b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/constants/ScriptCacheDBTableConstant.java
deleted file mode 100644
index bdad43a901c18915bfa102da05d05296300a4fb6..0000000000000000000000000000000000000000
--- a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/constants/ScriptCacheDBTableConstant.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.inspur.edp.web.jitruntimebuild.scriptcache.constants;
-
-/**
- * description:脚本缓存关联数据库表常量
- *
- * @author Noah Guo
- * @date 2020/09/23
- */
-public class ScriptCacheDBTableConstant {
-
- /**
- * 工程缓存关联数据库表名
- */
- private String projectCacheTableName="formprojectcache";
-
- /**
- * 表单脚本关联数据库表名
- */
- private String formscriptcacheTableName="formscriptcache";
-
- /**
- * 表单脚本内容关联数据库表名
- */
- private String formscriptcachecontentTableName="formscriptcachecontent";
-
- public String getProjectCacheTableName() {
- return projectCacheTableName;
- }
-
- public void setProjectCacheTableName(String projectCacheTableName) {
- this.projectCacheTableName = projectCacheTableName;
- }
-
- public String getFormscriptcacheTableName() {
- return formscriptcacheTableName;
- }
-
- public void setFormscriptcacheTableName(String formscriptcacheTableName) {
- this.formscriptcacheTableName = formscriptcacheTableName;
- }
-
- public String getFormscriptcachecontentTableName() {
- return formscriptcachecontentTableName;
- }
-
- public void setFormscriptcachecontentTableName(String formscriptcachecontentTableName) {
- this.formscriptcachecontentTableName = formscriptcachecontentTableName;
- }
-}
diff --git a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/domain/manager/FormScriptCacheManager.java b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/domain/manager/FormScriptCacheManager.java
index 35fb5dd86741829e44b84b370e4cd2351636026a..b5a13c61428dd5be24c17b9bf466396f25a21b5f 100644
--- a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/domain/manager/FormScriptCacheManager.java
+++ b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/domain/manager/FormScriptCacheManager.java
@@ -109,9 +109,7 @@ public class FormScriptCacheManager {
}
List formScriptCacheList = new ArrayList<>();
// 创建并行流 进行数据转换
- formScriptCacheEntityList.stream().filter(Objects::nonNull).forEach((cacheEntityItem) -> {
- formScriptCacheList.add(cacheEntityItem.convertTo());
- });
+ formScriptCacheEntityList.stream().filter(Objects::nonNull).forEach((cacheEntityItem) -> formScriptCacheList.add(cacheEntityItem.convertTo()));
return formScriptCacheList;
}
@@ -127,9 +125,7 @@ public class FormScriptCacheManager {
return null;
}
List formScriptCacheList = new ArrayList<>();
- formScriptCacheEntityList.stream().filter(Objects::nonNull).forEach((cacheEntityItem) -> {
- formScriptCacheList.add(cacheEntityItem.convertTo());
- });
+ formScriptCacheEntityList.stream().filter(Objects::nonNull).forEach((cacheEntityItem) -> formScriptCacheList.add(cacheEntityItem.convertTo()));
return formScriptCacheList;
}
}
diff --git a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerFileOperation.java b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerFileOperation.java
index 04b66b3dcf26fa0a45d263be877ff318f0543a52..e6e0574b27ee05c8404facd63d8274b27deaecb9 100644
--- a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerFileOperation.java
+++ b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerFileOperation.java
@@ -24,15 +24,16 @@ import com.inspur.edp.web.common.io.FileUtility;
* @author Noah Guo
* @date 2020/10/03
*/
-public class LocalServerFileOperation {
+class LocalServerFileOperation {
/**
* 保存文件内容至指定的文件位置
+ *
* @param scriptFileName
* @param strRelativePath
* @param fileContent
*/
- public static void saveFile(String scriptFileName, String strRelativePath, String fileContent) {
+ static void saveFile(String scriptFileName, String strRelativePath, String fileContent) {
String localServerPath = LocalServerPathGenerator.getNewInstance(false).getLocalServerWebPath();
String scriptFilePath = FileUtility.combine(localServerPath, strRelativePath);
FileUtility.writeFile(scriptFilePath, scriptFileName, fileContent);
diff --git a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerPathGenerator.java b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerPathGenerator.java
index 8209a1cef0a92781f71c87d70cb31322dc9e2f28..d1506655125422263468562843d8ffc9ff823101 100644
--- a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerPathGenerator.java
+++ b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerPathGenerator.java
@@ -20,7 +20,7 @@ import com.inspur.edp.web.common.io.FileUtility;
import com.inspur.edp.web.common.utility.StringUtility;
/**
- * description:
+ * description:缓存同步 本地文件路径构造
*
* @author Noah Guo
* @date 2020/09/25
diff --git a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerProjectVersion.java b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerProjectVersion.java
index 50bf527dc042eb26f5c5468c87ed8a606cff3394..5bcf95cac902dc2bf8928ac7b8d7e818d95ccce3 100644
--- a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerProjectVersion.java
+++ b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerProjectVersion.java
@@ -20,12 +20,12 @@ import java.util.ArrayList;
import java.util.List;
/**
- * description:
+ * description: 当前环境下 工程对应的版本信息
*
* @author Noah Guo
* @date 2020/09/25
*/
-public class LocalServerProjectVersion {
+class LocalServerProjectVersion {
private LocalServerProjectVersion() {
this.scriptVersionList = new ArrayList<>();
}
diff --git a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerScriptVersion.java b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerScriptVersion.java
index f46eddba900c5fb929d161af550748b432ec0b3a..87eead55c6336f9778912c8bbab5633c5e1a3a2c 100644
--- a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerScriptVersion.java
+++ b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerScriptVersion.java
@@ -17,12 +17,12 @@
package com.inspur.edp.web.jitruntimebuild.scriptcache.localserver;
/**
- * description:
+ * description: 当前表单元数据关联的脚本缓存版本信息
*
* @author Noah Guo
* @date 2020/10/03
*/
-public class LocalServerScriptVersion {
+class LocalServerScriptVersion {
private String formMetadataId;
private String scriptName;
private String scriptPath;
diff --git a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerVersionFileContent.java b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerVersionFileContent.java
index 4ce36c5a50eea8f98d7045ce577bc62f9f7fdd08..e6110dc0010f3a6c439e6176d625f64addc12df1 100644
--- a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerVersionFileContent.java
+++ b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerVersionFileContent.java
@@ -25,7 +25,7 @@ import java.util.List;
* @author Noah Guo
* @date 2020/09/25
*/
-public class LocalServerVersionFileContent {
+class LocalServerVersionFileContent {
/**
* 工程版本内容列表
*/
diff --git a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerVersionFileOperation.java b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerVersionFileOperation.java
index 3295edfdc2c4f9954fc449f14c37fb668ec02a60..5cb6405817fcf4d7190841f1726a7bf587bbbddf 100644
--- a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerVersionFileOperation.java
+++ b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerVersionFileOperation.java
@@ -27,6 +27,8 @@ import java.util.stream.Collectors;
/**
* description: server缓存脚本文件操作
+ * 全局实例 需保证整个应用中存在一份
+ * 因为会在初始化时进行脚本缓存版本的初始
*
* @author Noah Guo
* @date 2020/09/25
diff --git a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerVersionManager.java b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerVersionManager.java
index ac22bab7df5f0c32ef127a0a7f353de59bbb20ea..151636ae77060b2aadfbf965d9ff8c9b774308bb 100644
--- a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerVersionManager.java
+++ b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerVersionManager.java
@@ -28,6 +28,7 @@ import com.inspur.edp.web.common.io.FileUtility;
import com.inspur.edp.web.common.logger.WebLogger;
import com.inspur.edp.web.common.metadata.MetadataUtility;
import com.inspur.edp.web.common.utility.EqualsUtility;
+import com.inspur.edp.web.common.utility.ListUtility;
import com.inspur.edp.web.common.utility.StringUtility;
import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent;
import com.inspur.edp.web.jitruntimebuild.scriptcache.api.entity.FormProjectCache;
@@ -41,51 +42,37 @@ import io.iec.edp.caf.commons.utils.SpringBeanUtils;
import io.iec.edp.caf.databaseobject.api.service.IDatabaseObjectRtService;
import io.iec.edp.caf.rpc.client.RpcClassHolder;
+import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.atomic.AtomicBoolean;
/**
* description:服务器脚本版本manager
+ * 注册为Bean
*
* @author Noah Guo
* @date 2020/09/25
*/
public class LocalServerVersionManager {
- private static volatile LocalServerVersionManager _instance;
private static final String CurrentClassName = LocalServerVersionManager.class.getName();
- private static final Object _lock = new Object();
- private LocalServerVersionRpcService localServerVersionRpcService;
+ private final LocalServerVersionRpcService localServerVersionRpcService;
- private final ScriptCacheVersionManager scriptCacheVersionManagerInstance = new ScriptCacheVersionManager();
+ @Resource
+ private ScriptCacheVersionManager scriptCacheVersionManagerInstance;
- private LocalServerVersionManager() {
- if (localServerVersionRpcService == null) {
- RpcClassHolder rpcClassHolder = SpringBeanUtils.getBean(RpcClassHolder.class);
- this.localServerVersionRpcService = rpcClassHolder.getRpcClass("bcc", LocalServerVersionRpcService.class);
- }
- }
+ @Resource
+ private RpcClassHolder rpcClassHolder;
- /**
- * 获取唯一的实例
- * 采用双重锁定并volatile的方式避免获取到的实例存在多个或不完整的情况
- *
- * @return
- */
- public static LocalServerVersionManager getSingleInstance() {
- if (_instance == null) {
- synchronized (_lock) {
- if (_instance == null) {
- _instance = new LocalServerVersionManager();
- }
- }
- }
- return _instance;
+
+ public LocalServerVersionManager() {
+ this.localServerVersionRpcService = rpcClassHolder.getRpcClass("bcc", LocalServerVersionRpcService.class);
}
+
/**
* 本地脚本文件与数据库脚本文件进行比较
*
@@ -101,9 +88,9 @@ public class LocalServerVersionManager {
}
// 获取数据库中存储的脚本文件信息
List formScriptCacheList = this.localServerVersionRpcService.getFormScriptCacheByMetadataId(formMetadataId);
- if (formScriptCacheList == null || formScriptCacheList.size() == 0) {
+ if (ListUtility.isEmpty(formScriptCacheList)) {
cacheResponse.setSuccess(false);
- String errorMessage = "根据元数据id获取文件列表为空,对应元数据id:" + formMetadataId;
+ String errorMessage = String.format("根据元数据id获取文件列表为空,对应元数据id:%s", formMetadataId);
WebLogger.Instance.error(errorMessage);
errorMessage = "打开当前维度失败,请在【业务配置中心】,检查此维度是否进行了保存预览操作。相关元数据id:" + formMetadataId;
cacheResponse.setErrorMessage(errorMessage);
@@ -113,7 +100,7 @@ public class LocalServerVersionManager {
FormProjectCache formProjectCache = this.localServerVersionRpcService.getFormProjectCacheById(formScriptCacheList.get(0).getProjectVersionId());
if (formProjectCache == null) {
cacheResponse.setSuccess(false);
- cacheResponse.setErrorMessage("元数据对应的工程缓存信息为空,元数据id为" + formMetadataId);
+ cacheResponse.setErrorMessage(String.format("元数据对应的工程缓存信息为空,元数据id为:%s", formMetadataId));
return cacheResponse;
}
diff --git a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/manager/ScriptCacheVersionManager.java b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/manager/ScriptCacheVersionManager.java
index 12728d387e9268b23d7eafbe2c8dde24dff2f602..497b5dcc4de0648bc4f10dc8499e1f0806ac1bbc 100644
--- a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/manager/ScriptCacheVersionManager.java
+++ b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/manager/ScriptCacheVersionManager.java
@@ -28,8 +28,8 @@ import com.inspur.edp.web.jitruntimebuild.scriptcache.domain.entity.FormScriptCa
import com.inspur.edp.web.jitruntimebuild.scriptcache.domain.manager.FormProjectCacheManager;
import com.inspur.edp.web.jitruntimebuild.scriptcache.domain.manager.FormScriptCacheContentManager;
import com.inspur.edp.web.jitruntimebuild.scriptcache.domain.manager.FormScriptCacheManager;
-import io.iec.edp.caf.commons.utils.SpringBeanUtils;
+import javax.annotation.Resource;
import java.util.List;
/**
@@ -40,25 +40,17 @@ import java.util.List;
*/
public class ScriptCacheVersionManager {
- private final FormProjectCacheManager formProjectCacheManager;
- private final FormScriptCacheManager formScriptCacheManager;
- private final FormScriptCacheContentManager formScriptCacheContentManager;
+ @Resource
+ private FormProjectCacheManager formProjectCacheManager;
- public ScriptCacheVersionManager() {
- this.formProjectCacheManager = SpringBeanUtils.getBean(FormProjectCacheManager.class);
- this.formScriptCacheContentManager = SpringBeanUtils.getBean(FormScriptCacheContentManager.class);
- this.formScriptCacheManager = SpringBeanUtils.getBean(FormScriptCacheManager.class);
- }
+ @Resource
+ private FormScriptCacheManager formScriptCacheManager;
- /**
- * 元数据版本检测
- *
- * @param metadataId
- * @param version
- * @return
- */
- public boolean checkMetadataVersion(String metadataId, String version) {
- return true;
+ @Resource
+ private FormScriptCacheContentManager formScriptCacheContentManager;
+
+
+ public ScriptCacheVersionManager() {
}
/**
@@ -91,9 +83,7 @@ public class ScriptCacheVersionManager {
* @param formProjectCache 工程脚本缓存
*/
public void updateFormProjectCache(FormProjectCache formProjectCache) {
- StringUtility.executeIfPresent(formProjectCache.getId(), StringUtility::isNullOrEmpty, (param) -> {
- formProjectCache.setId(RandomUtility.newGuid());
- });
+ StringUtility.executeIfPresent(formProjectCache.getId(), StringUtility::isNullOrEmpty, (param) -> formProjectCache.setId(RandomUtility.newGuid()));
FormProjectCacheEntity projectCacheEntity = FormProjectCacheEntity.convertFrom(formProjectCache);
this.formProjectCacheManager.save(projectCacheEntity);
}
diff --git a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/webservice/ScriptCacheWebServiceImpl.java b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/webservice/ScriptCacheWebServiceImpl.java
index 19ab8ed93e0b71fd04277b71031f39c346b984fd..7d27c14704aaab32cfe03c3d407285bfc39fc535 100644
--- a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/webservice/ScriptCacheWebServiceImpl.java
+++ b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/webservice/ScriptCacheWebServiceImpl.java
@@ -22,6 +22,8 @@ import com.inspur.edp.web.jitruntimebuild.scriptcache.api.entity.ScriptCacheResp
import com.inspur.edp.web.jitruntimebuild.scriptcache.api.webservice.ScriptCacheWebService;
import com.inspur.edp.web.jitruntimebuild.scriptcache.localserver.LocalServerVersionManager;
+import javax.annotation.Resource;
+
/**
* description: 脚本缓存web调用入口
*
@@ -29,6 +31,9 @@ import com.inspur.edp.web.jitruntimebuild.scriptcache.localserver.LocalServerVer
* @date 2020/09/24
*/
public class ScriptCacheWebServiceImpl implements ScriptCacheWebService {
+ @Resource
+ private LocalServerVersionManager localServerVersionManager;
+
/**
* 脚本缓存 版本检测
*
@@ -37,7 +42,7 @@ public class ScriptCacheWebServiceImpl implements ScriptCacheWebService {
*/
@Override
public ScriptCacheResponse checkVersion(ScriptCacheCheckVersionRequest request) {
- ScriptCacheResponse scriptCacheResponse = ScriptCacheResponse.getInstance();
+ ScriptCacheResponse scriptCacheResponse = ScriptCacheResponse.getInstance();
// 进行入参检测
if (request == null) {
@@ -49,7 +54,7 @@ public class ScriptCacheWebServiceImpl implements ScriptCacheWebService {
// 如果参数中表单元数据id不为空 那么使用元数据id进行版本检测
if (!StringUtility.isNullOrEmpty(request.getFormMetadataId())) {
// 进行本地版本与数据库版本比较
- scriptCacheResponse = LocalServerVersionManager.getSingleInstance().checkVersionWithFormMetadataId(request.getFormMetadataId());
+ scriptCacheResponse = this.localServerVersionManager.checkVersionWithFormMetadataId(request.getFormMetadataId());
} else {
scriptCacheResponse = this.checkVersionWithProjectInfo(request);
}
@@ -72,7 +77,7 @@ public class ScriptCacheWebServiceImpl implements ScriptCacheWebService {
* @return
*/
private ScriptCacheResponse checkVersionWithProjectInfo(ScriptCacheCheckVersionRequest request) {
- ScriptCacheResponse scriptCacheResponse = ScriptCacheResponse.getInstance();
+ ScriptCacheResponse scriptCacheResponse = ScriptCacheResponse.getInstance();
if (StringUtility.isNullOrEmpty(request.getProjectName())) {
scriptCacheResponse.setSuccess(false);
@@ -84,7 +89,7 @@ public class ScriptCacheWebServiceImpl implements ScriptCacheWebService {
scriptCacheResponse.setErrorMessage("脚本检测,工程路径不能为空");
return scriptCacheResponse;
}
- scriptCacheResponse = LocalServerVersionManager.getSingleInstance().checkVersionWithProjectNameAndRelativePath(request.getProjectName(), request.getProjectRelativePath());
+ scriptCacheResponse = this.localServerVersionManager.checkVersionWithProjectNameAndRelativePath(request.getProjectName(), request.getProjectRelativePath());
return scriptCacheResponse;
}
diff --git a/web-common/src/main/java/com/inspur/edp/web/common/JITEngineConstants.java b/web-common/src/main/java/com/inspur/edp/web/common/JITEngineConstants.java
index ab09718847e12a092a04dfb005d06e5512a97091..ed1a8c4715fa0e25494805bc1a24a96f96159aa0 100644
--- a/web-common/src/main/java/com/inspur/edp/web/common/JITEngineConstants.java
+++ b/web-common/src/main/java/com/inspur/edp/web/common/JITEngineConstants.java
@@ -18,6 +18,7 @@ package com.inspur.edp.web.common;
/**
* JITEngine执行常量参数
+ *
* @author guozhiqi
*/
public class JITEngineConstants {
@@ -44,16 +45,6 @@ public class JITEngineConstants {
*/
public static final String Node_ModulesPathName = "node_modules";
- /**
- * jit-engine form 工程版本文件
- */
- public static final String ProjectVersionFileName = "projectversionserver.json";
-
- /**
- * 是否需要重新编译标识
- */
- public static final String ProjectVersionNeedRecompile = "ProjectVersionNeedRecompile";
-
/**
* jit 执行命令js文件相对于server nodejs路径的相对路径
@@ -72,4 +63,53 @@ public class JITEngineConstants {
public static final String RollupCommandRelativePath = "rollup/bin/rollup";
+ /**
+ * 表单文件后缀
+ */
+ public static final String FrmJsonFile = ".json";
+
+ /**
+ * 命令json文件后缀 .command.json
+ */
+ public static final String CommandJsonFile = ".command.json";
+
+ /**
+ * eapi json文件后缀.eapi.json
+ */
+ public static final String EapiJsonFile = ".eapi.json";
+
+ /**
+ * 资源文件后缀 .resource.json
+ */
+ public static final String ResourceJsonFile = ".resource.json";
+
+ /**
+ * 状态机文件后缀 .sm.json
+ */
+ public static final String StateMachineJsonFile = ".sm.json";
+
+ /**
+ * 表单文件后缀 .frm
+ */
+ public static final String FrmSuffix = ".frm";
+
+ /**
+ * su运行的根目录 apps
+ */
+ public static final String DefaultSUBasePath = "apps";
+
+ /**
+ * 生成脚本文件目录名称 dist-rollup
+ */
+ public static final String DistRollupPathName = "dist-rollup";
+
+ /**
+ * 部署目录中web
+ */
+ public static final String DeployWebPathName = "web";
+
+ /**
+ * webdev 路径
+ */
+ public static final String WebDevPathName = "webdev";
}
diff --git a/web-common/src/main/java/com/inspur/edp/web/common/constant/FrontendProjectConstant.java b/web-common/src/main/java/com/inspur/edp/web/common/constant/FrontendProjectConstant.java
index 1a979855348687d67d3827304cc076ae1976a95b..2ce381fe70874b9d91147efd0c201a902f9e243a 100644
--- a/web-common/src/main/java/com/inspur/edp/web/common/constant/FrontendProjectConstant.java
+++ b/web-common/src/main/java/com/inspur/edp/web/common/constant/FrontendProjectConstant.java
@@ -53,11 +53,6 @@ public final class FrontendProjectConstant {
public static final String PROJECT_GENDER_PATH_FOR_DYNAMIC_FORM = "dynamicform";
- /**
- * 前端工程构建目录
- */
- public static final String PROJECT_BUILD_PATH = "dist-rollup";
-
/**
* 命令服务生成目录
*/
diff --git a/web-common/src/main/java/com/inspur/edp/web/common/entity/ResultMessage.java b/web-common/src/main/java/com/inspur/edp/web/common/entity/ResultMessage.java
index 9268e60c604a0f71b2c27556f65c6fc0af8f496f..292813f61f5ef2d03869ab058294f7c2de91a64c 100644
--- a/web-common/src/main/java/com/inspur/edp/web/common/entity/ResultMessage.java
+++ b/web-common/src/main/java/com/inspur/edp/web/common/entity/ResultMessage.java
@@ -67,6 +67,6 @@ public class ResultMessage implements Serializable {
this.code = code;
this.message = message;
this.data = data;
- this.success = this.code == 1 ? true : false;
+ this.success = this.code == 1;
}
}
diff --git a/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java b/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java
index 6732a73dd614b67314650f34b2d432d6ef4a51f1..a7514b23468f59d0082918c82d55a8d22ee76cd2 100644
--- a/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java
+++ b/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java
@@ -16,6 +16,7 @@
package com.inspur.edp.web.common.entity;
+import com.inspur.edp.web.common.JITEngineConstants;
import com.inspur.edp.web.common.constant.FrontendProjectConstant;
import com.inspur.edp.web.common.customexception.WebCustomException;
import com.inspur.edp.web.common.io.FileUtility;
@@ -24,7 +25,6 @@ import lombok.Data;
import java.util.ArrayList;
import java.util.List;
import java.util.function.Consumer;
-import java.util.function.Function;
import java.util.function.Supplier;
/**
@@ -215,6 +215,7 @@ public enum TerminalType {
/**
* 根据terminalType执行不同的supplier
+ *
* @param terminalType
* @param executeWithPCSupplier
* @param executeWithMobileSupplier
@@ -383,7 +384,7 @@ public enum TerminalType {
* @return
*/
public String getDeployableProjectRelativePath() {
- return FileUtility.combine(FrontendProjectConstant.FRONTEND_PROJECT_COMPILE_PATH, this.getAppPathName(), FrontendProjectConstant.PROJECT_BUILD_PATH);
+ return FileUtility.combine(FrontendProjectConstant.FRONTEND_PROJECT_COMPILE_PATH, this.getAppPathName(), JITEngineConstants.DistRollupPathName);
}
/**
diff --git a/web-common/src/main/java/com/inspur/edp/web/common/io/FileUtility.java b/web-common/src/main/java/com/inspur/edp/web/common/io/FileUtility.java
index 7f2fcc6d8b4d785414411cf6058abc13deb02fcd..02bd37dc70ab6ac7c6b602481cea2aaa27adcaa1 100644
--- a/web-common/src/main/java/com/inspur/edp/web/common/io/FileUtility.java
+++ b/web-common/src/main/java/com/inspur/edp/web/common/io/FileUtility.java
@@ -28,6 +28,7 @@ import java.io.*;
import java.nio.charset.StandardCharsets;
import java.nio.file.*;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
/**
@@ -653,7 +654,7 @@ public class FileUtility {
} catch (Exception e) {
WebLogger.Instance.error(e);
- throw new WebCustomException(e.getMessage() + e.getStackTrace());
+ throw new WebCustomException(e.getMessage() + Arrays.toString(e.getStackTrace()));
}
}
diff --git a/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataUtility.java b/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataUtility.java
index c11ee910eca6b0d0923848d6bc5b99af59b2665d..c1dc4826dab47bd1fc0b071f3c31e51fefc2be84 100644
--- a/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataUtility.java
+++ b/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataUtility.java
@@ -361,8 +361,6 @@ public final class MetadataUtility {
afterGetReferenceWebComponentMetadata.invoke(commandMetadata, methodReferingItem, webComponentMetadata, parameterArray);
break;
- case Branch:
- break;
case BranchCollection:
getReferenceWebComponentMetadata(null, componentMetadataCollection, ((BranchCollectionCommandItem) item).getItems(), componentCacheList, afterGetReferenceWebComponentMetadata, parameterArray);
break;
diff --git a/web-common/src/main/java/com/inspur/edp/web/common/utility/CommandLineUtility.java b/web-common/src/main/java/com/inspur/edp/web/common/utility/CommandLineUtility.java
index 79435354bf59894f32061f760b9a240684b10ae5..eb0493f987157d1d4a0a1d5e7f5b6c00f00ea325 100644
--- a/web-common/src/main/java/com/inspur/edp/web/common/utility/CommandLineUtility.java
+++ b/web-common/src/main/java/com/inspur/edp/web/common/utility/CommandLineUtility.java
@@ -20,6 +20,7 @@ import com.inspur.edp.web.common.logger.WebLogger;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.SystemUtils;
+import java.io.IOException;
import java.util.Arrays;
/**
@@ -94,18 +95,7 @@ public class CommandLineUtility {
String errorMessage = "";
try {
WebLogger.Instance.info(command, CommandLineUtility.class.getName());
- Process process = null;
- String updateCommand = command;
- if (SystemUtils.IS_OS_WINDOWS) {
- updateCommand = "cmd.exe" + " /C" + " " + command;
- process = Runtime.getRuntime().exec(updateCommand);
- } else if (SystemUtils.IS_OS_UNIX) {
- updateCommand = command;
- process = Runtime.getRuntime().exec(new String[]{"/bin/sh", "-c", updateCommand});
- }
- if (updateCommand == null) {
- throw new RuntimeException("不支持的操作系统类型,请联系开发人员处理");
- }
+ Process process = getProcessWithOs(command);
CommandExecuteInterceptor errorCommandInterceptor = new CommandExecuteInterceptor(process.getErrorStream(), errorSB, true);
CommandExecuteInterceptor inputCommandInterceptor = new CommandExecuteInterceptor(process.getInputStream(), errorSB, false);
@@ -128,6 +118,28 @@ public class CommandLineUtility {
return errorMessage;
}
+ /**
+ * 获取适应于不同操作系统的Process
+ * @param command
+ * @return
+ * @throws IOException
+ */
+ public static Process getProcessWithOs(String command) throws IOException {
+ Process process = null;
+ String updateCommand = command;
+ if (SystemUtils.IS_OS_WINDOWS) {
+ updateCommand = "cmd.exe" + " /C" + " " + command;
+ process = Runtime.getRuntime().exec(updateCommand);
+ } else if (SystemUtils.IS_OS_UNIX) {
+ updateCommand = command;
+ process = Runtime.getRuntime().exec(new String[]{"/bin/sh", "-c", updateCommand});
+ }
+ if (updateCommand == null) {
+ throw new RuntimeException("不支持的操作系统类型,请联系开发人员处理");
+ }
+ return process;
+ }
+
/**
* 判断是否包含错误描述信息
diff --git a/web-common/src/main/java/com/inspur/edp/web/common/utility/StringUtility.java b/web-common/src/main/java/com/inspur/edp/web/common/utility/StringUtility.java
index 491fe10a47c6fcd9cd8f3312fcaad43b2c4a9131..4c17524e987abf915444d92a7ad7184a8aedc7cc 100644
--- a/web-common/src/main/java/com/inspur/edp/web/common/utility/StringUtility.java
+++ b/web-common/src/main/java/com/inspur/edp/web/common/utility/StringUtility.java
@@ -47,7 +47,7 @@ public class StringUtility {
if (isNullOrEmpty(str)) {
return false;
}
- Matcher isNum = pattern.matcher(str.charAt(0) + "");
+ Matcher isNum = pattern.matcher(String.valueOf(str.charAt(0)));
return isNum.matches();
}
diff --git a/web-common/src/test/java/com/inspur/edp/web/common/CopyJarFile.java b/web-common/src/test/java/com/inspur/edp/web/common/CopyJarFile.java
new file mode 100644
index 0000000000000000000000000000000000000000..8e711324d33b3bf70a3ac6b04c0a315d15b3dcea
--- /dev/null
+++ b/web-common/src/test/java/com/inspur/edp/web/common/CopyJarFile.java
@@ -0,0 +1,149 @@
+/*
+ * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.inspur.edp.web.common;
+
+import com.inspur.edp.web.common.io.FileUtility;
+import com.inspur.edp.web.common.logger.WebLogger;
+import com.inspur.edp.web.common.utility.StringUtility;
+import lombok.Data;
+import org.apache.commons.io.IOUtils;
+import org.apache.maven.model.Model;
+import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
+import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
+import org.junit.jupiter.api.Test;
+
+import java.io.File;
+import java.io.FileReader;
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * 用于进行mac 的拷贝
+ *
+ * @author noah
+ * 2023/7/17 10:23
+ */
+public class CopyJarFile {
+ @Test
+ public void copy() throws XmlPullParserException, IOException {
+ // 获取当前运行目录
+ String currentWorkPath = System.getProperty("user.dir");
+ System.out.println(currentWorkPath);
+ // 获取对应的工程路径
+ String projectPath = new File(currentWorkPath).getParent();
+ System.out.println(projectPath);
+
+ // 挨个读取其生成的jar包,拷贝至目标目录
+ String version = "0.1.9-SNAPSHOT";
+
+ String baseTargetJarPath = FileUtility.combine(projectPath, "out");
+
+ FileUtility.deleteFolder(baseTargetJarPath);
+
+ Model pomModel = getPom(projectPath);
+
+ Map moduleMap = this.getModulePath();
+ pomModel.getModules().forEach(moduleItem -> {
+ String moduleId = moduleMap.get(moduleItem).moduleId;
+ if (StringUtility.isNullOrEmpty(moduleId)) {
+ WebLogger.Instance.error("无法找到对应的moduleId" + moduleItem);
+ } else {
+ String modulePath = FileUtility.combine(projectPath, moduleItem);
+ String moduleJarFilePath = FileUtility.combine(modulePath, "target", moduleId + "-" + version + ".jar");
+ if (!new File(moduleJarFilePath).exists()) {
+ WebLogger.Instance.error("目标文件不存在," + moduleJarFilePath);
+ } else {
+ String targetJarPath = FileUtility.combine(baseTargetJarPath, moduleMap.get(moduleItem).getRelativePath());
+ String targetJarFilePath = FileUtility.combine(targetJarPath, moduleId + ".jar");
+ FileUtility.copyFile(moduleJarFilePath, targetJarFilePath, true);
+ }
+ }
+
+ });
+
+
+ }
+
+ private Map getModulePath() {
+ Map moduleMap = new HashMap<>();
+ moduleMap.put("web-common", ModulePath.init("web-jitengine-common"));
+ moduleMap.put("web-form-metadata-api", ModulePath.init("web-jitengine-formmetadata-api"));
+ moduleMap.put("web-form-metadata", ModulePath.init("web-jitengine-formmetadata"));
+ moduleMap.put("web-sourcecode-metadata", ModulePath.init("web-sourcecode-metadata"));
+ moduleMap.put("web-pageflow-metadata", ModulePath.init("web-pageflow-metadata"));
+ moduleMap.put("web-appconfig-api", ModulePath.init("web-appconfig-api"));
+ moduleMap.put("web-appconfig-core", ModulePath.init("web-appconfig-core"));
+ moduleMap.put("web-frontendproject", ModulePath.init("web-jitengine-frontendproject"));
+ moduleMap.put("web-frontendproject-api", ModulePath.init("web-jitengine-frontendproject-api"));
+ moduleMap.put("web-form-jitengine", ModulePath.init("web-jitengine"));
+ moduleMap.put("web-designschema", ModulePath.init("web-designschema"));
+ moduleMap.put("web-designschema-api", ModulePath.init("web-designschema-api"));
+ moduleMap.put("web-statemachine", ModulePath.init("web-statemachine-metadata"));
+ moduleMap.put("web-tsfile-api", ModulePath.init("web-tsfile-api"));
+ moduleMap.put("web-tsfile-core", ModulePath.init("web-tsfile-core"));
+ moduleMap.put("web-ide-api", ModulePath.init("web-ide-api"));
+ moduleMap.put("web-ide-webapi", ModulePath.init("ide-config-webapi","server/platform/dev/main/libs"));
+ moduleMap.put("runtime-api", ModulePath.init("web-jitengine-runtimebuild-api"));
+ moduleMap.put("runtime-core", ModulePath.init("web-jitengine-runtimebuild-core"));
+ moduleMap.put("runtime-scriptcache", ModulePath.init("web-jitengine-runtimebuild-scriptcache"));
+ moduleMap.put("runtime-scriptcache-api", ModulePath.init("web-jitengine-runtimebuild-scriptcache-api"));
+ moduleMap.put("jitengine-web-api", ModulePath.init("web-jitengine-web-api"));
+ moduleMap.put("jitengine-web-core", ModulePath.init("web-jitengine-web-core"));
+ moduleMap.put("web-npmpackage-core", ModulePath.init("web-npmpackage-core"));
+ moduleMap.put("web-npmpackage-api", ModulePath.init("web-npmpackage-api"));
+ moduleMap.put("web-npmpackage-patch", ModulePath.init("web-npmpackage-patch"));
+ moduleMap.put("web-dynamic-form-api", ModulePath.init("web-dynamicform-api"));
+ moduleMap.put("web-dynamic-form-core", ModulePath.init("web-dynamicform-core"));
+ moduleMap.put("web-formconfig-api", ModulePath.init("web-formconfig-api"));
+ moduleMap.put("web-formconfig-core", ModulePath.init("web-formconfig-core"));
+ return moduleMap;
+ }
+
+ @Data
+ private static class ModulePath {
+ private String moduleId;
+ private String relativePath = "server/platform/common/libs";
+
+ public static ModulePath init(String moduleId) {
+ ModulePath modulePath = new ModulePath();
+ modulePath.moduleId = moduleId;
+ return modulePath;
+ }
+
+ public static ModulePath init(String moduleId, String relativePath) {
+ ModulePath modulePath = new ModulePath();
+ modulePath.moduleId = moduleId;
+ modulePath.relativePath = relativePath;
+ return modulePath;
+ }
+ }
+
+ private Model getPom(String basePath) throws IOException, XmlPullParserException {
+ File file = new File(basePath, "pom.xml");
+ FileReader reader = null;
+
+ try {
+ reader = new FileReader(file);
+ return new MavenXpp3Reader().read(reader);
+ } finally {
+ IOUtils.closeQuietly(reader);
+ }
+
+ }
+
+}
diff --git a/web-common/src/test/java/com/inspur/edp/web/common/entity/TerminalTypeTest.java b/web-common/src/test/java/com/inspur/edp/web/common/entity/TerminalTypeTest.java
index 497b619d413a26d357b7fd5933813496de5d5642..16687f63351e0b0bbdc740849f17a09863b15eb0 100644
--- a/web-common/src/test/java/com/inspur/edp/web/common/entity/TerminalTypeTest.java
+++ b/web-common/src/test/java/com/inspur/edp/web/common/entity/TerminalTypeTest.java
@@ -28,8 +28,8 @@ public class TerminalTypeTest {
public void getAllTypeSuffixList() {
List terminalTypeSuffixList = TerminalType.getAllTypeSuffixList();
assertEquals(terminalTypeSuffixList.size(), 2);
- assertEquals(terminalTypeSuffixList.contains(TerminalType.PC.getFormMetadataSuffix()), true);
- assertEquals(terminalTypeSuffixList.contains(TerminalType.MOBILE.getFormMetadataSuffix()), true);
+ assertTrue(terminalTypeSuffixList.contains(TerminalType.PC.getFormMetadataSuffix()));
+ assertTrue(terminalTypeSuffixList.contains(TerminalType.MOBILE.getFormMetadataSuffix()));
}
@Test
diff --git a/web-common/src/test/java/com/inspur/edp/web/common/io/FileUtilityTest.java b/web-common/src/test/java/com/inspur/edp/web/common/io/FileUtilityTest.java
index cac7c0a37b53dc1d332bfece747ef66f236f0e58..498edd3d1935ac6f4db0e3e0307ead74d95fea99 100644
--- a/web-common/src/test/java/com/inspur/edp/web/common/io/FileUtilityTest.java
+++ b/web-common/src/test/java/com/inspur/edp/web/common/io/FileUtilityTest.java
@@ -69,7 +69,7 @@ public class FileUtilityTest {
@Test
public void testExists() {
File file = new File("c:/bucunzai");
- Assert.assertEquals(file.isDirectory(), true);
+ Assert.assertTrue(file.isDirectory());
}
diff --git a/web-common/src/test/java/com/inspur/edp/web/common/utility/StringUtilityTest.java b/web-common/src/test/java/com/inspur/edp/web/common/utility/StringUtilityTest.java
index ae6f02b4f55fe60275ecde39027b4ce8e7f0e852..b7d45c6d9e31eb446e89371fed4894fb32d27a43 100644
--- a/web-common/src/test/java/com/inspur/edp/web/common/utility/StringUtilityTest.java
+++ b/web-common/src/test/java/com/inspur/edp/web/common/utility/StringUtilityTest.java
@@ -19,9 +19,9 @@ package com.inspur.edp.web.common.utility;
import org.junit.Assert;
import org.junit.Test;
-import java.util.Arrays;
+import java.util.Collections;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
public class StringUtilityTest {
@@ -76,9 +76,9 @@ public class StringUtilityTest {
@Test
public void testTrim() {
- String source = "'\"fdfdfdfdf\'fdfdfdf\"'";
- String result = StringUtility.trimStringWith(source, Arrays.asList('\''));
- Assert.assertEquals(result, "fdfdfdfdf\'fdfdfdf");
+ String source = "'\"fdfdfdfdf'fdfdfdf\"'";
+ String result = StringUtility.trimStringWith(source, Collections.singletonList('\''));
+ Assert.assertEquals(result, "fdfdfdfdf'fdfdfdf");
}
diff --git a/web-designschema/src/main/java/com/inspur/edp/web/designschema/synchronization/helplinkconfig/HelpLinkConfigConvertor.java b/web-designschema/src/main/java/com/inspur/edp/web/designschema/synchronization/helplinkconfig/HelpLinkConfigConvertor.java
index 1e049f7a081efff24ae2a46b1177f79fec010b20..3a6b532c6ac397d991aea04c00b276746f39180e 100644
--- a/web-designschema/src/main/java/com/inspur/edp/web/designschema/synchronization/helplinkconfig/HelpLinkConfigConvertor.java
+++ b/web-designschema/src/main/java/com/inspur/edp/web/designschema/synchronization/helplinkconfig/HelpLinkConfigConvertor.java
@@ -32,7 +32,7 @@ public class HelpLinkConfigConvertor {
return linkedConfigCollection;
}
- List linkedConfigList = linkConfig.getConfig().stream().map(t -> LinkedConfigItemConvertor.convert(t)).collect(Collectors.toList());
+ List linkedConfigList = linkConfig.getConfig().stream().map(LinkedConfigItemConvertor::convert).collect(Collectors.toList());
linkedConfigCollection.addAll(linkedConfigList);
return linkedConfigCollection;
}
diff --git a/web-designschema/src/main/java/com/inspur/edp/web/designschema/udtextensiondef/FormUdtExtension.java b/web-designschema/src/main/java/com/inspur/edp/web/designschema/udtextensiondef/FormUdtExtension.java
index 3966b9336e53ebbfdc6e4064e619d6ed8989d7f9..f4036351262dcb236ee82e28a2f17703c0a712b3 100644
--- a/web-designschema/src/main/java/com/inspur/edp/web/designschema/udtextensiondef/FormUdtExtension.java
+++ b/web-designschema/src/main/java/com/inspur/edp/web/designschema/udtextensiondef/FormUdtExtension.java
@@ -20,6 +20,7 @@ import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.JsonNode;
import com.inspur.edp.udt.designtime.api.extension.BaseUdtExtension;
import lombok.Data;
+import lombok.EqualsAndHashCode;
import java.util.HashMap;
@@ -27,6 +28,7 @@ import java.util.HashMap;
* @author liyz
* @date 2021/7/27
*/
+@EqualsAndHashCode(callSuper = true)
@Data
public class FormUdtExtension extends BaseUdtExtension {
@@ -35,7 +37,7 @@ public class FormUdtExtension extends BaseUdtExtension {
private LookupConfig lookupConfig;
@Data
- public class LookupConfig {
+ public static class LookupConfig {
private String helpId;
private String idField;
private String valueField;
diff --git a/web-designschema/src/main/java/com/inspur/edp/web/designschema/udtextensiondef/FormUdtExtensionDeserializer.java b/web-designschema/src/main/java/com/inspur/edp/web/designschema/udtextensiondef/FormUdtExtensionDeserializer.java
index eff29cefe07ea4efdf58507c0ec6d17e3d072bc5..7b92ff86bf1dd3043e5f11ab84fd164ca9c6f1a2 100644
--- a/web-designschema/src/main/java/com/inspur/edp/web/designschema/udtextensiondef/FormUdtExtensionDeserializer.java
+++ b/web-designschema/src/main/java/com/inspur/edp/web/designschema/udtextensiondef/FormUdtExtensionDeserializer.java
@@ -62,7 +62,7 @@ public class FormUdtExtensionDeserializer extends BaseUdtExtensionDeserializer new ArrayList