diff options
author | 2016-05-07 19:57:10 +0300 | |
---|---|---|
committer | 2016-05-07 19:57:10 +0300 | |
commit | b1d5d5801e90ef0d4e282a78543f1435b8b7d223 (patch) | |
tree | 70dcd3a4a67c4a15847b3c17357897709f2334ee /src/main/java/com/juick/xmpp/s2s/ConnectionListener.java | |
parent | f2a2660e753fa11478fd3edadfdff9c000b22cc9 (diff) |
STARTTLS
Diffstat (limited to 'src/main/java/com/juick/xmpp/s2s/ConnectionListener.java')
-rw-r--r-- | src/main/java/com/juick/xmpp/s2s/ConnectionListener.java | 31 |
1 files changed, 10 insertions, 21 deletions
diff --git a/src/main/java/com/juick/xmpp/s2s/ConnectionListener.java b/src/main/java/com/juick/xmpp/s2s/ConnectionListener.java index 02a2be39..094fbd4f 100644 --- a/src/main/java/com/juick/xmpp/s2s/ConnectionListener.java +++ b/src/main/java/com/juick/xmpp/s2s/ConnectionListener.java @@ -1,11 +1,7 @@ package com.juick.xmpp.s2s; -import java.net.InetSocketAddress; -import java.nio.channels.AsynchronousServerSocketChannel; -import java.nio.channels.AsynchronousSocketChannel; -import java.nio.channels.CompletionHandler; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; +import java.net.ServerSocket; +import java.net.Socket; import java.util.logging.Level; import java.util.logging.Logger; @@ -20,25 +16,18 @@ public class ConnectionListener implements Runnable { @Override public void run() { try { - final AsynchronousServerSocketChannel listener = AsynchronousServerSocketChannel.open(); - listener.bind(new InetSocketAddress(5269)); + final ServerSocket listener = new ServerSocket(5269); logger.info("s2s listener ready"); - listener.accept(null, new CompletionHandler<AsynchronousSocketChannel, Object>() { - @Override - public void completed(AsynchronousSocketChannel result, Object attachment) { - listener.accept(XMPPComponent.executorService, this); - ConnectionIn client = new ConnectionIn(result); + while (true) { + try { + Socket socket = listener.accept(); + ConnectionIn client = new ConnectionIn(socket); XMPPComponent.addConnectionIn(client); client.parseStream(); + } catch (Exception e) { + logger.log(Level.SEVERE, "s2s error", e); } - - @Override - public void failed(Throwable exc, Object attachment) { - - } - }); - Thread.currentThread().join(); - listener.close(); + } } catch (Exception e) { logger.log(Level.SEVERE, "s2s listener exception", e); } |