You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2011/06/18 15:03:51 UTC

svn commit: r1137181 - in /tomcat/trunk/java/org/apache: coyote/ajp/AjpAprProtocol.java coyote/http11/Http11AprProtocol.java tomcat/util/net/AprEndpoint.java

Author: markt
Date: Sat Jun 18 13:03:50 2011
New Revision: 1137181

URL: http://svn.apache.org/viewvc?rev=1137181&view=rev
Log:
Connector re-factoring
Start to align APR with BIO/NIO

Modified:
    tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProtocol.java
    tomcat/trunk/java/org/apache/coyote/http11/Http11AprProtocol.java
    tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProtocol.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProtocol.java?rev=1137181&r1=1137180&r2=1137181&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProtocol.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProtocol.java Sat Jun 18 13:03:50 2011
@@ -136,7 +136,8 @@ public class AjpAprProtocol extends Abst
         }
         
         @Override
-        public SocketState process(SocketWrapper<Long> socket) {
+        public SocketState process(SocketWrapper<Long> socket,
+                SocketStatus status) {
             AjpAprProcessor processor = recycledProcessors.poll();
             try {
                 if (processor == null) {

Modified: tomcat/trunk/java/org/apache/coyote/http11/Http11AprProtocol.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/Http11AprProtocol.java?rev=1137181&r1=1137180&r2=1137181&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/http11/Http11AprProtocol.java (original)
+++ tomcat/trunk/java/org/apache/coyote/http11/Http11AprProtocol.java Sat Jun 18 13:03:50 2011
@@ -262,7 +262,8 @@ public class Http11AprProtocol extends A
         }
         
         @Override
-        public SocketState process(SocketWrapper<Long> socket) {
+        public SocketState process(SocketWrapper<Long> socket,
+                SocketStatus status) {
             Http11AprProcessor processor = recycledProcessors.poll();
             try {
                 if (processor == null) {

Modified: tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java?rev=1137181&r1=1137180&r2=1137181&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java Sat Jun 18 13:03:50 2011
@@ -40,6 +40,7 @@ import org.apache.tomcat.jni.SSLSocket;
 import org.apache.tomcat.jni.Socket;
 import org.apache.tomcat.jni.Status;
 import org.apache.tomcat.util.ExceptionUtils;
+import org.apache.tomcat.util.net.AbstractEndpoint.Handler.SocketState;
 
 
 /**
@@ -1638,7 +1639,8 @@ public class AprEndpoint extends Abstrac
      * thread local fields.
      */
     public interface Handler extends AbstractEndpoint.Handler {
-        public SocketState process(SocketWrapper<Long> socket);
+        public SocketState process(SocketWrapper<Long> socket,
+                SocketStatus status);
         public SocketState event(SocketWrapper<Long> socket,
                 SocketStatus status);
         public SocketState asyncDispatch(SocketWrapper<Long> socket,
@@ -1683,7 +1685,8 @@ public class AprEndpoint extends Abstrac
                         return;
                     }
                     // Process the request from this socket
-                    Handler.SocketState state = handler.process(socket);
+                    Handler.SocketState state = handler.process(socket,
+                            SocketStatus.OPEN);
                     if (state == Handler.SocketState.CLOSED) {
                         // Close socket and pool
                         destroySocket(socket.getSocket().longValue());
@@ -1727,7 +1730,12 @@ public class AprEndpoint extends Abstrac
         public void run() {
             synchronized (socket) {
                 // Process the request from this socket
-                Handler.SocketState state = (status==null)?handler.process(socket):handler.asyncDispatch(socket, status);
+                SocketState state = SocketState.OPEN;
+                if (status == null) {
+                    state = handler.process(socket,SocketStatus.OPEN);
+                } else {
+                    state = handler.asyncDispatch(socket, status);
+                }
                 if (state == Handler.SocketState.CLOSED) {
                     // Close socket and pool
                     destroySocket(socket.getSocket().longValue());



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org