diff --git a/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/GroovyCommonUtil.java b/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/GroovyCommonUtil.java deleted file mode 100644 index 11a9a7f..0000000 --- a/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/GroovyCommonUtil.java +++ /dev/null @@ -1,29 +0,0 @@ -package cn.estsh.i3plus.pojo.bsp.common; - -import groovy.lang.GroovyClassLoader; -import groovy.lang.GroovyObject; - -import java.util.Map; - -/** - * @Description :脚本执行工具类 - * @Reference : - * @Author : Castle - * @CreateDate : 2021/7/22 15:38 - * @Modify: - **/ -public class GroovyCommonUtil { - - public static Map executeGroovy(String script, String methodName, Object... args) throws IllegalAccessException, InstantiationException { - Class scriptClass = new GroovyClassLoader().parseClass(script); - GroovyObject groovyObject = (GroovyObject) scriptClass.newInstance(); - Map resultMap; - if (args.length > 0) { - resultMap = (Map) groovyObject.invokeMethod(methodName, args); - } else { - resultMap = (Map) groovyObject.invokeMethod(methodName, null); - } - - return resultMap; - } -} diff --git a/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/GsonTool.java b/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/GsonTool.java deleted file mode 100644 index 63e2956..0000000 --- a/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/GsonTool.java +++ /dev/null @@ -1,98 +0,0 @@ -package cn.estsh.i3plus.pojo.bsp.common; - -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; -import com.google.gson.reflect.TypeToken; - -import java.lang.reflect.ParameterizedType; -import java.lang.reflect.Type; -import java.util.List; - -/** - * @Description : - * @Reference : - * @Author : Castle - * @CreateDate : 2021/6/17 13:40 - * @Modify: - **/ -public class GsonTool { - private static Gson gson = null; - - static { - gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create(); - } - - /** - * Object 转成 json - * - * @param src - * @return String - */ - public static String toJson(Object src) { - return gson.toJson(src); - } - - /** - * json 转成 特定的cls的Object - * - * @param json - * @param classOfT - * @return - */ - public static T fromJson(String json, Class classOfT) { - return gson.fromJson(json, classOfT); - } - - /** - * json 转成 特定的 rawClass 的Object - * - * @param json - * @param classOfT - * @param argClassOfT - * @return - */ - public static T fromJson(String json, Class classOfT, Class argClassOfT) { - Type type = new ParameterizedType4ReturnT(classOfT, new Class[]{argClassOfT}); - return gson.fromJson(json, type); - } - - public static class ParameterizedType4ReturnT implements ParameterizedType { - private final Class raw; - private final Type[] args; - - public ParameterizedType4ReturnT(Class raw, Type[] args) { - this.raw = raw; - this.args = args != null ? args : new Type[0]; - } - - @Override - public Type[] getActualTypeArguments() { - return args; - } - - @Override - public Type getRawType() { - return raw; - } - - @Override - public Type getOwnerType() { - return null; - } - } - - /** - * json 转成 特定的cls的list - * - * @param json - * @param classOfT - * @return - */ - public static List fromJsonList(String json, Class classOfT) { - return gson.fromJson( - json, - new TypeToken>() { - }.getType() - ); - } -} diff --git a/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/HttpUtils.java b/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/HttpUtils.java deleted file mode 100644 index d5be5c1..0000000 --- a/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/HttpUtils.java +++ /dev/null @@ -1,149 +0,0 @@ -//package cn.estsh.i3plus.pojo.bsp.common; -// -//import cn.estsh.i3plus.pojo.base.bean.BaseResultBean; -//import org.slf4j.Logger; -//import org.slf4j.LoggerFactory; -// -//import javax.net.ssl.*; -//import java.io.BufferedReader; -//import java.io.DataOutputStream; -//import java.io.InputStreamReader; -//import java.net.HttpURLConnection; -//import java.net.URL; -//import java.security.cert.CertificateException; -//import java.security.cert.X509Certificate; -// -///** -// * @Description : -// * @Reference : -// * @Author : Castle -// * @CreateDate : 2021/6/17 13:37 -// * @Modify: -// **/ -//public class HttpUtils { -// private static Logger logger = LoggerFactory.getLogger(HttpUtils.class); -// -// // trust-https start -// private static void trustAllHosts(HttpsURLConnection connection) { -// try { -// SSLContext sc = SSLContext.getInstance("TLS"); -// sc.init(null, trustAllCerts, new java.security.SecureRandom()); -// SSLSocketFactory newFactory = sc.getSocketFactory(); -// -// connection.setSSLSocketFactory(newFactory); -// } catch (Exception e) { -// logger.error(e.getMessage(), e); -// } -// connection.setHostnameVerifier(new HostnameVerifier() { -// @Override -// public boolean verify(String hostname, SSLSession session) { -// return true; -// } -// }); -// } -// -// private static final TrustManager[] trustAllCerts = new TrustManager[]{new X509TrustManager() { -// @Override -// public X509Certificate[] getAcceptedIssuers() { -// return new X509Certificate[]{}; -// } -// -// @Override -// public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException { -// } -// -// @Override -// public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException { -// } -// }}; -// // trust-https end -// -// -// /** -// * post -// * -// * @param url -// * @param timeout -// * @param requestObj -// * @return -// */ -// public static ResultBean postBody(String url, int timeout, Object requestObj) { -// HttpURLConnection connection = null; -// BufferedReader bufferedReader = null; -// try { -// // connection -// URL realUrl = new URL(url); -// connection = (HttpURLConnection) realUrl.openConnection(); -// -// // trust-https -// boolean useHttps = url.startsWith("https"); -// if (useHttps) { -// HttpsURLConnection https = (HttpsURLConnection) connection; -// trustAllHosts(https); -// } -// -// // connection setting -// connection.setRequestMethod("POST"); -// connection.setDoOutput(true); -// connection.setDoInput(true); -// connection.setUseCaches(false); -// connection.setReadTimeout(timeout * 1000); -// connection.setConnectTimeout(3 * 1000); -// connection.setRequestProperty("connection", "Keep-Alive"); -// connection.setRequestProperty("Content-Type", "application/json;charset=UTF-8"); -// connection.setRequestProperty("Accept-Charset", "application/json;charset=UTF-8"); -// -// // do connection -// connection.connect(); -// -// // write requestBody -// if (requestObj != null) { -// String requestBody = GsonTool.toJson(requestObj); -// -// DataOutputStream dataOutputStream = new DataOutputStream(connection.getOutputStream()); -// dataOutputStream.write(requestBody.getBytes("UTF-8")); -// dataOutputStream.flush(); -// dataOutputStream.close(); -// } -// -// // valid StatusCode -// int statusCode = connection.getResponseCode(); -// if (statusCode != 200) { -// return ResultBean.fail("rpc remoting fail, StatusCode(" + statusCode + ") invalid. for url : " + url); -//// return new BaseResultBean().errorMsg("rpc remoting fail, StatusCode(" + statusCode + ") invalid. for url : " + url); -//// return new ReturnT(ReturnT.FAIL_CODE, "rpc remoting fail, StatusCode(" + statusCode + ") invalid. for url : " + url); -// } -// -// // result -// bufferedReader = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8")); -// StringBuilder result = new StringBuilder(); -// String line; -// while ((line = bufferedReader.readLine()) != null) { -// result.append(line); -// } -// String resultJson = result.toString(); -// // parse returnT -// try { -// return GsonTool.fromJson(resultJson, BaseResultBean.class); -// } catch (Exception e) { -// logger.error("rpc remoting (url=" + url + ") response content invalid(" + resultJson + ").", e); -// return ResultBean.fail("rpc remoting fail, StatusCode(" + statusCode + ") invalid. for url : " + url); -// } -// } catch (Exception e) { -// logger.error(e.getMessage(), e); -// return ResultBean.fail("rpc remoting fail, error message(" + e.getMessage() + ") invalid. for url : " + url); -// } finally { -// try { -// if (bufferedReader != null) { -// bufferedReader.close(); -// } -// if (connection != null) { -// connection.disconnect(); -// } -// } catch (Exception e2) { -// logger.error(e2.getMessage(), e2); -// } -// } -// } -// -//} \ No newline at end of file diff --git a/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/script/strategy/GroovyScript.java b/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/script/strategy/GroovyScript.java deleted file mode 100644 index f38f786..0000000 --- a/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/script/strategy/GroovyScript.java +++ /dev/null @@ -1,30 +0,0 @@ -package cn.estsh.i3plus.pojo.bsp.common.script.strategy; - -import groovy.lang.GroovyClassLoader; -import groovy.lang.GroovyObject; - -import java.util.Map; -import java.util.Set; - -/** - * @Description : 默认执行execute方法,execute入参为空,groovy的属性是execute的入参 - * @Reference : - * @Author : Castle - * @CreateDate : 2022/1/26 15:03 - * @Modify: - **/ -public class GroovyScript implements Script{ - - @Override - public Map execute(String script,Map paramMap,String methodName) throws IllegalAccessException, InstantiationException { - Class scriptClass = new GroovyClassLoader().parseClass(script); - GroovyObject groovyObject = (GroovyObject) scriptClass.newInstance(); - Set keys = paramMap.keySet(); - keys.forEach(key ->{ - groovyObject.setProperty(key,paramMap.get(key)); - }); - methodName = methodName != null ? methodName : "execute"; - Map resultMap = (Map)groovyObject.invokeMethod(methodName,null); - return resultMap; - } -} diff --git a/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/script/strategy/Script.java b/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/script/strategy/Script.java deleted file mode 100644 index 6b437f1..0000000 --- a/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/common/script/strategy/Script.java +++ /dev/null @@ -1,21 +0,0 @@ -package cn.estsh.i3plus.pojo.bsp.common.script.strategy; - -import java.util.Map; - -/** - * @Description : - * @Reference : - * @Author : Castle - * @CreateDate : 2022/1/26 15:02 - * @Modify: - **/ -public interface Script { - /** - * 脚本接口 - * @param script - * @param paramMap - * @param methodName - * @return - */ - Map execute(String script,Map paramMap,String methodName) throws IllegalAccessException, InstantiationException; -} diff --git a/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/server/bean/model/RequestModel.java b/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/server/bean/model/RequestModel.java index 0532df0..1fdae76 100644 --- a/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/server/bean/model/RequestModel.java +++ b/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/server/bean/model/RequestModel.java @@ -33,6 +33,6 @@ public class RequestModel { private Integer scriptType; @ApiModelProperty("脚本内容") private String scriptContent; - @ApiModelProperty("脚本执行位置") - private Integer scriptExecutor; +// @ApiModelProperty("脚本执行位置") +// private Integer scriptExecutor; } diff --git a/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/server/bean/vo/ScriptTestVo.java b/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/server/bean/vo/ScriptTestVo.java index 0590447..5e307d3 100644 --- a/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/server/bean/vo/ScriptTestVo.java +++ b/modules/i3plus-pojo-bsp/src/main/java/cn/estsh/i3plus/pojo/bsp/server/bean/vo/ScriptTestVo.java @@ -4,7 +4,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import java.util.List; +import java.util.Map; /** * @Description : @@ -23,8 +23,8 @@ public class ScriptTestVo { @ApiModelProperty(value = "方法名,默认为execute") private String methodName; - @ApiModelProperty(value = "参数列表,注意入参顺序的对应") - private List arguments; + @ApiModelProperty(value = "参数列表") + private Map arguments; @ApiModelProperty(value = "执行器") private Integer targetExecutor;