diff --git a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/DownloadUtils.java b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/DownloadUtils.java index dbdbadaf0..0c4d35eed 100644 --- a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/DownloadUtils.java +++ b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/DownloadUtils.java @@ -15,6 +15,7 @@ import org.apache.commons.io.*; @SuppressWarnings("IOStreamConstructor") public class DownloadUtils { public static final String USER_AGENT = Tools.APP_NAME; + private static final int TIME_OUT = 10000; public static void download(String url, OutputStream os) throws IOException { download(new URL(url), os); @@ -26,7 +27,8 @@ public class DownloadUtils { // System.out.println("Connecting: " + url.toString()); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestProperty("User-Agent", USER_AGENT); - conn.setConnectTimeout(10000); + conn.setConnectTimeout(TIME_OUT); + conn.setReadTimeout(TIME_OUT); conn.setDoInput(true); conn.connect(); if (conn.getResponseCode() != HttpURLConnection.HTTP_OK) { @@ -67,6 +69,8 @@ public class DownloadUtils { FileUtils.ensureParentDirectory(outputFile); HttpURLConnection conn = (HttpURLConnection) new URL(urlInput).openConnection(); + conn.setConnectTimeout(TIME_OUT); + conn.setReadTimeout(TIME_OUT); InputStream readStr = conn.getInputStream(); try (FileOutputStream fos = new FileOutputStream(outputFile)) { int current; @@ -81,8 +85,9 @@ public class DownloadUtils { monitor.updateProgress(overall, length); } conn.disconnect(); + } catch (IOException e) { + throw new IOException("Unable to download from " + urlInput, e); } - } public static T downloadStringCached(String url, String cacheName, ParseCallback parseCallback) throws IOException, ParseException{