Author: markt Date: Thu Nov 30 10:20:27 2017 New Revision: 1816700 URL: http://svn.apache.org/viewvc?rev=1816700&view=rev Log: Refactoring: HTTP/1.1 - HTTP/2 alignment
Change StreamOutputBuffer to implement HttpOutputBuffer Modified: tomcat/trunk/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java tomcat/trunk/java/org/apache/coyote/http2/Stream.java tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java Modified: tomcat/trunk/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java?rev=1816700&r1=1816699&r2=1816700&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java Thu Nov 30 10:20:27 2017 @@ -329,7 +329,7 @@ public class Http2AsyncUpgradeHandler ex sendfile.left -= bytesWritten; if (sendfile.left == 0) { try { - sendfile.stream.getOutputBuffer().close(); + sendfile.stream.getOutputBuffer().end(); } catch (IOException e) { failed(e, sendfile); } Modified: tomcat/trunk/java/org/apache/coyote/http2/Stream.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/Stream.java?rev=1816700&r1=1816699&r2=1816700&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http2/Stream.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/Stream.java Thu Nov 30 10:20:27 2017 @@ -31,9 +31,9 @@ import java.util.function.Supplier; import org.apache.coyote.ActionCode; import org.apache.coyote.CloseNowException; import org.apache.coyote.InputBuffer; -import org.apache.coyote.OutputBuffer; import org.apache.coyote.Request; import org.apache.coyote.Response; +import org.apache.coyote.http.HttpOutputBuffer; import org.apache.coyote.http2.HpackDecoder.HeaderEmitter; import org.apache.juli.logging.Log; import org.apache.juli.logging.LogFactory; @@ -685,7 +685,7 @@ class Stream extends AbstractStream impl } - class StreamOutputBuffer implements OutputBuffer { + class StreamOutputBuffer implements HttpOutputBuffer { private final ByteBuffer buffer = ByteBuffer.allocate(8 * 1024); private volatile long written = 0; @@ -784,7 +784,8 @@ class Stream extends AbstractStream impl return written; } - final void close() throws IOException { + @Override + public final void end() throws IOException { closed = true; flushData(); writeTrailers(); @@ -797,6 +798,11 @@ class Stream extends AbstractStream impl final boolean hasNoBody() { return ((written == 0) && closed); } + + @Override + public void flush() throws IOException { + flush(true); + } } Modified: tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java?rev=1816700&r1=1816699&r2=1816700&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java Thu Nov 30 10:20:27 2017 @@ -158,7 +158,7 @@ class StreamProcessor extends AbstractPr protected final void finishResponse() throws IOException { sendfileState = handler.processSendfile(sendfileData); if (!(sendfileState == SendfileState.PENDING)) { - stream.getOutputBuffer().close(); + stream.getOutputBuffer().end(); } } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org