JAL-3633 pass getdown proxy settings in proxy.txt on to Jalview
authorBen Soares <b.soares@dundee.ac.uk>
Thu, 9 Jul 2020 14:57:19 +0000 (15:57 +0100)
committerBen Soares <b.soares@dundee.ac.uk>
Thu, 9 Jul 2020 14:57:19 +0000 (15:57 +0100)
getdown/src/getdown/core/src/main/java/com/threerings/getdown/data/Application.java
getdown/src/getdown/mvn_cmd

index b11a380..2640ceb 100644 (file)
@@ -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");
index 25faf6f..ff16a2a 100755 (executable)
@@ -3,7 +3,7 @@
 if [ x$JVLVERSION != x ]; then
   export VERSION=$JVLVERSION
 else
-  export VERSION=1.8.3-1.2.6_JVL
+  export VERSION=1.8.3-1.2.7_JVL
 fi
 
 if [ x${VERSION%_JVL} = x$VERSION ]; then
@@ -25,7 +25,7 @@ fi
 VERSION=${VERSION/JVL/FJVL}
 echo "Setting VERSION to '$VERSION'"
 perl -p -i -e 's|(<version>)[^<]*JVL[^<]*(</version>)|${1}$ENV{VERSION}${2}|;' pom.xml */pom.xml
-mvn package -Dgetdown.host.whitelist="jalview.org,*.jalview.org" -Dallow_file_protocol=true -Dconnect_timeout=4 -Dread_timeout=4
+mvn package -Dgetdown.host.whitelist="jalview.org,*.jalview.org,localhost" -Dallow_file_protocol=true -Dconnect_timeout=4 -Dread_timeout=4
 RET=$?
 if [ x$RET = x0 ]; then
   cp launcher/target/getdown-launcher-$VERSION.jar ../../../getdown/lib/getdown-launcher-local.jar && echo "Copied getdown-launcher-$VERSION.jar to getdown/lib/getdown-launcher-local.jar"