修改容器内部路径
parent
2e2f18bf52
commit
97c0796370
|
@ -1,33 +1,33 @@
|
||||||
package com.muyu.Engineclient;
|
//package com.muyu.Engineclient;
|
||||||
|
//
|
||||||
import com.muyu.domain.EngineVersion;
|
//import com.muyu.domain.EngineVersion;
|
||||||
import com.muyu.remote.RemoteVersionService;
|
//import com.muyu.remote.RemoteVersionService;
|
||||||
import lombok.extern.log4j.Log4j2;
|
//import lombok.extern.log4j.Log4j2;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
//import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.boot.ApplicationArguments;
|
//import org.springframework.boot.ApplicationArguments;
|
||||||
import org.springframework.boot.ApplicationRunner;
|
//import org.springframework.boot.ApplicationRunner;
|
||||||
import org.springframework.stereotype.Component;
|
//import org.springframework.stereotype.Component;
|
||||||
|
//
|
||||||
import java.util.List;
|
//import java.util.List;
|
||||||
|
//
|
||||||
/**
|
///**
|
||||||
* @Author:qdm
|
// * @Author:qdm
|
||||||
* @Package:com.muyu.Engineclient
|
// * @Package:com.muyu.Engineclient
|
||||||
* @Project:cloud-etl-engine
|
// * @Project:cloud-etl-engine
|
||||||
* @name:RuleEngineClientRunner
|
// * @name:RuleEngineClientRunner
|
||||||
* @Date:2024/8/29 11:05
|
// * @Date:2024/8/29 11:05
|
||||||
*/
|
// */
|
||||||
@Log4j2
|
//@Log4j2
|
||||||
@Component
|
//@Component
|
||||||
public class RuleEngineClientRunner implements ApplicationRunner {
|
//public class RuleEngineClientRunner implements ApplicationRunner {
|
||||||
@Autowired
|
// @Autowired
|
||||||
private RemoteVersionService remoteVersionService;
|
// private RemoteVersionService remoteVersionService;
|
||||||
|
//
|
||||||
@Override
|
// @Override
|
||||||
public void run(ApplicationArguments args) throws Exception {
|
// public void run(ApplicationArguments args) throws Exception {
|
||||||
com.muyu.domain.constants.Result<List<EngineVersion>> listResult = remoteVersionService.selectVersionList();
|
// com.muyu.domain.constants.Result<List<EngineVersion>> listResult = remoteVersionService.selectVersionList();
|
||||||
log.info(listResult);
|
// log.info(listResult);
|
||||||
List<EngineVersion> engineVersionList = listResult.getData();
|
// List<EngineVersion> engineVersionList = listResult.getData();
|
||||||
RuleEngineInit.init(engineVersionList);
|
// RuleEngineInit.init(engineVersionList);
|
||||||
}
|
// }
|
||||||
}
|
//}
|
||||||
|
|
|
@ -1,28 +1,28 @@
|
||||||
package com.muyu.Engineclient;
|
//package com.muyu.Engineclient;
|
||||||
|
//
|
||||||
import com.muyu.domain.EngineVersion;
|
//import com.muyu.domain.EngineVersion;
|
||||||
import com.muyu.domain.constants.RuleOperationConstants;
|
//import com.muyu.domain.constants.RuleOperationConstants;
|
||||||
import com.muyu.dynamicLoad.DynamicLoader;
|
//import com.muyu.dynamicLoad.DynamicLoader;
|
||||||
import org.springframework.stereotype.Component;
|
//import org.springframework.stereotype.Component;
|
||||||
|
//
|
||||||
import java.util.HashMap;
|
//import java.util.HashMap;
|
||||||
import java.util.List;
|
//import java.util.List;
|
||||||
import java.util.Map;
|
//import java.util.Map;
|
||||||
|
//
|
||||||
@Component
|
//@Component
|
||||||
public class RuleEngineInit {
|
//public class RuleEngineInit {
|
||||||
private static Map<Long, Map<String, byte[]>> engineMap = new HashMap();
|
// private static Map<Long, Map<String, byte[]>> engineMap = new HashMap();
|
||||||
|
//
|
||||||
public static void init(List<EngineVersion> engineVersionList) {
|
// public static void init(List<EngineVersion> engineVersionList) {
|
||||||
engineVersionList.stream().forEach(engineVersion -> {
|
// engineVersionList.stream().forEach(engineVersion -> {
|
||||||
String content = engineVersion.getRuleContent().replaceAll("\r\n", "");
|
// String content = engineVersion.getRuleContent().replaceAll("\r\n", "");
|
||||||
Map<String, byte[]> bytecode = DynamicLoader.compile(engineVersion.getVersionClass() +
|
// Map<String, byte[]> bytecode = DynamicLoader.compile(engineVersion.getVersionClass() +
|
||||||
RuleOperationConstants.FILE_SUFFIX, content);
|
// RuleOperationConstants.FILE_SUFFIX, content);
|
||||||
engineMap.put(engineVersion.getId(), bytecode);
|
// engineMap.put(engineVersion.getId(), bytecode);
|
||||||
});
|
// });
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
public static Map<String, byte[]> getEngineMap(Long ruleId) {
|
// public static Map<String, byte[]> getEngineMap(Long ruleId) {
|
||||||
return engineMap.get(ruleId);
|
// return engineMap.get(ruleId);
|
||||||
}
|
// }
|
||||||
}
|
//}
|
||||||
|
|
|
@ -1,89 +1,89 @@
|
||||||
package com.muyu.config;
|
//package com.muyu.config;
|
||||||
|
//
|
||||||
import com.muyu.Engineclient.RuleEngineInit;
|
//import com.muyu.Engineclient.RuleEngineInit;
|
||||||
import com.muyu.common.core.domain.Result;
|
//import com.muyu.common.core.domain.Result;
|
||||||
import com.muyu.context.DataModelContextHolder;
|
//import com.muyu.context.DataModelContextHolder;
|
||||||
import com.muyu.context.DataSetContextHolder;
|
//import com.muyu.context.DataSetContextHolder;
|
||||||
import com.muyu.context.RecordContextHolder;
|
//import com.muyu.context.RecordContextHolder;
|
||||||
import com.muyu.domain.EngineVersion;
|
//import com.muyu.domain.EngineVersion;
|
||||||
import com.muyu.dynamicLoad.DynamicLoader;
|
//import com.muyu.dynamicLoad.DynamicLoader;
|
||||||
import com.muyu.model.DataModel;
|
//import com.muyu.model.DataModel;
|
||||||
import com.muyu.model.DataSetModel;
|
//import com.muyu.model.DataSetModel;
|
||||||
import com.muyu.model.RecordModel;
|
//import com.muyu.model.RecordModel;
|
||||||
import com.muyu.model.process.DataProcessModel;
|
//import com.muyu.model.process.DataProcessModel;
|
||||||
import com.muyu.model.process.DataSetProcessModel;
|
//import com.muyu.model.process.DataSetProcessModel;
|
||||||
import com.muyu.model.process.RecordProcessModel;
|
//import com.muyu.model.process.RecordProcessModel;
|
||||||
import com.muyu.remote.RemoteVersionService;
|
//import com.muyu.remote.RemoteVersionService;
|
||||||
import com.muyu.req.EngineVersionTestReq;
|
//import com.muyu.req.EngineVersionTestReq;
|
||||||
import lombok.extern.log4j.Log4j2;
|
//import lombok.extern.log4j.Log4j2;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
//import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.context.annotation.ComponentScan;
|
//import org.springframework.context.annotation.ComponentScan;
|
||||||
import org.springframework.context.annotation.Import;
|
//import org.springframework.context.annotation.Import;
|
||||||
import org.springframework.stereotype.Component;
|
//import org.springframework.stereotype.Component;
|
||||||
|
//
|
||||||
import java.lang.reflect.Method;
|
//import java.lang.reflect.Method;
|
||||||
import java.util.ArrayList;
|
//import java.util.ArrayList;
|
||||||
import java.util.List;
|
//import java.util.List;
|
||||||
import java.util.Map;
|
//import java.util.Map;
|
||||||
|
//
|
||||||
@Log4j2
|
//@Log4j2
|
||||||
@ComponentScan
|
//@ComponentScan
|
||||||
@Component
|
//@Component
|
||||||
@Import(value = {RuleEngineClientRunner.class})
|
//@Import(value = {RuleEngineClientRunner.class})
|
||||||
public class EngineConfig {
|
//public class EngineConfig {
|
||||||
|
//
|
||||||
@Autowired
|
// @Autowired
|
||||||
private RemoteVersionService remoteVersionService;
|
// private RemoteVersionService remoteVersionService;
|
||||||
|
//
|
||||||
public Result engineVersionTest(EngineVersionTestReq testReq) {
|
// public Result engineVersionTest(EngineVersionTestReq testReq) {
|
||||||
if (testReq.getScope() == 4) {
|
// if (testReq.getScope() == 4) {
|
||||||
DataProcessModel dataProcessModel = DataProcessModel.builder().dataModel(testReq.getDataModel()).build();
|
// DataProcessModel dataProcessModel = DataProcessModel.builder().dataModel(testReq.getDataModel()).build();
|
||||||
DataModelContextHolder.set(dataProcessModel);
|
// DataModelContextHolder.set(dataProcessModel);
|
||||||
} else if (testReq.getScope() == 3) {
|
// } else if (testReq.getScope() == 3) {
|
||||||
RecordModel recordModel = RecordModel.builder().dataModels(testReq.getDataModelList()).build();
|
// RecordModel recordModel = RecordModel.builder().dataModels(testReq.getDataModelList()).build();
|
||||||
RecordProcessModel recordProcessModel = RecordProcessModel.builder()
|
// RecordProcessModel recordProcessModel = RecordProcessModel.builder()
|
||||||
.keys(testReq.getKeys())
|
// .keys(testReq.getKeys())
|
||||||
.recordModel(recordModel)
|
// .recordModel(recordModel)
|
||||||
.build();
|
// .build();
|
||||||
RecordContextHolder.set(recordProcessModel);
|
// RecordContextHolder.set(recordProcessModel);
|
||||||
} else if (testReq.getScope() == 2) {
|
// } else if (testReq.getScope() == 2) {
|
||||||
List<RecordModel> recordModelList = new ArrayList<>();
|
// List<RecordModel> recordModelList = new ArrayList<>();
|
||||||
List<List<DataModel>> dataModelLists = testReq.getDataModelLists();
|
// List<List<DataModel>> dataModelLists = testReq.getDataModelLists();
|
||||||
dataModelLists.stream().forEach(dataModelList -> {
|
// dataModelLists.stream().forEach(dataModelList -> {
|
||||||
RecordModel recordModel = RecordModel.builder().dataModels(dataModelList).build();
|
// RecordModel recordModel = RecordModel.builder().dataModels(dataModelList).build();
|
||||||
recordModelList.add(recordModel);
|
// recordModelList.add(recordModel);
|
||||||
});
|
// });
|
||||||
DataSetModel dataSetModel = DataSetModel.builder()
|
// DataSetModel dataSetModel = DataSetModel.builder()
|
||||||
.recordModels(recordModelList)
|
// .recordModels(recordModelList)
|
||||||
.build();
|
// .build();
|
||||||
DataSetProcessModel dataSetProcessModel = DataSetProcessModel.builder()
|
// DataSetProcessModel dataSetProcessModel = DataSetProcessModel.builder()
|
||||||
.dataSetModel(dataSetModel)
|
// .dataSetModel(dataSetModel)
|
||||||
.build();
|
// .build();
|
||||||
DataSetContextHolder.set(dataSetProcessModel);
|
// DataSetContextHolder.set(dataSetProcessModel);
|
||||||
}
|
// }
|
||||||
com.muyu.domain.constants.Result<EngineVersion> version = remoteVersionService.getVersion(testReq.getEngineVersionId());
|
// com.muyu.domain.constants.Result<EngineVersion> version = remoteVersionService.getVersion(testReq.getEngineVersionId());
|
||||||
EngineVersion engineVersion = version.getData();
|
// EngineVersion engineVersion = version.getData();
|
||||||
Map<String, byte[]> engineMap = RuleEngineInit.getEngineMap(testReq.getEngineVersionId());
|
// Map<String, byte[]> engineMap = RuleEngineInit.getEngineMap(testReq.getEngineVersionId());
|
||||||
|
//
|
||||||
try {
|
// try {
|
||||||
@SuppressWarnings("resource")
|
// @SuppressWarnings("resource")
|
||||||
DynamicLoader.MemoryClassLoader classLoader = new DynamicLoader.MemoryClassLoader(engineMap);
|
// DynamicLoader.MemoryClassLoader classLoader = new DynamicLoader.MemoryClassLoader(engineMap);
|
||||||
Class<?> aClass = classLoader.loadClass(engineVersion.getVersionClass());
|
// Class<?> aClass = classLoader.loadClass(engineVersion.getVersionClass());
|
||||||
Method method = aClass.getDeclaredMethod("execution");
|
// Method method = aClass.getDeclaredMethod("execution");
|
||||||
Object o = aClass.newInstance();
|
// Object o = aClass.newInstance();
|
||||||
method.invoke(o);
|
// method.invoke(o);
|
||||||
} catch (Exception e) {
|
// } catch (Exception e) {
|
||||||
log.info(e.getMessage());
|
// log.info(e.getMessage());
|
||||||
return Result.success("程序异常: 信息[" + e.getLocalizedMessage() + "]异常");
|
// return Result.success("程序异常: 信息[" + e.getLocalizedMessage() + "]异常");
|
||||||
}
|
// }
|
||||||
return Result.success("测试正常,无异常数据返回");
|
// return Result.success("测试正常,无异常数据返回");
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
public Object getLocation() {
|
// public Object getLocation() {
|
||||||
return "没有信息";
|
// return "没有信息";
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
public Object getPack() {
|
// public Object getPack() {
|
||||||
return null;
|
// return null;
|
||||||
}
|
// }
|
||||||
}
|
//}
|
||||||
|
|
|
@ -1,29 +1,29 @@
|
||||||
package com.muyu.config;
|
//package com.muyu.config;
|
||||||
|
//
|
||||||
import com.muyu.Engineclient.RuleEngineInit;
|
//import com.muyu.Engineclient.RuleEngineInit;
|
||||||
import com.muyu.domain.EngineVersion;
|
//import com.muyu.domain.EngineVersion;
|
||||||
import com.muyu.domain.constants.Result;
|
//import com.muyu.domain.constants.Result;
|
||||||
import com.muyu.remote.RemoteVersionService;
|
//import com.muyu.remote.RemoteVersionService;
|
||||||
import lombok.extern.log4j.Log4j2;
|
//import lombok.extern.log4j.Log4j2;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
//import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.boot.ApplicationArguments;
|
//import org.springframework.boot.ApplicationArguments;
|
||||||
import org.springframework.boot.ApplicationRunner;
|
//import org.springframework.boot.ApplicationRunner;
|
||||||
import org.springframework.stereotype.Component;
|
//import org.springframework.stereotype.Component;
|
||||||
|
//
|
||||||
import java.util.List;
|
//import java.util.List;
|
||||||
|
//
|
||||||
@Component
|
//@Component
|
||||||
@Log4j2
|
//@Log4j2
|
||||||
public class RuleEngineClientRunner implements ApplicationRunner {
|
//public class RuleEngineClientRunner implements ApplicationRunner {
|
||||||
|
//
|
||||||
@Autowired
|
// @Autowired
|
||||||
private RemoteVersionService remoteVersionService;
|
// private RemoteVersionService remoteVersionService;
|
||||||
|
//
|
||||||
@Override
|
// @Override
|
||||||
public void run(ApplicationArguments args) throws Exception {
|
// public void run(ApplicationArguments args) throws Exception {
|
||||||
Result<List<EngineVersion>> listResult = remoteVersionService.selectVersionList();
|
// Result<List<EngineVersion>> listResult = remoteVersionService.selectVersionList();
|
||||||
log.info(listResult);
|
// log.info(listResult);
|
||||||
List<EngineVersion> engineVersionList = listResult.getData();
|
// List<EngineVersion> engineVersionList = listResult.getData();
|
||||||
RuleEngineInit.init(engineVersionList);
|
// RuleEngineInit.init(engineVersionList);
|
||||||
}
|
// }
|
||||||
}
|
//}
|
||||||
|
|
|
@ -11,9 +11,6 @@ import java.util.Date;
|
||||||
@Component
|
@Component
|
||||||
public class GenerateConstant {
|
public class GenerateConstant {
|
||||||
|
|
||||||
public static void main(String[] args) {
|
|
||||||
System.out.println("hello world");
|
|
||||||
}
|
|
||||||
|
|
||||||
public static final String DATA_FIELD = "DataEngineValueActuator";
|
public static final String DATA_FIELD = "DataEngineValueActuator";
|
||||||
public static final String DATA_RECORD = "DataEngineRecordActuator";
|
public static final String DATA_RECORD = "DataEngineRecordActuator";
|
||||||
|
|
Binary file not shown.
Loading…
Reference in New Issue