pull/594/head
jhengazuki 7 months ago
parent 359c04378e
commit 3333db1e83
  1. 12
      catvod/src/main/java/com/github/catvod/net/OkProxySelector.java

@ -30,15 +30,19 @@ public class OkProxySelector extends ProxySelector {
proxy.clear();
}
private List<java.net.Proxy> fallback(URI uri) {
return system != null ? system.select(uri) : List.of(java.net.Proxy.NO_PROXY);
}
@Override
public List<java.net.Proxy> select(URI uri) {
if (proxy.isEmpty() || uri.getHost() == null || "127.0.0.1".equals(uri.getHost())) return system.select(uri);
for (Proxy item : proxy) for (String host : item.getHosts()) if (Util.containOrMatch(uri.getHost(), host)) return item.getProxies().isEmpty() ? system.select(uri) : item.getProxies();
return system.select(uri);
if (proxy.isEmpty() || uri.getHost() == null || "127.0.0.1".equals(uri.getHost())) return fallback(uri);
for (Proxy item : proxy) for (String host : item.getHosts()) if (Util.containOrMatch(uri.getHost(), host)) return !item.getProxies().isEmpty() ? item.getProxies() : fallback(uri);
return fallback(uri);
}
@Override
public void connectFailed(URI uri, SocketAddress socketAddress, IOException e) {
system.connectFailed(uri, socketAddress, e);
if (system != null) system.connectFailed(uri, socketAddress, e);
}
}

Loading…
Cancel
Save