X-Git-Url: http://source.jalview.org/gitweb/?p=jalview.git;a=blobdiff_plain;f=getdown%2Fsrc%2Fgetdown%2Fcore%2Fsrc%2Fmain%2Fjava%2Fcom%2Fthreerings%2Fgetdown%2Fdata%2FApplication.java;h=2022750c3a7d3b543d07a48cb13ff38170143685;hp=b301a0f1fc589bcc299a3ea53169b75121bca220;hb=0fd3b7ae342185573d564705d087f7e6d2abd78c;hpb=9041085cce94f093479be520a8f3553de6e2381f 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 b301a0f..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; @@ -1058,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");