public MessageHandlerTask(final Socket socketToMediator, final BlockingQueue<Socket> socketQueue, final int port,
final List<XorMappedAddress> endpoints, final Token authentificationToken) {
this.hpUtil = HolePunchingUtil.getInstance();
this.socketToMediator = socketToMediator;
final SocketAddress localSocketAddress = new InetSocketAddress(port);
this.connectionListener = new ConnectionListener(socketToMediator.getLocalAddress(),
socketToMediator.getLocalPort());
this.hp = new HolePuncher(this.connectionListener, localSocketAddress, socketQueue);
this.endpoints = endpoints;
this.authentificationToken = authentificationToken;
}