X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=getdown%2Fsrc%2Fgetdown%2Fcore%2Fsrc%2Fmain%2Fjava%2Fcom%2Fthreerings%2Fgetdown%2Fdata%2FApplication.java;h=2022750c3a7d3b543d07a48cb13ff38170143685;hb=0fd3b7ae342185573d564705d087f7e6d2abd78c;hp=4184953957894b93cb7fbac6f99ac746beb8e63a;hpb=b9ab2bbb4c8e913ccbc28b24081786f9d325f854;p=jalview.git diff --git a/getdown/src/getdown/core/src/main/java/com/threerings/getdown/data/Application.java b/getdown/src/getdown/core/src/main/java/com/threerings/getdown/data/Application.java index 4184953..2022750 100644 --- a/getdown/src/getdown/core/src/main/java/com/threerings/getdown/data/Application.java +++ b/getdown/src/getdown/core/src/main/java/com/threerings/getdown/data/Application.java @@ -9,6 +9,8 @@ import java.io.*; import java.lang.reflect.Method; import java.net.MalformedURLException; import java.net.Proxy; +import java.net.SocketAddress; +import java.net.InetSocketAddress; import java.net.URI; import java.net.URISyntaxException; import java.net.URL; @@ -27,8 +29,9 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.zip.GZIPInputStream; +import jalview.bin.HiDPISetting; import jalview.bin.MemorySetting; -import com.install4j.api.launcher.Variables; +//import com.install4j.api.launcher.Variables; import com.threerings.getdown.util.*; // avoid ambiguity with java.util.Base64 which we can't use as it's 1.8+ @@ -1057,13 +1060,30 @@ public class Application } // pass along our proxy settings - String proxyHost; - if ((proxyHost = System.getProperty("http.proxyHost")) != null) { + String proxyHost = System.getProperty("http.proxyHost"); + String proxyPort = StringUtil.isBlank(System.getProperty("http.proxyPort")) ? "80" : System.getProperty("http.proxyPort"); + if (StringUtil.isBlank(proxyHost) && ! proxy.equals(Proxy.NO_PROXY)) { + try { + SocketAddress a = proxy.address(); + if (a != null && a instanceof InetSocketAddress) { + InetSocketAddress ia = (InetSocketAddress)a; + proxyHost = ia.getHostString(); + proxyPort = String.valueOf(ia.getPort()); + } + } catch (Exception e) { + log.error("Problem obtaining proxy settings from Proxy object"); + e.printStackTrace(); + } + } + if (proxyHost != null) { + log.info("Using proxy settings "+proxyHost+":"+proxyPort); args.add("-Dhttp.proxyHost=" + proxyHost); - args.add("-Dhttp.proxyPort=" + System.getProperty("http.proxyPort")); + args.add("-Dhttp.proxyPort=" + proxyPort); args.add("-Dhttps.proxyHost=" + proxyHost); - args.add("-Dhttps.proxyPort=" + System.getProperty("http.proxyPort")); - } + args.add("-Dhttps.proxyPort=" + proxyPort); + } else { + log.info("Not setting proxy"); + } // add the marker indicating the app is running in getdown args.add("-D" + Properties.GETDOWN + "=true"); @@ -1071,6 +1091,13 @@ public class Application args.add("-Dinstaller_template_version=" + System.getProperty("installer_template_version")); args.add("-Dlauncher_version=" + Build.version()); + // set HiDPI property if wanted + String scalePropertyArg = HiDPISetting.getScalePropertyArg(); + if (scalePropertyArg != null) + { + args.add(scalePropertyArg); + } + // set the native library path if we have native resources // @TODO optional getdown.txt parameter to set addCurrentLibraryPath to true or false? ClassPath javaLibPath = PathBuilder.buildLibsPath(this, true); @@ -1411,6 +1438,8 @@ public class Application clearValidationMarkers(); // if the new copy validates, reinitialize ourselves; otherwise report baffling hoseage if (_digest.validateResource(crsrc, null)) { + // unset _initialisedConfig so new file is initialised + _initialisedConfig = null; init(true); } else { log.warning(CONFIG_FILE + " failed to validate even after redownloading. " +