From 22e74532d622390818b3424f01e219212afce7b5 Mon Sep 17 00:00:00 2001 From: Fangjie Hu Date: Fri, 9 Sep 2016 21:15:27 +0800 Subject: [PATCH] update --- .../com/fr/dependservice/PluginService.java | 43 +++++++++++++++++++ .../fr/dependservice/PluginServiceUtils.java | 18 ++++++++ 2 files changed, 61 insertions(+) create mode 100644 designer_base/src/com/fr/dependservice/PluginService.java create mode 100644 designer_base/src/com/fr/dependservice/PluginServiceUtils.java diff --git a/designer_base/src/com/fr/dependservice/PluginService.java b/designer_base/src/com/fr/dependservice/PluginService.java new file mode 100644 index 0000000000..c76b22b508 --- /dev/null +++ b/designer_base/src/com/fr/dependservice/PluginService.java @@ -0,0 +1,43 @@ +package com.fr.dependservice; + +import com.fr.base.FRContext; +import com.fr.general.FRLogger; +import com.fr.plugin.dependence.PluginServiceCreator; + +import java.util.HashMap; + +/** + * Created by hufan on 2016/9/9. + */ +public abstract class PluginService implements PluginServiceCreator { + @Override + public String remoteServiceAction(String req) throws Exception { + HashMap para = new HashMap(); + para.put("op", "fr_remote_design"); + para.put("cmd", "design_get_plugin_service_data"); + para.put("serviceID", getServiceID()); + para.put("req", req); + return PluginServiceUtils.getDataFormRemote(para); + } + /** + * 服务ID + * @return + */ + protected abstract String getServiceID(); + + /** + * 获取数据 + * @param req + * @return + */ + @Override + public String fetchServiceData(String req) { + try { + //设置请求数据,这个地方可能涉及到多线程同时到达,拿错请求和回应的问题 + return FRContext.getCurrentEnv().pluginServiceAction(this, req); + //返回 + } catch (Exception e) { + return null; + } + } +} diff --git a/designer_base/src/com/fr/dependservice/PluginServiceUtils.java b/designer_base/src/com/fr/dependservice/PluginServiceUtils.java new file mode 100644 index 0000000000..b5304aa725 --- /dev/null +++ b/designer_base/src/com/fr/dependservice/PluginServiceUtils.java @@ -0,0 +1,18 @@ +package com.fr.dependservice; + +import com.fr.base.FRContext; +import com.fr.env.RemoteEnv; +import com.fr.general.IOUtils; + +import java.io.InputStream; +import java.util.HashMap; + +/** + * Created by hufan on 2016/9/9. + */ +public class PluginServiceUtils { + public static String getDataFormRemote(HashMap para) throws Exception { + InputStream inputStream = ((RemoteEnv)FRContext.getCurrentEnv()).getDataFormRemote(para); + return IOUtils.inputStream2String(inputStream); + } +}