pull/591/head
jhengazuki 8 months ago
parent e00a3534a6
commit 54e014222d
  1. 10
      catvod/src/main/java/com/github/catvod/bean/Proxy.java

@ -13,6 +13,7 @@ import java.net.InetSocketAddress;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Objects;
public class Proxy {
@ -43,15 +44,16 @@ public class Proxy {
public List<java.net.Proxy> select() {
List<java.net.Proxy> items = new ArrayList<>();
for (String url : getUrls()) items.add(convert(url));
for (String url : getUrls()) items.add(proxy(url));
items.removeIf(Objects::isNull);
return items.isEmpty() ? NO_PROXY : items;
}
private java.net.Proxy convert(String url) {
private java.net.Proxy proxy(String url) {
Uri uri = Uri.parse(url);
if (uri.getScheme() == null || uri.getHost() == null || uri.getPort() <= 0) return java.net.Proxy.NO_PROXY;
if (uri.getScheme() == null || uri.getHost() == null || uri.getPort() <= 0) return null;
if (uri.getScheme().startsWith("http")) return new java.net.Proxy(java.net.Proxy.Type.HTTP, InetSocketAddress.createUnresolved(uri.getHost(), uri.getPort()));
if (uri.getScheme().startsWith("socks")) return new java.net.Proxy(java.net.Proxy.Type.SOCKS, InetSocketAddress.createUnresolved(uri.getHost(), uri.getPort()));
return java.net.Proxy.NO_PROXY;
return null;
}
}
Loading…
Cancel
Save