summaryrefslogtreecommitdiffstats
path: root/src/main/java/com/btr/proxy/selector/misc/ProxyListFallbackSelector.java
diff options
context:
space:
mode:
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.java6
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;
}