package be.neutrinet.ispng.dns; import org.apache.log4j.Logger; import java.io.IOException; import java.net.InetAddress; import java.net.ServerSocket; import java.net.Socket; /** * Created by wannes on 1/25/15. */ public class TCPServer implements Runnable { private InetAddress addr; private int port; private RequestHandler handler; private boolean run = true; public TCPServer(InetAddress addr, int port, RequestHandler handler) { this.addr = addr; this.port = port; this.handler = handler; } public void run() { try { ServerSocket sock = new ServerSocket(port, 128, addr); while (run) { final Socket s = sock.accept(); Thread t; t = new Thread(new TCPClient(s, handler)); t.start(); } } catch (IOException ex) { Logger.getLogger(getClass()).error("Failed to open DNS TCP socket", ex); } } }