
org.rx.net.socks.SocksConfig Maven / Gradle / Ivy
package org.rx.net.socks;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import org.rx.net.SocketConfig;
import org.rx.net.Sockets;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.util.List;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
@RequiredArgsConstructor
@Data
@EqualsAndHashCode(callSuper = true)
public class SocksConfig extends SocketConfig {
private static final long serialVersionUID = 3526543718065617052L;
private final int listenPort;
private int trafficShapingInterval = 10000;
private int readTimeoutSeconds = 60 * 4;
private int writeTimeoutSeconds;
private int udpReadTimeoutSeconds = 60 * 20;
private int udpWriteTimeoutSeconds;
private boolean enableUdp2raw;
private List udp2rawServers;
@Getter(lazy = true)
private final Set whiteList = whiteList();
private Set whiteList() {
Set list = ConcurrentHashMap.newKeySet(1);
list.add(Sockets.loopbackAddress());
return list;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy