Author: markt Date: Tue Sep 6 16:05:29 2011 New Revision: 1165738 URL: http://svn.apache.org/viewvc?rev=1165738&view=rev Log: Align connectors - setting timeouts
Modified: tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java tomcat/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java Modified: tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java?rev=1165738&r1=1165737&r2=1165738&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java Tue Sep 6 16:05:29 2011 @@ -830,6 +830,13 @@ public abstract class AbstractHttp11Proc */ protected abstract boolean handleIncompleteRequestLineRead(); + + /** + * Set the socket timeout. + */ + protected abstract void setSocketTimeout(int timeout) throws IOException; + + /** * After reading the request headers, we have to setup the request filters. */ Modified: tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java?rev=1165738&r1=1165737&r2=1165738&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java Tue Sep 6 16:05:29 2011 @@ -194,8 +194,6 @@ public class Http11AprProcessor extends socketWrapper.setKeepAliveLeft(0); } - long socketRef = socketWrapper.getSocket().longValue(); - while (!error && keepAlive && !comet && !isAsync() && !endpoint.isPaused()) { @@ -226,8 +224,7 @@ public class Http11AprProcessor extends break; } if (!disableUploadTimeout) { - Socket.timeoutSet(socketRef, - connectionUploadTimeout * 1000); + setSocketTimeout(connectionUploadTimeout); } } } catch (IOException e) { @@ -328,7 +325,7 @@ public class Http11AprProcessor extends } if (!disableUploadTimeout) { - Socket.timeoutSet(socketRef, endpoint.getSoTimeout() * 1000); + setSocketTimeout(endpoint.getSoTimeout()); } rp.setStage(org.apache.coyote.Constants.STAGE_KEEPALIVE); @@ -411,6 +408,12 @@ public class Http11AprProcessor extends @Override + protected void setSocketTimeout(int timeout) { + Socket.timeoutSet(socket.getSocket().longValue(), timeout * 1000); + } + + + @Override protected void setCometTimeouts(SocketWrapper<Long> socketWrapper) { // NO-OP for APR/native } Modified: tomcat/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java?rev=1165738&r1=1165737&r2=1165738&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java Tue Sep 6 16:05:29 2011 @@ -252,9 +252,8 @@ public class Http11NioProcessor extends readComplete = false; break; } - if (!disableUploadTimeout) { //only for body, not for request headers - socketWrapper.getSocket().getIOChannel().socket().setSoTimeout( - connectionUploadTimeout); + if (!disableUploadTimeout) { + setSocketTimeout(connectionUploadTimeout); } } } catch (IOException e) { @@ -354,9 +353,8 @@ public class Http11NioProcessor extends outputBuffer.nextRequest(); } - if (!disableUploadTimeout) { //only for body, not for request headers - socketWrapper.getSocket().getIOChannel().socket().setSoTimeout( - endpoint.getSoTimeout()); + if (!disableUploadTimeout) { + setSocketTimeout(endpoint.getSoTimeout()); } rp.setStage(org.apache.coyote.Constants.STAGE_KEEPALIVE); @@ -447,6 +445,12 @@ public class Http11NioProcessor extends @Override + protected void setSocketTimeout(int timeout) throws IOException { + socket.getSocket().getIOChannel().socket().setSoTimeout(timeout); + } + + + @Override protected void setCometTimeouts(SocketWrapper<NioChannel> socketWrapper) { // Comet support SelectionKey key = socketWrapper.getSocket().getIOChannel().keyFor( Modified: tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java?rev=1165738&r1=1165737&r2=1165738&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java Tue Sep 6 16:05:29 2011 @@ -188,7 +188,7 @@ public class Http11Processor extends Abs break; } if (!disableUploadTimeout) { - socket.getSocket().setSoTimeout(connectionUploadTimeout); + setSocketTimeout(connectionUploadTimeout); } } } catch (IOException e) { @@ -289,7 +289,7 @@ public class Http11Processor extends Abs } if (!disableUploadTimeout) { - socket.getSocket().setSoTimeout(endpoint.getSoTimeout()); + setSocketTimeout(endpoint.getSoTimeout()); } rp.setStage(org.apache.coyote.Constants.STAGE_KEEPALIVE); @@ -397,6 +397,12 @@ public class Http11Processor extends Abs @Override + protected void setSocketTimeout(int timeout) throws IOException { + socket.getSocket().setSoTimeout(timeout); + } + + + @Override protected void setCometTimeouts(SocketWrapper<Socket> socketWrapper) { // NO-OP for BIO } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org