You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by mw...@apache.org on 2009/11/18 03:29:58 UTC
svn commit: r881645 - in
/mina/sandbox/mwebb/mina/src/main/java/org/apache/mina/spdy:
SpdyServer.java handler/ handler/SpdyHandler.java
Author: mwebb
Date: Wed Nov 18 02:29:57 2009
New Revision: 881645
URL: http://svn.apache.org/viewvc?rev=881645&view=rev
Log:
Adding the IoHandler implementation for the SPDY protocol and a server implementation.
Added:
mina/sandbox/mwebb/mina/src/main/java/org/apache/mina/spdy/SpdyServer.java
mina/sandbox/mwebb/mina/src/main/java/org/apache/mina/spdy/handler/
mina/sandbox/mwebb/mina/src/main/java/org/apache/mina/spdy/handler/SpdyHandler.java
Added: mina/sandbox/mwebb/mina/src/main/java/org/apache/mina/spdy/SpdyServer.java
URL: http://svn.apache.org/viewvc/mina/sandbox/mwebb/mina/src/main/java/org/apache/mina/spdy/SpdyServer.java?rev=881645&view=auto
==============================================================================
--- mina/sandbox/mwebb/mina/src/main/java/org/apache/mina/spdy/SpdyServer.java (added)
+++ mina/sandbox/mwebb/mina/src/main/java/org/apache/mina/spdy/SpdyServer.java Wed Nov 18 02:29:57 2009
@@ -0,0 +1,37 @@
+package org.apache.mina.spdy;
+
+import java.io.IOException;
+import java.net.InetSocketAddress;
+
+import org.apache.mina.filter.codec.ProtocolCodecFilter;
+import org.apache.mina.filter.logging.LoggingFilter;
+import org.apache.mina.spdy.handler.SpdyHandler;
+import org.apache.mina.spdy.protocol.SpdyProtocolCodecFactory;
+import org.apache.mina.transport.socket.nio.NioSocketAcceptor;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class SpdyServer {
+
+ public static final int PORT = 6666;
+
+ private static final Logger log = LoggerFactory.getLogger(SpdyServer.class);
+
+ public static void main(String[] args) throws IOException {
+
+ SpdyHandler handler = new SpdyHandler();
+
+ NioSocketAcceptor acceptor = new NioSocketAcceptor();
+
+ acceptor.getFilterChain().addFirst("logger", new LoggingFilter());
+ acceptor.getFilterChain().addLast("protocol",
+ new ProtocolCodecFilter( new SpdyProtocolCodecFactory()));
+
+ acceptor.setHandler(handler);
+
+ acceptor.setReuseAddress(true);
+ acceptor.bind(new InetSocketAddress(PORT));
+
+ log.info("SPDY server is listenig at port " + PORT);
+ }
+}
Added: mina/sandbox/mwebb/mina/src/main/java/org/apache/mina/spdy/handler/SpdyHandler.java
URL: http://svn.apache.org/viewvc/mina/sandbox/mwebb/mina/src/main/java/org/apache/mina/spdy/handler/SpdyHandler.java?rev=881645&view=auto
==============================================================================
--- mina/sandbox/mwebb/mina/src/main/java/org/apache/mina/spdy/handler/SpdyHandler.java (added)
+++ mina/sandbox/mwebb/mina/src/main/java/org/apache/mina/spdy/handler/SpdyHandler.java Wed Nov 18 02:29:57 2009
@@ -0,0 +1,53 @@
+package org.apache.mina.spdy.handler;
+
+import java.io.FileOutputStream;
+
+import org.apache.mina.core.service.IoHandler;
+import org.apache.mina.core.session.IdleStatus;
+import org.apache.mina.core.session.IoSession;
+import org.apache.mina.spdy.messages.data.SpdyDataFrame;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class SpdyHandler implements IoHandler {
+
+ private static final Logger log = LoggerFactory.getLogger(SpdyHandler.class);
+
+ public void exceptionCaught(IoSession session, Throwable cause)
+ throws Exception {
+
+ cause.printStackTrace();
+ }
+
+ public void messageReceived(IoSession session, Object message)
+ throws Exception {
+
+ log.info("Received message ==> " + message.getClass());
+ }
+
+ public void messageSent(IoSession session, Object message) throws Exception {
+
+ log.info("Message sent");
+ }
+
+ public void sessionClosed(IoSession session) throws Exception {
+
+ log.info("Session closed.");
+ }
+
+ public void sessionCreated(IoSession session) throws Exception {
+
+ log.info("Session created.");
+ }
+
+ public void sessionIdle(IoSession session, IdleStatus status)
+ throws Exception {
+
+ log.info("Session Idle.");
+ }
+
+ public void sessionOpened(IoSession session) throws Exception {
+
+ log.info("Session Opened");
+ }
+}