Merge branch 'Jalview-JS/develop' into merge_js_develop
[jalview.git] / src / jalview / ws / utils / UrlDownloadClient.java
index 58632f2..7d45313 100644 (file)
 
 package jalview.ws.utils;
 
-import jalview.util.Platform;
-
 import java.io.File;
-import java.io.FileOutputStream;
 import java.io.IOException;
-import java.net.URL;
-import java.nio.channels.Channels;
-import java.nio.channels.ReadableByteChannel;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import java.nio.file.Paths;
-import java.nio.file.StandardCopyOption;
+
+import jalview.util.Platform;
 
 public class UrlDownloadClient
 {
@@ -53,64 +45,7 @@ public class UrlDownloadClient
   public static void download(String urlstring, String outfile)
           throws IOException
   {
-
-      FileOutputStream fos = null;
-      ReadableByteChannel rbc = null;
-      Path temp = null;
-      try
-      {
-        temp = Files.createTempFile(".jalview_", ".tmp");
-
-        URL url = new URL(urlstring);
-        rbc = Channels.newChannel(url.openStream());
-        fos = new FileOutputStream(temp.toString());
-        fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
-
-        // copy tempfile to outfile once our download completes
-        // incase something goes wrong
-        Files.copy(temp, Paths.get(outfile),
-                StandardCopyOption.REPLACE_EXISTING);
-      } catch (IOException e)
-      {
-        throw e;
-      } finally
-      {
-        try
-        {
-          if (fos != null)
-          {
-            fos.close();
-          }
-        } catch (IOException e)
-        {
-          System.out.println(
-                  "Exception while closing download file output stream: "
-                          + e.getMessage());
-        }
-        try
-        {
-          if (rbc != null)
-          {
-            rbc.close();
-          }
-        } catch (IOException e)
-        {
-          System.out.println("Exception while closing download channel: "
-                  + e.getMessage());
-        }
-        try
-        {
-          if (temp != null)
-          {
-            Files.deleteIfExists(temp);
-          }
-        } catch (IOException e)
-        {
-          System.out.println("Exception while deleting download temp file: "
-                  + e.getMessage());
-        }
-      }
-
+      Platform.download(urlstring, outfile);
   }
 
   public static void download(String urlstring, File tempFile) throws IOException