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 2015/02/27 16:00:24 UTC
svn commit: r1662695 - in /tomcat/trunk/java/org/apache:
coyote/http11/upgrade/ tomcat/websocket/server/
Author: markt
Date: Fri Feb 27 15:00:23 2015
New Revision: 1662695
URL: http://svn.apache.org/r1662695
Log:
Unit tests pass. Still stack traces in test logs to resolve.
Modified:
tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java
tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorExternal.java
tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorInternal.java
tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java
Modified: tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java?rev=1662695&r1=1662694&r2=1662695&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java (original)
+++ tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java Fri Feb 27 15:00:23 2015
@@ -32,6 +32,8 @@ import org.apache.tomcat.util.net.Socket
public abstract class UpgradeProcessorBase implements Processor, WebConnection {
+ protected static final int INFINITE_TIMEOUT = -1;
+
public UpgradeProcessorBase(SocketWrapperBase<?> wrapper, ByteBuffer leftOverInput) {
wrapper.unRead(leftOverInput);
}
Modified: tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorExternal.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorExternal.java?rev=1662695&r1=1662694&r2=1662695&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorExternal.java (original)
+++ tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorExternal.java Fri Feb 27 15:00:23 2015
@@ -32,8 +32,6 @@ import org.apache.tomcat.util.res.String
public class UpgradeProcessorExternal extends UpgradeProcessorBase {
- private static final int INFINITE_TIMEOUT = -1;
-
private static final Log log = LogFactory.getLog(UpgradeProcessorExternal.class);
private static final StringManager sm = StringManager.getManager(UpgradeProcessorExternal.class);
Modified: tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorInternal.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorInternal.java?rev=1662695&r1=1662694&r2=1662695&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorInternal.java (original)
+++ tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorInternal.java Fri Feb 27 15:00:23 2015
@@ -34,7 +34,14 @@ public class UpgradeProcessorInternal ex
InternalHttpUpgradeHandler internalHttpUpgradeHandler) {
super(wrapper, leftOverInput);
this.internalHttpUpgradeHandler = internalHttpUpgradeHandler;
+ /*
+ * Leave timeouts in the hands of the upgraded protocol.
+ */
+ wrapper.setReadTimeout(INFINITE_TIMEOUT);
+ wrapper.setWriteTimeout(INFINITE_TIMEOUT);
+
internalHttpUpgradeHandler.setSocketWrapper(wrapper);
+ wrapper.setInternalUpgrade(true);
}
Modified: tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java?rev=1662695&r1=1662694&r2=1662695&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java Fri Feb 27 15:00:23 2015
@@ -83,13 +83,9 @@ public class WsRemoteEndpointImplServer
public void onWritePossible(boolean useDispatch) {
ByteBuffer[] buffers = this.buffers;
- if (buffers == null) {
- // Servlet 3.1 will call the write listener once even if nothing
- // was written
- return;
- }
boolean complete = false;
try {
+ socketWrapper.flush(false);
// If this is false there will be a call back when it is true
while (socketWrapper.isReadyForWrite()) {
complete = true;
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org