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: [email protected]
For additional commands, e-mail: [email protected]