diff options
Diffstat (limited to 'src/main/java/com/juick/xmpp/s2s/ConnectionRouter.java')
-rw-r--r-- | src/main/java/com/juick/xmpp/s2s/ConnectionRouter.java | 38 |
1 files changed, 20 insertions, 18 deletions
diff --git a/src/main/java/com/juick/xmpp/s2s/ConnectionRouter.java b/src/main/java/com/juick/xmpp/s2s/ConnectionRouter.java index d8ce0daf..ccd6a335 100644 --- a/src/main/java/com/juick/xmpp/s2s/ConnectionRouter.java +++ b/src/main/java/com/juick/xmpp/s2s/ConnectionRouter.java @@ -9,15 +9,16 @@ import com.juick.xmpp.extensions.Nickname; import com.juick.xmpp.extensions.XOOB; import com.juick.xmpp.utils.SHA1; import com.juick.xmpp.utils.XmlUtils; +import org.xmlpull.v1.XmlPullParser; + import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; -import java.net.Socket; -import java.util.ArrayList; +import java.net.InetSocketAddress; +import java.nio.channels.AsynchronousSocketChannel; +import java.nio.channels.Channels; import java.util.List; -import org.xmlpull.v1.XmlPullParser; - /** * * @author ugnich @@ -26,13 +27,14 @@ public class ConnectionRouter extends Connection implements Runnable { @Override public void run() { - System.out.println("STREAM ROUTER START"); + LOGGER.info("STREAM ROUTER START"); try { - socket = new Socket("localhost", 5347); - parser.setInput(new InputStreamReader(socket.getInputStream())); + socket = AsynchronousSocketChannel.open(); + socket.connect(new InetSocketAddress(5347)); + parser.setInput(new InputStreamReader(Channels.newInputStream(socket))); parser.setFeature(XmlPullParser.FEATURE_PROCESS_NAMESPACES, true); - writer = new OutputStreamWriter(socket.getOutputStream()); + writer = new OutputStreamWriter(Channels.newOutputStream(socket)); String msg = "<stream:stream xmlns='jabber:component:accept' xmlns:stream='http://etherx.jabber.org/streams' to='s2s'>"; writer.write(msg); @@ -53,7 +55,7 @@ public class ConnectionRouter extends Connection implements Runnable { throw new Exception("NO HANDSHAKE"); } XmlUtils.skip(parser); - System.out.println("STREAM ROUTER OPEN"); + LOGGER.info("STREAM ROUTER OPEN"); while (parser.next() != XmlPullParser.END_DOCUMENT) { if (parser.getEventType() != XmlPullParser.START_TAG) { @@ -68,7 +70,7 @@ public class ConnectionRouter extends Connection implements Runnable { if (jid.Host.equals(XMPPComponent.COMPONENTNAME)) { if (tag.equals("message")) { Message xmsg = Message.parse(parser, XMPPComponent.childParsers); - System.out.println("STREAM ROUTER (PROCESS): " + xmsg.toString()); + LOGGER.info("STREAM ROUTER (PROCESS): " + xmsg.toString()); JuickMessage jmsg = (JuickMessage) xmsg.getChild(JuickMessage.XMLNS); if (jmsg != null) { if (jid.Username != null && jid.Username.equals("recomm")) { @@ -84,23 +86,23 @@ public class ConnectionRouter extends Connection implements Runnable { } } else if (jid.Host.endsWith(XMPPComponent.HOSTNAME) && (jid.Host.equals(XMPPComponent.HOSTNAME) || jid.Host.endsWith("." + XMPPComponent.HOSTNAME))) { String xml = XmlUtils.parseToString(parser, true); - System.out.println("STREAM ROUTER: " + xml); + LOGGER.info("STREAM ROUTER: " + xml); } else { String xml = XmlUtils.parseToString(parser, true); - System.out.println("STREAM ROUTER (OUT): " + xml); + LOGGER.info("STREAM ROUTER (OUT): " + xml); XMPPComponent.sendOut(jid.Host, xml); } } else { - System.out.println("STREAM ROUTER (NO TO): " + XmlUtils.parseToString(parser, true)); + LOGGER.info("STREAM ROUTER (NO TO): " + XmlUtils.parseToString(parser, true)); } } else { - System.out.println("STREAM ROUTER: " + XmlUtils.parseToString(parser, true)); + LOGGER.info("STREAM ROUTER: " + XmlUtils.parseToString(parser, true)); } } - System.err.println("STREAM ROUTER FINISHED"); + LOGGER.warning("STREAM ROUTER FINISHED"); } catch (Exception e) { - System.err.println("STREAM ROUTER PARSE ERROR: " + e.toString()); + LOGGER.warning("STREAM ROUTER PARSE ERROR: " + e.toString()); } System.exit(0); } @@ -111,8 +113,8 @@ public class ConnectionRouter extends Connection implements Runnable { writer.write(xml); writer.flush(); } catch (IOException e) { - System.err.println("STREAM ROUTER ERROR: " + xml); - System.err.println("STREAM ROUTER ERROR: " + e.toString()); + LOGGER.warning("STREAM ROUTER ERROR: " + xml); + LOGGER.warning("STREAM ROUTER ERROR: " + e.toString()); System.exit(0); } } |