diff options
author | Simon Rettberg | 2017-08-09 16:36:25 +0200 |
---|---|---|
committer | Simon Rettberg | 2017-08-09 16:36:25 +0200 |
commit | 90349ff2bf27a81ef7412f15b22769ff6ca6bd6e (patch) | |
tree | f518e1d90917377039017078359f6d2574d224cb /src/main/java/com/btr/proxy/selector/misc/ProxyListFallbackSelector.java | |
parent | Rewrite proxy string parsing, regex was a bit wonky (diff) | |
download | proxy-vole-90349ff2bf27a81ef7412f15b22769ff6ca6bd6e.tar.gz proxy-vole-90349ff2bf27a81ef7412f15b22769ff6ca6bd6e.tar.xz proxy-vole-90349ff2bf27a81ef7412f15b22769ff6ca6bd6e.zip |
Sophisticate proxy parsing and generating, fix misinterpretation if SOCKS proxies
This is a quick and dirty fix; it seems a major redesign is appropriate.
We should also switch to some maintained version of proxy-vole from github.
This one looks halfway active:
https://github.com/MarkusBernhardt/proxy-vole
or maybe one of its forks...
Diffstat (limited to 'src/main/java/com/btr/proxy/selector/misc/ProxyListFallbackSelector.java')
-rw-r--r-- | src/main/java/com/btr/proxy/selector/misc/ProxyListFallbackSelector.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/main/java/com/btr/proxy/selector/misc/ProxyListFallbackSelector.java b/src/main/java/com/btr/proxy/selector/misc/ProxyListFallbackSelector.java index 41859ec..e501952 100644 --- a/src/main/java/com/btr/proxy/selector/misc/ProxyListFallbackSelector.java +++ b/src/main/java/com/btr/proxy/selector/misc/ProxyListFallbackSelector.java @@ -11,6 +11,8 @@ import java.util.List; import java.util.Map.Entry; import java.util.concurrent.ConcurrentHashMap; +import com.btr.proxy.util.ProxyUtil; + /***************************************************************************** * Implements a fallback selector to warp it around an existing ProxySelector. * This will remove proxies from a list of proxies and implement an automatic @@ -58,6 +60,7 @@ public class ProxyListFallbackSelector extends ProxySelector { @Override public void connectFailed(URI uri, SocketAddress sa, IOException ioe) { this.failedDelayCache.put(sa, System.currentTimeMillis()); + this.delegate.connectFailed(uri, sa, ioe); } /************************************************************************* @@ -70,6 +73,9 @@ public class ProxyListFallbackSelector extends ProxySelector { cleanupCache(); List<Proxy> proxyList = this.delegate.select(uri); List<Proxy> result = filterUnresponsiveProxiesFromList(proxyList); + if (result.isEmpty()) { + return ProxyUtil.noProxyList(); + } return result; } |