From 4d5eb1708cdd0dec33f522743d08367b4705b599 Mon Sep 17 00:00:00 2001 From: vito Date: Tue, 31 May 2016 09:46:44 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E8=BF=9C=E7=A8=8B=E8=AE=BE=E8=AE=A1?= =?UTF-8?q?=E6=8F=92=E4=BB=B6=E4=BF=A1=E6=81=AF=E8=8E=B7=E5=8F=96=E9=97=AE?= =?UTF-8?q?=E9=A2=981/3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- designer_base/src/com/fr/env/RemoteEnv.java | 48 +++++++++++++++------ 1 file changed, 35 insertions(+), 13 deletions(-) diff --git a/designer_base/src/com/fr/env/RemoteEnv.java b/designer_base/src/com/fr/env/RemoteEnv.java index b146e146f..24ec3a4a3 100644 --- a/designer_base/src/com/fr/env/RemoteEnv.java +++ b/designer_base/src/com/fr/env/RemoteEnv.java @@ -28,6 +28,8 @@ import com.fr.json.JSONArray; import com.fr.json.JSONException; import com.fr.json.JSONObject; import com.fr.plugin.Plugin; +import com.fr.plugin.PluginLicense; +import com.fr.plugin.PluginLicenseManager; import com.fr.plugin.PluginLoader; import com.fr.stable.*; import com.fr.stable.file.XMLFileManagerProvider; @@ -2044,25 +2046,45 @@ public class RemoteEnv implements Env { } - public InputStream readPluginConfig() throws Exception { + private void readPlugins() throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); HashMap para = new HashMap(); para.put("op", "fr_remote_design"); - para.put("cmd", "design_get_plugin_info"); + para.put("cmd", "design_plugins"); + + InputStream inputStream = postBytes2ServerB(out.toByteArray(), para); + String pluginsStr = IOUtils.inputStream2String(inputStream, EncodeConstants.ENCODING_UTF_8); + if(StringUtils.isNotBlank(pluginsStr) && pluginsStr.startsWith("[")){ + JSONArray jsonArray = new JSONArray(pluginsStr); + for (int i = 0; i < jsonArray.length(); i++) { + Plugin plugin = new Plugin(); + plugin.parseJSON(jsonArray.getJSONObject(i)); + PluginLoader.getLoader().addRemotePlugin(plugin); + } + } + } - return postBytes2ServerB(out.toByteArray(), para); + private void readPluginLicenses() throws Exception { + ByteArrayOutputStream out = new ByteArrayOutputStream(); + HashMap para = new HashMap(); + para.put("op", "fr_remote_design"); + para.put("cmd", "design_plugin_licenses"); + + InputStream inputStream = postBytes2ServerB(out.toByteArray(), para); + String pluginsLicensesStr = IOUtils.inputStream2String(inputStream, EncodeConstants.ENCODING_UTF_8); + if(StringUtils.isNotBlank(pluginsLicensesStr) && pluginsLicensesStr.startsWith("[")) { + JSONArray jsonArray = new JSONArray(pluginsLicensesStr); + for (int i = 0; i < jsonArray.length(); i++) { + PluginLicense pluginLicense = new PluginLicense(); + pluginLicense.parseJSON(jsonArray.getJSONObject(i)); + PluginLicenseManager.getInstance().addRemotePluginLicense(pluginLicense); + } + } } - /** - * 远程设计先不需要检测MD5 - * - * @return 是否正确 - * @throws Exception MD5算法异常 - */ @Override - public boolean isTruePluginMD5(Plugin plugin, File file) throws Exception { - return true; + public void readPluginConfig() throws Exception { + readPlugins(); + readPluginLicenses(); } - - } \ No newline at end of file From 363c8ec7460cc3da3340dc225cb9dad22050a0f5 Mon Sep 17 00:00:00 2001 From: vito Date: Tue, 31 May 2016 09:47:17 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=A0=BC=E5=BC=8F=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- designer_base/src/com/fr/env/RemoteEnv.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/designer_base/src/com/fr/env/RemoteEnv.java b/designer_base/src/com/fr/env/RemoteEnv.java index 24ec3a4a3..6f7d1e3b7 100644 --- a/designer_base/src/com/fr/env/RemoteEnv.java +++ b/designer_base/src/com/fr/env/RemoteEnv.java @@ -2054,7 +2054,7 @@ public class RemoteEnv implements Env { InputStream inputStream = postBytes2ServerB(out.toByteArray(), para); String pluginsStr = IOUtils.inputStream2String(inputStream, EncodeConstants.ENCODING_UTF_8); - if(StringUtils.isNotBlank(pluginsStr) && pluginsStr.startsWith("[")){ + if (StringUtils.isNotBlank(pluginsStr) && pluginsStr.startsWith("[")) { JSONArray jsonArray = new JSONArray(pluginsStr); for (int i = 0; i < jsonArray.length(); i++) { Plugin plugin = new Plugin(); @@ -2072,7 +2072,7 @@ public class RemoteEnv implements Env { InputStream inputStream = postBytes2ServerB(out.toByteArray(), para); String pluginsLicensesStr = IOUtils.inputStream2String(inputStream, EncodeConstants.ENCODING_UTF_8); - if(StringUtils.isNotBlank(pluginsLicensesStr) && pluginsLicensesStr.startsWith("[")) { + if (StringUtils.isNotBlank(pluginsLicensesStr) && pluginsLicensesStr.startsWith("[")) { JSONArray jsonArray = new JSONArray(pluginsLicensesStr); for (int i = 0; i < jsonArray.length(); i++) { PluginLicense pluginLicense = new PluginLicense();