diff options
Diffstat (limited to 'src/main/java/com/btr/proxy/util/ProxyUtil.java')
-rw-r--r-- | src/main/java/com/btr/proxy/util/ProxyUtil.java | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/main/java/com/btr/proxy/util/ProxyUtil.java b/src/main/java/com/btr/proxy/util/ProxyUtil.java index 97f2af2..bfb3f70 100644 --- a/src/main/java/com/btr/proxy/util/ProxyUtil.java +++ b/src/main/java/com/btr/proxy/util/ProxyUtil.java @@ -1,7 +1,7 @@ package com.btr.proxy.util; +import java.net.InetSocketAddress; import java.net.Proxy; -import java.net.ProxySelector; import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -34,11 +34,18 @@ public class ProxyUtil { * @return a FixedProxySelector using this settings, null on parse error. ************************************************************************/ - public static ProxySelector parseProxySettings(String proxyVar) { + public static FixedProxySelector parseProxySettings(String proxyVar) { return parseProxySettings(proxyVar, Proxy.Type.HTTP, 0); } - public static ProxySelector parseProxySettings(String proxyVar, Proxy.Type fallback, int fallbackPort) { + public static FixedProxySelector parseProxySettings(String proxyVar, Proxy.Type fallback, int fallbackPort) { + Proxy proxy = parseProxyString(proxyVar, fallback, fallbackPort); + if (proxy == null) + return null; + return new FixedProxySelector(proxy); + } + + public static Proxy parseProxyString(String proxyVar, Proxy.Type fallback, int fallbackPort) { if (proxyVar == null || proxyVar.trim().length() == 0) { return null; } @@ -84,7 +91,7 @@ public class ProxyUtil { port = DEFAULT_SOCKS_PROXY_PORT; } } - return new FixedProxySelector(type, host.trim(), port); + return new Proxy(type, InetSocketAddress.createUnresolved(host.trim(), port)); } /************************************************************************* |