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-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org