@Override
	public void run() {

		super.run();
		this.running = true;

		try {
			serverSocket = new ServerSocket(SERVERPORT);
			System.out.println("Server: Listening...");

			while(running){

				// Cria um socket novo por cada pedido
				Socket sock = serverSocket.accept();
				System.out.println("New Client Request");

				ServerConnectionHandler ch = new ServerConnectionHandler(sock, dtoExtractor);
				ch.start();
				System.out.println("Listening Again...");
			}
		} catch (Exception e) {
			System.out.println("S: Error");
			e.printStackTrace();
		} finally{ try { serverSocket.close(); } catch (IOException e) { e.printStackTrace(); } }

	}