From 1a68e172ec40964b34ad41991305400a61923450 Mon Sep 17 00:00:00 2001
From: 沈斌 <bluelazysb@hotmail.com>
Date: Tue, 30 Jan 2018 22:41:51 +0800
Subject: [PATCH] updated

---
 src/main/java/com/moral/controller/UpgradeController.java |   53 ++++++++++++++++++++++++-----------------------------
 1 files changed, 24 insertions(+), 29 deletions(-)

diff --git a/src/main/java/com/moral/controller/UpgradeController.java b/src/main/java/com/moral/controller/UpgradeController.java
index 05258e3..97e1c1f 100644
--- a/src/main/java/com/moral/controller/UpgradeController.java
+++ b/src/main/java/com/moral/controller/UpgradeController.java
@@ -22,37 +22,18 @@
     private String path = "/";
 
     @RequestMapping(value = "/index", method = RequestMethod.GET)
-    public Version index() throws Exception {
-        FTPClient ftpClient = new FTPClient();
-        ftpClient.connect(ip, port);
-        ftpClient.login(userName, userPwd);
-        if (path != null && path.length() > 0) {
-            ftpClient.changeWorkingDirectory(path);
-        }
-        String content = readFile(ftpClient);
-        if(ftpClient.isConnected()) {
-            ftpClient.logout();
-            ftpClient.disconnect();
-        }
-        SAXReader reader = new SAXReader();
-        Document document = reader.read(new InputSource(new ByteArrayInputStream(content.getBytes("utf-8"))));
-        Element root = document.getRootElement();
+    public Version index() {
         Version version = new Version();
-        version.setVer(root.element("Ver").getText());
-        version.setFileName(root.element("FileName").getText());
-        version.setFileMD5Hash(root.element("FileMD5Hash").getText());
-
-        return version;
-    }
-
-    public String readFile(FTPClient ftpClient) {
-        InputStream ins = null;
-        StringBuilder builder = null;
+        FTPClient ftpClient = new FTPClient();
         try {
-            ins = ftpClient.retrieveFileStream(fileName);
+            ftpClient.connect(ip, port);
+            ftpClient.login(userName, userPwd);
+            ftpClient.changeWorkingDirectory(path);
+            ftpClient.enterRemotePassiveMode();
+            InputStream ins = ftpClient.retrieveFileStream(fileName);
             BufferedReader reader = new BufferedReader(new InputStreamReader(ins,"utf-8"));
             String line;
-            builder = new StringBuilder(150);
+            StringBuilder builder = new StringBuilder();
             while ((line = reader.readLine()) != null) {
                 builder.append(line);
             }
@@ -61,9 +42,23 @@
                 ins.close();
             }
             ftpClient.getReply();
-        } catch (IOException e) {
+            String content = builder.toString();
+            if(ftpClient.isConnected()) {
+                ftpClient.logout();
+                ftpClient.disconnect();
+            }
+            SAXReader saxReader = new SAXReader();
+            Document document = saxReader.read(new InputSource(new ByteArrayInputStream(content.getBytes("utf-8"))));
+            Element root = document.getRootElement();
+            version.setVer(root.element("Ver").getText());
+            version.setFileName(root.element("FileName").getText());
+            version.setFileMD5Hash(root.element("FileMD5Hash").getText());
+        } catch (Exception e) {
             e.printStackTrace();
         }
-        return builder.toString();
+//        version.setVer("a");
+//        version.setFileName("b");
+//        version.setFileMD5Hash("c");
+        return version;
     }
 }

--
Gitblit v1.8.0