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 2022/09/30 18:04:35 UTC

[tomcat] 01/02: Refactor to remove unnecessary parameter

This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git

commit 795dfa4aff3ecac8bf682e6c3bfb6eab5cc0cd2a
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Fri Sep 30 18:14:40 2022 +0100

    Refactor to remove unnecessary parameter
---
 java/org/apache/coyote/http2/Http2Parser.java      | 18 ++++++
 .../apache/coyote/http2/Http2UpgradeHandler.java   |  2 +-
 .../servlet/http/HttpServletDoHeadBaseTest.java    |  8 +--
 test/org/apache/coyote/http2/Http2TestBase.java    | 30 +++++-----
 test/org/apache/coyote/http2/TestAsync.java        |  8 +--
 test/org/apache/coyote/http2/TestAsyncFlush.java   |  4 +-
 test/org/apache/coyote/http2/TestAsyncTimeout.java |  4 +-
 .../apache/coyote/http2/TestCancelledUpload.java   |  8 +--
 test/org/apache/coyote/http2/TestFlowControl.java  |  8 +--
 test/org/apache/coyote/http2/TestHttp2Limits.java  | 30 +++++-----
 .../apache/coyote/http2/TestHttp2Section_3_2.java  |  6 +-
 .../apache/coyote/http2/TestHttp2Section_3_5.java  |  4 +-
 .../apache/coyote/http2/TestHttp2Section_4_2.java  |  2 +-
 .../apache/coyote/http2/TestHttp2Section_4_3.java  |  4 +-
 .../apache/coyote/http2/TestHttp2Section_5_1.java  | 70 +++++++++++-----------
 .../apache/coyote/http2/TestHttp2Section_5_2.java  | 10 ++--
 .../apache/coyote/http2/TestHttp2Section_5_3.java  | 22 +++----
 .../apache/coyote/http2/TestHttp2Section_5_5.java  |  4 +-
 .../apache/coyote/http2/TestHttp2Section_6_3.java  |  2 +-
 .../apache/coyote/http2/TestHttp2Section_6_4.java  |  2 +-
 .../apache/coyote/http2/TestHttp2Section_6_5.java  |  2 +-
 .../apache/coyote/http2/TestHttp2Section_6_6.java  | 10 ++--
 .../apache/coyote/http2/TestHttp2Section_6_7.java  |  4 +-
 .../apache/coyote/http2/TestHttp2Section_6_8.java  |  8 +--
 .../apache/coyote/http2/TestHttp2Section_6_9.java  | 38 ++++++------
 .../apache/coyote/http2/TestHttp2Section_8_1.java  | 32 +++++-----
 .../org/apache/coyote/http2/TestHttp2Timeouts.java | 20 +++----
 .../coyote/http2/TestHttp2UpgradeHandler.java      | 16 ++---
 test/org/apache/coyote/http2/TestHttpServlet.java  |  4 +-
 test/org/apache/coyote/http2/TestStream.java       |  6 +-
 .../apache/coyote/http2/TestStreamProcessor.java   | 14 ++---
 .../apache/coyote/http2/TestStreamQueryString.java | 10 ++--
 .../org/apache/coyote/http2/TesterHttp2Parser.java | 11 +++-
 33 files changed, 223 insertions(+), 198 deletions(-)

diff --git a/java/org/apache/coyote/http2/Http2Parser.java b/java/org/apache/coyote/http2/Http2Parser.java
index c03a17a5e9..72c30532e1 100644
--- a/java/org/apache/coyote/http2/Http2Parser.java
+++ b/java/org/apache/coyote/http2/Http2Parser.java
@@ -66,12 +66,30 @@ class Http2Parser {
      *         <code>false</code>
      *
      * @throws IOException If an IO error occurs while trying to read a frame
+     *
+     * @deprecated Unused. Will be removed in Tomcat 11 onwards.
      */
+    @Deprecated
     boolean readFrame(boolean block) throws Http2Exception, IOException {
         return readFrame(block, null);
     }
 
 
+    /**
+     * Read and process a single frame. The initial read is non-blocking to
+     * determine if a frame is present. Once the start of a frame is read, the
+     * remainder will be read using blocking IO.
+     *
+     * @return <code>true</code> if a frame was read otherwise
+     *         <code>false</code>
+     *
+     * @throws IOException If an IO error occurs while trying to read a frame
+     */
+    boolean readFrame() throws Http2Exception, IOException {
+        return readFrame(false, null);
+    }
+
+
     protected boolean readFrame(boolean block, FrameType expected)
             throws IOException, Http2Exception {
 
diff --git a/java/org/apache/coyote/http2/Http2UpgradeHandler.java b/java/org/apache/coyote/http2/Http2UpgradeHandler.java
index f093b2ad38..4073411e25 100644
--- a/java/org/apache/coyote/http2/Http2UpgradeHandler.java
+++ b/java/org/apache/coyote/http2/Http2UpgradeHandler.java
@@ -355,7 +355,7 @@ class Http2UpgradeHandler extends AbstractStream implements InternalHttpUpgradeH
                     setConnectionTimeout(-1);
                     while (true) {
                         try {
-                            if (!parser.readFrame(false)) {
+                            if (!parser.readFrame()) {
                                 break;
                             }
                         } catch (StreamException se) {
diff --git a/test/jakarta/servlet/http/HttpServletDoHeadBaseTest.java b/test/jakarta/servlet/http/HttpServletDoHeadBaseTest.java
index 3de57243ba..21a962d48d 100644
--- a/test/jakarta/servlet/http/HttpServletDoHeadBaseTest.java
+++ b/test/jakarta/servlet/http/HttpServletDoHeadBaseTest.java
@@ -128,11 +128,11 @@ public class HttpServletDoHeadBaseTest extends Http2TestBase {
             writeFrame(frameHeaderGet, headersPayloadGet);
 
             // Want the headers frame for stream 3
-            parser.readFrame(true);
+            parser.readFrame();
             while (!output.getTrace().startsWith("3-HeadersStart\n")) {
                 debug.append(output.getTrace());
                 output.clearTrace();
-                parser.readFrame(true);
+                parser.readFrame();
             }
             String traceGet = output.getTrace();
             debug.append(output.getTrace());
@@ -145,11 +145,11 @@ public class HttpServletDoHeadBaseTest extends Http2TestBase {
             writeFrame(frameHeaderHead, headersPayloadHead);
 
             // Want the headers frame for stream 5
-            parser.readFrame(true);
+            parser.readFrame();
             while (!output.getTrace().startsWith("5-HeadersStart\n")) {
                 debug.append(output.getTrace());
                 output.clearTrace();
-                parser.readFrame(true);
+                parser.readFrame();
             }
             String traceHead = output.getTrace();
             debug.append(output.getTrace());
diff --git a/test/org/apache/coyote/http2/Http2TestBase.java b/test/org/apache/coyote/http2/Http2TestBase.java
index 12c8fd7aeb..ba11706257 100644
--- a/test/org/apache/coyote/http2/Http2TestBase.java
+++ b/test/org/apache/coyote/http2/Http2TestBase.java
@@ -156,11 +156,11 @@ public abstract class Http2TestBase extends TomcatBaseTest {
         // - ping
         // - headers (for response)
         // - data (for response body)
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
 
         Assert.assertEquals("0-Settings-[3]-[200]\n" +
                 "0-Settings-End\n" +
@@ -511,9 +511,9 @@ public abstract class Http2TestBase extends TomcatBaseTest {
 
     protected void readSimpleGetResponse() throws Http2Exception, IOException {
         // Headers
-        parser.readFrame(true);
+        parser.readFrame();
         // Body
-        parser.readFrame(true);
+        parser.readFrame();
     }
 
 
@@ -528,23 +528,23 @@ public abstract class Http2TestBase extends TomcatBaseTest {
          */
 
         // Connection window update after reading request body
-        parser.readFrame(true);
+        parser.readFrame();
         // Stream window update after reading request body
-        parser.readFrame(true);
+        parser.readFrame();
         // Headers
-        parser.readFrame(true);
+        parser.readFrame();
         // Body (includes end of stream)
-        parser.readFrame(true);
+        parser.readFrame();
 
         if (padding) {
             // Connection window update for padding
-            parser.readFrame(true);
+            parser.readFrame();
 
             // If EndOfStream has not been received then the stream window
             // update must have been received so a further frame needs to be
             // read for EndOfStream.
             if (!output.getTrace().contains("EndOfStream")) {
-                parser.readFrame(true);
+                parser.readFrame();
             }
         }
     }
@@ -979,7 +979,7 @@ public abstract class Http2TestBase extends TomcatBaseTest {
     protected void skipWindowSizeFrames() throws Http2Exception, IOException {
         do {
             output.clearTrace();
-            parser.readFrame(true);
+            parser.readFrame();
         } while (output.getTrace().contains("WindowSize"));
     }
 
@@ -987,7 +987,7 @@ public abstract class Http2TestBase extends TomcatBaseTest {
     void handleGoAwayResponse(int lastStream, Http2Error expectedError)
             throws Http2Exception, IOException {
         try {
-            parser.readFrame(true);
+            parser.readFrame();
 
             Assert.assertTrue(output.getTrace(), output.getTrace().startsWith(
                     "0-Goaway-[" + lastStream + "]-[" + expectedError.getCode() + "]-["));
diff --git a/test/org/apache/coyote/http2/TestAsync.java b/test/org/apache/coyote/http2/TestAsync.java
index f5265c872a..1d497bf09b 100644
--- a/test/org/apache/coyote/http2/TestAsync.java
+++ b/test/org/apache/coyote/http2/TestAsync.java
@@ -152,12 +152,12 @@ public class TestAsync extends Http2TestBase {
         }
 
         // Headers
-        parser.readFrame(true);
+        parser.readFrame();
         // Body
 
         if (!connectionUnlimited || !streamUnlimited) {
             while (output.getBytesRead() < startingWindowSize) {
-                parser.readFrame(true);
+                parser.readFrame();
             }
 
             // Check that the right number of bytes were received
@@ -174,7 +174,7 @@ public class TestAsync extends Http2TestBase {
             }
 
             while (output.getBytesRead() < startingWindowSize + windowSizeIncrease) {
-                parser.readFrame(true);
+                parser.readFrame();
             }
 
             // Check that the right number of bytes were received
@@ -191,7 +191,7 @@ public class TestAsync extends Http2TestBase {
         }
 
         while (!output.getTrace().endsWith("3-EndOfStream\n")) {
-            parser.readFrame(true);
+            parser.readFrame();
         }
 
         // Check that the right number of bytes were received
diff --git a/test/org/apache/coyote/http2/TestAsyncFlush.java b/test/org/apache/coyote/http2/TestAsyncFlush.java
index 5d49c3337a..4c548e4926 100644
--- a/test/org/apache/coyote/http2/TestAsyncFlush.java
+++ b/test/org/apache/coyote/http2/TestAsyncFlush.java
@@ -85,7 +85,7 @@ public class TestAsyncFlush extends Http2TestBase {
         writeFrame(frameHeader, headersPayload);
 
         // Headers
-        parser.readFrame(true);
+        parser.readFrame();
         // Body
 
         while (output.getBytesRead() < targetSize ) {
@@ -94,7 +94,7 @@ public class TestAsyncFlush extends Http2TestBase {
                 sendWindowUpdate(0, ConnectionSettingsBase.DEFAULT_INITIAL_WINDOW_SIZE);
                 totalWindow += ConnectionSettingsBase.DEFAULT_INITIAL_WINDOW_SIZE;
             }
-            parser.readFrame(true);
+            parser.readFrame();
         }
 
         // Check that the right number of bytes were received
diff --git a/test/org/apache/coyote/http2/TestAsyncTimeout.java b/test/org/apache/coyote/http2/TestAsyncTimeout.java
index 294bca81a1..69529641cd 100644
--- a/test/org/apache/coyote/http2/TestAsyncTimeout.java
+++ b/test/org/apache/coyote/http2/TestAsyncTimeout.java
@@ -79,9 +79,9 @@ public class TestAsyncTimeout extends Http2TestBase {
         writeFrame(frameHeader, headersPayload);
 
         // Headers
-        parser.readFrame(true);
+        parser.readFrame();
         // Body
-        parser.readFrame(true);
+        parser.readFrame();
 
         // Check that the expected text was received
         String trace = output.getTrace();
diff --git a/test/org/apache/coyote/http2/TestCancelledUpload.java b/test/org/apache/coyote/http2/TestCancelledUpload.java
index e4738ccf6a..2407f1f512 100644
--- a/test/org/apache/coyote/http2/TestCancelledUpload.java
+++ b/test/org/apache/coyote/http2/TestCancelledUpload.java
@@ -76,7 +76,7 @@ public class TestCancelledUpload extends Http2TestBase {
             // The connection processing thread will:
             // - read the request body until the flow control window is exhausted
             // - reset the stream if further DATA frames are received
-            parser.readFrame(true);
+            parser.readFrame();
 
             // Check for reset and exit if found
             if (checkReset()) {
@@ -91,7 +91,7 @@ public class TestCancelledUpload extends Http2TestBase {
                     "3-HeadersEnd\n",
                     output.getTrace());
             output.clearTrace();
-            parser.readFrame(true);
+            parser.readFrame();
 
             // Check for reset and exit if found
             if (checkReset()) {
@@ -103,7 +103,7 @@ public class TestCancelledUpload extends Http2TestBase {
                     "3-EndOfStream\n",
                     output.getTrace());
             output.clearTrace();
-            parser.readFrame(true);
+            parser.readFrame();
 
             Assert.assertTrue(checkReset());
 
@@ -144,7 +144,7 @@ public class TestCancelledUpload extends Http2TestBase {
                 return false;
             }
             output.clearTrace();
-            parser.readFrame(true);
+            parser.readFrame();
         }
     }
 
diff --git a/test/org/apache/coyote/http2/TestFlowControl.java b/test/org/apache/coyote/http2/TestFlowControl.java
index 9093a8e924..60269389e1 100644
--- a/test/org/apache/coyote/http2/TestFlowControl.java
+++ b/test/org/apache/coyote/http2/TestFlowControl.java
@@ -83,11 +83,11 @@ public class TestFlowControl extends Http2TestBase {
 
             // Read the 404 error page
             // headers
-            parser.readFrame(true);
+            parser.readFrame();
             // body
-            parser.readFrame(true);
+            parser.readFrame();
             // reset (because the request body was not fully read)
-            parser.readFrame(true);
+            parser.readFrame();
 
             // Validate response
             // Response size varies as error page is generated and includes version
@@ -140,7 +140,7 @@ public class TestFlowControl extends Http2TestBase {
         boolean found = false;
         String trace;
         do {
-            parser.readFrame(true);
+            parser.readFrame();
             trace = output.getTrace();
             output.clearTrace();
             found = trace.startsWith(prefix);
diff --git a/test/org/apache/coyote/http2/TestHttp2Limits.java b/test/org/apache/coyote/http2/TestHttp2Limits.java
index e8bea21c41..25103f9cd7 100644
--- a/test/org/apache/coyote/http2/TestHttp2Limits.java
+++ b/test/org/apache/coyote/http2/TestHttp2Limits.java
@@ -50,7 +50,7 @@ public class TestHttp2Limits extends Http2TestBase {
         for (int i = 0; i < 100; i++) {
             try {
                 sendSettings(0, false);
-                parser.readFrame(true);
+                parser.readFrame();
             } catch (IOException ioe) {
                 // Server closed connection before client has a chance to read
                 // the Goaway frame. Treat this as a pass.
@@ -149,8 +149,8 @@ public class TestHttp2Limits extends Http2TestBase {
 
         output.clearTrace();
         sendSimpleGetRequest(5);
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
         Assert.assertEquals(getSimpleResponseTrace(5), output.getTrace());
     }
 
@@ -281,7 +281,7 @@ public class TestHttp2Limits extends Http2TestBase {
         }
         case STREAM_RESET: {
             // Expect a stream reset
-            parser.readFrame(true);
+            parser.readFrame();
             Assert.assertEquals("3-RST-[11]\n", output.getTrace());
             Assert.assertNull(e);
             break;
@@ -301,7 +301,7 @@ public class TestHttp2Limits extends Http2TestBase {
             // Note: Some platforms will allow the read if if the write fails
             //       above.
             try {
-                parser.readFrame(true);
+                parser.readFrame();
                 MatcherAssert.assertThat(output.getTrace(), RegexMatcher.matchesRegex(
                         "0-Goaway-\\[1\\]-\\[11\\]-\\[" + limitMessage + "\\]"));
             } catch (IOException se) {
@@ -425,21 +425,21 @@ public class TestHttp2Limits extends Http2TestBase {
 
         switch (failMode) {
         case 0: {
-            parser.readFrame(true);
-            parser.readFrame(true);
-            parser.readFrame(true);
+            parser.readFrame();
+            parser.readFrame();
+            parser.readFrame();
             System.out.println(output.getTrace());
             Assert.assertEquals(getCookieResponseTrace(3, cookieCount), output.getTrace());
             break;
         }
         case 1: {
             // Check status is 400
-            parser.readFrame(true);
+            parser.readFrame();
             Assert.assertTrue(output.getTrace(), output.getTrace().startsWith(
                     "3-HeadersStart\n3-Header-[:status]-[400]"));
             output.clearTrace();
             // Check EOS followed by error page body
-            parser.readFrame(true);
+            parser.readFrame();
             Assert.assertTrue(output.getTrace(), output.getTrace().startsWith("3-EndOfStream\n3-Body-<!doctype"));
             break;
         }
@@ -506,10 +506,10 @@ public class TestHttp2Limits extends Http2TestBase {
 
         switch (failMode) {
         case NONE: {
-            parser.readFrame(true);
-            parser.readFrame(true);
-            parser.readFrame(true);
-            parser.readFrame(true);
+            parser.readFrame();
+            parser.readFrame();
+            parser.readFrame();
+            parser.readFrame();
 
             String len = Integer.toString(256 + TRAILER_HEADER_VALUE.length());
 
@@ -535,7 +535,7 @@ public class TestHttp2Limits extends Http2TestBase {
             // the enhance your calm reset
             if ("3-RST-[5]\n".equals(output.getTrace())) {
                 output.clearTrace();
-                parser.readFrame(true);
+                parser.readFrame();
             }
 
             Assert.assertEquals("3-RST-[11]\n", output.getTrace());
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_3_2.java b/test/org/apache/coyote/http2/TestHttp2Section_3_2.java
index 885e72cb38..8f1057d6d5 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_3_2.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_3_2.java
@@ -61,7 +61,7 @@ public class TestHttp2Section_3_2 extends Http2TestBase {
         // If we don't send the preface the server should kill the connection.
         try {
             // Make the parser read something.
-            parser.readFrame(true);
+            parser.readFrame();
         } catch (IOException ioe) {
             // Expected because the server is going to drop the connection.
         }
@@ -78,7 +78,7 @@ public class TestHttp2Section_3_2 extends Http2TestBase {
         os.flush();
         try {
             // Make the parser read something.
-            parser.readFrame(true);
+            parser.readFrame();
         } catch (IOException ioe) {
             // Expected because the server is going to drop the connection.
         }
@@ -96,7 +96,7 @@ public class TestHttp2Section_3_2 extends Http2TestBase {
         os.flush();
         try {
             // Make the parser read something.
-            parser.readFrame(true);
+            parser.readFrame();
         } catch (IOException ioe) {
             // Expected because the server is going to drop the connection.
         }
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_3_5.java b/test/org/apache/coyote/http2/TestHttp2Section_3_5.java
index 2e45e3a7d2..60112773b8 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_3_5.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_3_5.java
@@ -31,7 +31,7 @@ public class TestHttp2Section_3_5 extends Http2TestBase {
         doHttpUpgrade();
 
         // Server settings
-        parser.readFrame(true);
+        parser.readFrame();
         Assert.assertEquals("0-Settings-[3]-[200]\n" +
                 "0-Settings-End\n"
                 , output.getTrace());
@@ -57,7 +57,7 @@ public class TestHttp2Section_3_5 extends Http2TestBase {
         // acknowledgement. Of the settings. As the preface was invalid, it
         // should be a GOAWAY frame.
         try {
-            parser.readFrame(true);
+            parser.readFrame();
             Assert.assertTrue(output.getTrace(), output.getTrace().startsWith("0-Goaway-[1]-[1]-["));
         } catch (IOException ioe) {
             // Ignore
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_4_2.java b/test/org/apache/coyote/http2/TestHttp2Section_4_2.java
index 557e8f4a27..496825f38e 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_4_2.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_4_2.java
@@ -123,7 +123,7 @@ public class TestHttp2Section_4_2 extends Http2TestBase {
         os.write(priority);
 
         // Read Stream reset frame
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertTrue(output.getTrace(),
                 output.getTrace().startsWith("3-RST-[6]"));
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_4_3.java b/test/org/apache/coyote/http2/TestHttp2Section_4_3.java
index 52ad968149..dc65ee6395 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_4_3.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_4_3.java
@@ -67,8 +67,8 @@ public class TestHttp2Section_4_3 extends Http2TestBase {
         writeFrame(frameHeader, headersPayload);
 
         // headers, body
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
 
         Assert.assertEquals(getSimpleResponseTrace(3), output.getTrace());
     }
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_5_1.java b/test/org/apache/coyote/http2/TestHttp2Section_5_1.java
index 36e71c5200..62c507cdf7 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_5_1.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_5_1.java
@@ -94,7 +94,7 @@ public class TestHttp2Section_5_1 extends Http2TestBase {
 
         // Then try sending some data (which should fail)
         sendData(3, new byte[] {});
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertTrue(output.getTrace(),
                 output.getTrace().startsWith("3-RST-[" + Http2Error.STREAM_CLOSED.getCode() + "]"));
@@ -200,11 +200,11 @@ public class TestHttp2Section_5_1 extends Http2TestBase {
         sendClientPreface();
 
         // validateHttp2InitialResponse() - modified
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
 
         Assert.assertEquals("0-Settings-[3]-[1]\n" +
                 "0-Settings-End\n" +
@@ -227,7 +227,7 @@ public class TestHttp2Section_5_1 extends Http2TestBase {
         // 1 * error
         // for a total of 9 frames (could be in any order)
         for (int i = 0; i < 9; i++) {
-            parser.readFrame(true);
+            parser.readFrame();
         }
 
         Assert.assertTrue(output.getTrace(),
@@ -245,14 +245,14 @@ public class TestHttp2Section_5_1 extends Http2TestBase {
 
         // Read until the end of stream 3
         while (!output.getTrace().contains("3-EndOfStream")) {
-            parser.readFrame(true);
+            parser.readFrame();
         }
         output.clearTrace();
 
         // Confirm another request can be sent once concurrency falls back below limit
         sendSimpleGetRequest(7);
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
         Assert.assertEquals(getSimpleResponseTrace(7), output.getTrace());
     }
 
@@ -267,11 +267,11 @@ public class TestHttp2Section_5_1 extends Http2TestBase {
         sendClientPreface();
 
         // validateHttp2InitialResponse() - modified
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
 
         Assert.assertEquals("0-Settings-[3]-[1]\n" +
                 "0-Settings-End\n" +
@@ -294,7 +294,7 @@ public class TestHttp2Section_5_1 extends Http2TestBase {
         // 1 * error
         // for a total of 9 frames (could be in any order)
         for (int i = 0; i < 9; i++) {
-            parser.readFrame(true);
+            parser.readFrame();
         }
 
         Assert.assertTrue(output.getTrace(),
@@ -309,7 +309,7 @@ public class TestHttp2Section_5_1 extends Http2TestBase {
         sendRst(3, Http2Error.NO_ERROR.getCode());
         // Client reset triggers a write error which in turn triggers a server
         // reset
-        parser.readFrame(true);
+        parser.readFrame();
         Assert.assertEquals("3-RST-[5]\n", output.getTrace());
         output.clearTrace();
 
@@ -318,8 +318,8 @@ public class TestHttp2Section_5_1 extends Http2TestBase {
 
         // Confirm another request can be sent once concurrency falls back below limit
         sendSimpleGetRequest(7);
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
         Assert.assertEquals(getSimpleResponseTrace(7), output.getTrace());
     }
 
@@ -336,11 +336,11 @@ public class TestHttp2Section_5_1 extends Http2TestBase {
             sendClientPreface();
 
             // validateHttp2InitialResponse() - modified
-            parser.readFrame(true);
-            parser.readFrame(true);
-            parser.readFrame(true);
-            parser.readFrame(true);
-            parser.readFrame(true);
+            parser.readFrame();
+            parser.readFrame();
+            parser.readFrame();
+            parser.readFrame();
+            parser.readFrame();
 
             Assert.assertEquals("0-Settings-[3]-[1]\n" +
                     "0-Settings-End\n" +
@@ -362,9 +362,9 @@ public class TestHttp2Section_5_1 extends Http2TestBase {
             // 56k-1 of body (7 * ~8k)
             // 1 * error (could be in any order)
             for (int i = 0; i < 8; i++) {
-                parser.readFrame(true);
+                parser.readFrame();
             }
-            parser.readFrame(true);
+            parser.readFrame();
 
             Assert.assertTrue(output.getTrace(),
                     output.getTrace().contains("5-RST-[" + Http2Error.REFUSED_STREAM.getCode() + "]"));
@@ -377,7 +377,7 @@ public class TestHttp2Section_5_1 extends Http2TestBase {
             // Allow for the 8k still in the stream window
             sendWindowUpdate(3, (1 << 31) - 1);
 
-            parser.readFrame(true);
+            parser.readFrame();
             Assert.assertEquals("3-RST-[" + Http2Error.FLOW_CONTROL_ERROR.getCode() + "]\n", output.getTrace());
         } finally {
             LogManager.getLogManager().getLogger("org.apache.coyote.http2").setLevel(Level.INFO);
@@ -395,11 +395,11 @@ public class TestHttp2Section_5_1 extends Http2TestBase {
         sendClientPreface();
 
         // validateHttp2InitialResponse() - modified
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
 
         Assert.assertEquals("0-Settings-[3]-[1]\n" +
                 "0-Settings-End\n" +
@@ -432,9 +432,9 @@ public class TestHttp2Section_5_1 extends Http2TestBase {
         // Could be in any order
         //
         for (int i = 0; i < 9; i++) {
-            parser.readFrame(true);
+            parser.readFrame();
         }
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertTrue(output.getTrace(),
                 output.getTrace().contains("5-RST-[" + Http2Error.REFUSED_STREAM.getCode() + "]"));
@@ -446,7 +446,7 @@ public class TestHttp2Section_5_1 extends Http2TestBase {
         // Allow for the 8k still in the connection window
         sendWindowUpdate(0, (1 << 31) - 1);
 
-        parser.readFrame(true);
+        parser.readFrame();
         Assert.assertTrue(output.getTrace(),
                 output.getTrace().contains("0-Goaway-[5]-[" + Http2Error.FLOW_CONTROL_ERROR.getCode() + "]"));
     }
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_5_2.java b/test/org/apache/coyote/http2/TestHttp2Section_5_2.java
index 7bef2f0566..35083face7 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_5_2.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_5_2.java
@@ -47,16 +47,16 @@ public class TestHttp2Section_5_2 extends Http2TestBase {
         // Set the default window size to 1024 bytes
         sendSettings(0, false, new SettingValue(4, 1024));
         // Wait for the ack
-        parser.readFrame(true);
+        parser.readFrame();
         output.clearTrace();
 
         // Headers + 8k response
         sendSimpleGetRequest(3);
 
         // Headers
-        parser.readFrame(true);
+        parser.readFrame();
         // First 1k of body
-        parser.readFrame(true);
+        parser.readFrame();
         output.clearTrace();
     }
 
@@ -102,7 +102,7 @@ public class TestHttp2Section_5_2 extends Http2TestBase {
 
     private void readBytes(int len, int expected, boolean eos) throws Exception {
         sendWindowUpdate(3, len);
-        parser.readFrame(true);
+        parser.readFrame();
         String expectedTrace = "3-Body-" + expected + "\n";
         if (eos) {
             expectedTrace += "3-EndOfStream\n";
@@ -115,6 +115,6 @@ public class TestHttp2Section_5_2 extends Http2TestBase {
     private void clearRemainder() throws Exception {
         // Remainder
         sendWindowUpdate(3, 8192);
-        parser.readFrame(true);
+        parser.readFrame();
     }
 }
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_5_3.java b/test/org/apache/coyote/http2/TestHttp2Section_5_3.java
index 6001b3e1a3..32fdb9fed6 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_5_3.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_5_3.java
@@ -39,7 +39,7 @@ public class TestHttp2Section_5_3 extends Http2TestBase {
 
         sendPriority(3,  3,  15);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals("3-RST-[1]\n",  output.getTrace());
     }
@@ -73,7 +73,7 @@ public class TestHttp2Section_5_3 extends Http2TestBase {
         // Set the default window size to 1024 bytes
         sendSettings(0, false, new SettingValue(4, 1024));
         // Wait for the ack
-        parser.readFrame(true);
+        parser.readFrame();
         // Debugging Gump failure
         log.info(output.getTrace());
         output.clearTrace();
@@ -90,10 +90,10 @@ public class TestHttp2Section_5_3 extends Http2TestBase {
         // stream 17's window and the connection window.
         sendSimpleGetRequest(17);
         // 17-headers, 17-1k-body
-        parser.readFrame(true);
+        parser.readFrame();
         // Debugging Gump failure
         log.info(output.getTrace());
-        parser.readFrame(true);
+        parser.readFrame();
         // Debugging Gump failure
         log.info(output.getTrace());
         output.clearTrace();
@@ -110,10 +110,10 @@ public class TestHttp2Section_5_3 extends Http2TestBase {
 
         // Read some frames
         // 19-headers, 21-headers
-        parser.readFrame(true);
+        parser.readFrame();
         // Debugging Gump failure
         log.info(output.getTrace());
-        parser.readFrame(true);
+        parser.readFrame();
         // Debugging Gump failure
         log.info(output.getTrace());
         output.clearTrace();
@@ -155,7 +155,7 @@ public class TestHttp2Section_5_3 extends Http2TestBase {
         boolean seen21 = false;
         while (!seen19 || !seen21) {
             sendWindowUpdate(0, 1);
-            parser.readFrame(true);
+            parser.readFrame();
             // Debugging Gump failure
             log.info(output.getTrace());
             int[] data = parseBodyFrame(output.getTrace());
@@ -183,7 +183,7 @@ public class TestHttp2Section_5_3 extends Http2TestBase {
         Thread.sleep(1000);
 
         sendWindowUpdate(0, 1024);
-        parser.readFrame(true);
+        parser.readFrame();
 
         // Make sure you have read the big comment before the loop above. It is
         // possible that the timing of the server threads is such that there are
@@ -193,7 +193,7 @@ public class TestHttp2Section_5_3 extends Http2TestBase {
             // Debugging Gump failure
             log.info(output.getTrace());
             output.clearTrace();
-            parser.readFrame(true);
+            parser.readFrame();
             data = parseBodyFrame(output.getTrace());
         }
 
@@ -221,7 +221,7 @@ public class TestHttp2Section_5_3 extends Http2TestBase {
                 Assert.fail("Unexpected stream: [" + output.getTrace() + "]");
             }
             output.clearTrace();
-            parser.readFrame(true);
+            parser.readFrame();
             data = parseBodyFrame(output.getTrace());
         }
         // Debugging Gump failure
@@ -235,7 +235,7 @@ public class TestHttp2Section_5_3 extends Http2TestBase {
         // Read remaining frames
         // 17-7k-body, 19~8k-body, 21~8k-body
         for (int i = 0; i < 3; i++) {
-            parser.readFrame(true);
+            parser.readFrame();
             // Debugging Gump failure
             log.info(output.getTrace());
         }
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_5_5.java b/test/org/apache/coyote/http2/TestHttp2Section_5_5.java
index 44ba7ec8db..fb9966757a 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_5_5.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_5_5.java
@@ -55,7 +55,7 @@ public class TestHttp2Section_5_5 extends Http2TestBase {
         // Unknown setting (should be ack'd)
         sendSettings(0, false, new SettingValue(1 << 15, 0));
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals("0-Settings-Ack\n",  output.getTrace());
     }
@@ -71,7 +71,7 @@ public class TestHttp2Section_5_5 extends Http2TestBase {
         // Ping
         sendPing();
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals("0-Ping-Ack-[0,0,0,0,0,0,0,0]\n", output.getTrace());
     }
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_6_3.java b/test/org/apache/coyote/http2/TestHttp2Section_6_3.java
index 3aa24a772e..0b9c956769 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_6_3.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_6_3.java
@@ -78,7 +78,7 @@ public class TestHttp2Section_6_3 extends Http2TestBase {
         os.flush();
 
         // Read reset frame
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals("3-RST-[" + Http2Error.FRAME_SIZE_ERROR.getCode() + "]\n",
                 output.getTrace());
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_6_4.java b/test/org/apache/coyote/http2/TestHttp2Section_6_4.java
index eb8b0d99a9..a587294cac 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_6_4.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_6_4.java
@@ -71,7 +71,7 @@ public class TestHttp2Section_6_4 extends Http2TestBase {
         os.flush();
 
         // Read reset frame
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals("3-RST-[" + Http2Error.FRAME_SIZE_ERROR.getCode() + "]\n",
                 output.getTrace());
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_6_5.java b/test/org/apache/coyote/http2/TestHttp2Section_6_5.java
index d31ce00e90..306bd89671 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_6_5.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_6_5.java
@@ -117,7 +117,7 @@ public class TestHttp2Section_6_5 extends Http2TestBase {
         sendSettings(0, false, new SettingValue(0xFF,0xFF));
 
         // Ack
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertTrue(output.getTrace(), output.getTrace().startsWith(
                 "0-Settings-Ack"));
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_6_6.java b/test/org/apache/coyote/http2/TestHttp2Section_6_6.java
index 455ba6f1d0..cdf19bbec1 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_6_6.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_6_6.java
@@ -63,15 +63,15 @@ public class TestHttp2Section_6_6  extends Http2TestBase {
 
         // Read the response
         // push promise
-        parser.readFrame(true);
+        parser.readFrame();
         // stream 3 response headers
-        parser.readFrame(true);
+        parser.readFrame();
         // stream 3 response body
-        parser.readFrame(true);
+        parser.readFrame();
         // stream 2 response headers
-        parser.readFrame(true);
+        parser.readFrame();
         // stream 2 response body
-        parser.readFrame(true);
+        parser.readFrame();
 
         String trace = output.getTrace();
 
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_6_7.java b/test/org/apache/coyote/http2/TestHttp2Section_6_7.java
index 7a50f2321e..d9186486fb 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_6_7.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_6_7.java
@@ -39,7 +39,7 @@ public class TestHttp2Section_6_7 extends Http2TestBase {
         sendPing(0, false, "01234567".getBytes(StandardCharsets.ISO_8859_1));
 
         // Ping ack
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals("0-Ping-Ack-[48,49,50,51,52,53,54,55]\n", output.getTrace());
     }
@@ -54,7 +54,7 @@ public class TestHttp2Section_6_7 extends Http2TestBase {
         sendPing(0, false, "76543210".getBytes(StandardCharsets.ISO_8859_1));
 
         // Ping ack (only for second ping)
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals("0-Ping-Ack-[55,54,53,52,51,50,49,48]\n", output.getTrace());
     }
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_6_8.java b/test/org/apache/coyote/http2/TestHttp2Section_6_8.java
index b80b1a9512..b2de519e6b 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_6_8.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_6_8.java
@@ -47,7 +47,7 @@ public class TestHttp2Section_6_8 extends Http2TestBase {
         getTomcatInstance().getConnector().pause();
 
         // Go away
-        parser.readFrame(true);
+        parser.readFrame();
         Assert.assertEquals("0-Goaway-[2147483647]-[0]-[null]", output.getTrace());
         output.clearTrace();
 
@@ -59,14 +59,14 @@ public class TestHttp2Section_6_8 extends Http2TestBase {
         // Should be ignored
         sendSimpleGetRequest(5);
 
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
 
         Assert.assertEquals(getSimpleResponseTrace(3),  output.getTrace());
         output.clearTrace();
 
         // Finally the go away frame
-        parser.readFrame(true);
+        parser.readFrame();
         Assert.assertEquals("0-Goaway-[3]-[0]-[null]", output.getTrace());
     }
 
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_6_9.java b/test/org/apache/coyote/http2/TestHttp2Section_6_9.java
index 6fecb93696..25186671d1 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_6_9.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_6_9.java
@@ -47,7 +47,7 @@ public class TestHttp2Section_6_9 extends Http2TestBase {
         sendSimplePostRequest(3,  null,  false);
         sendWindowUpdate(3, 0);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals("3-RST-[" + Http2Error.PROTOCOL_ERROR.getCode() + "]\n",
                 output.getTrace());
@@ -109,9 +109,9 @@ public class TestHttp2Section_6_9 extends Http2TestBase {
         // response at this point
         sendEmptyGetRequest(17);
         // Headers
-        parser.readFrame(true);
+        parser.readFrame();
         // Body
-        parser.readFrame(true);
+        parser.readFrame();
 
         // Release Stream 15 which is waiting for a single byte.
         sendWindowUpdate(0,  1024);
@@ -130,7 +130,7 @@ public class TestHttp2Section_6_9 extends Http2TestBase {
         // Super size the flow control window.
         sendWindowUpdate(3, (1 << 31) - 1);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals("3-RST-[" + Http2Error.FLOW_CONTROL_ERROR.getCode() + "]\n",
                 output.getTrace());
@@ -171,7 +171,7 @@ public class TestHttp2Section_6_9 extends Http2TestBase {
         // window.
         sendSettings(0, false, new SettingValue(4, 4 * 1024));
         // Ack
-        parser.readFrame(true);
+        parser.readFrame();
         Assert.assertEquals("0-Settings-Ack\n", output.getTrace());
         output.clearTrace();
 
@@ -179,8 +179,8 @@ public class TestHttp2Section_6_9 extends Http2TestBase {
         writeFrame(dataFrameHeader, dataPayload);
 
         // Window size updates after reading POST body
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
         Assert.assertEquals(
                 "0-WindowSize-[8192]\n" +
                 "3-WindowSize-[8192]\n",
@@ -188,8 +188,8 @@ public class TestHttp2Section_6_9 extends Http2TestBase {
         output.clearTrace();
 
         // Read stream 3 headers and first part of body
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
         Assert.assertEquals(
                 "3-HeadersStart\n" +
                 "3-Header-[:status]-[200]\n" +
@@ -203,7 +203,7 @@ public class TestHttp2Section_6_9 extends Http2TestBase {
         // control window. This should make the stream 3 window negative
         sendSettings(0, false, new SettingValue(4, 2 * 1024));
         // Ack
-        parser.readFrame(true);
+        parser.readFrame();
         Assert.assertEquals("0-Settings-Ack\n", output.getTrace());
         output.clearTrace();
 
@@ -211,23 +211,23 @@ public class TestHttp2Section_6_9 extends Http2TestBase {
         // window. The stream 3 window should still be negative
         sendSettings(0, false, new SettingValue(4, 3 * 1024));
         // Ack
-        parser.readFrame(true);
+        parser.readFrame();
         Assert.assertEquals("0-Settings-Ack\n", output.getTrace());
         output.clearTrace();
 
         // Do a POST that won't be affected by the above limit
         sendSimplePostRequest(5, null);
         // Window size updates after reading POST body
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
         Assert.assertEquals(
                 "0-WindowSize-[128]\n" +
                 "5-WindowSize-[128]\n",
                 output.getTrace());
         output.clearTrace();
         // Headers + body
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
         Assert.assertEquals(
                 "5-HeadersStart\n" +
                 "5-Header-[:status]-[200]\n" +
@@ -244,7 +244,7 @@ public class TestHttp2Section_6_9 extends Http2TestBase {
 
         // Settings ack and stream 3 body are written from different threads.
         // Order depends on server side timing. Handle both possibilities.
-        parser.readFrame(true);
+        parser.readFrame();
         String trace = output.getTrace();
         String settingsAck = "0-Settings-Ack\n";
         String endOfStreamThree = "3-Body-4096\n3-EndOfStream\n";
@@ -252,13 +252,13 @@ public class TestHttp2Section_6_9 extends Http2TestBase {
         if (settingsAck.equals(trace)) {
             // Ack the end of stream 3
             output.clearTrace();
-            parser.readFrame(true);
+            parser.readFrame();
             Assert.assertEquals(endOfStreamThree, output.getTrace());
         } else {
             // End of stream 3 thenack
             Assert.assertEquals(endOfStreamThree, output.getTrace());
             output.clearTrace();
-            parser.readFrame(true);
+            parser.readFrame();
             Assert.assertEquals(settingsAck, output.getTrace());
         }
         output.clearTrace();
@@ -278,7 +278,7 @@ public class TestHttp2Section_6_9 extends Http2TestBase {
         // Now increase beyond the limit via a settings frame
         sendSettings(0, false, new SettingValue(4,  1 << 30));
         // Ack
-        parser.readFrame(true);
+        parser.readFrame();
         Assert.assertEquals("3-RST-[" + Http2Error.FLOW_CONTROL_ERROR.getCode() + "]\n",
                 output.getTrace());
 
diff --git a/test/org/apache/coyote/http2/TestHttp2Section_8_1.java b/test/org/apache/coyote/http2/TestHttp2Section_8_1.java
index 981bf20c5b..8e22bb3429 100644
--- a/test/org/apache/coyote/http2/TestHttp2Section_8_1.java
+++ b/test/org/apache/coyote/http2/TestHttp2Section_8_1.java
@@ -75,10 +75,10 @@ public class TestHttp2Section_8_1 extends Http2TestBase {
         // Trailers
         writeFrame(trailerFrameHeader, trailerPayload);
 
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
 
         String len;
         if (allowTrailerHeader) {
@@ -155,7 +155,7 @@ public class TestHttp2Section_8_1 extends Http2TestBase {
         // Write the headers
         writeFrame(headersFrameHeader, headersPayload);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals("3-HeadersStart\n" +
                 "3-Header-[:status]-[100]\n" +
@@ -166,10 +166,10 @@ public class TestHttp2Section_8_1 extends Http2TestBase {
         // Write the body
         writeFrame(dataFrameHeader, dataPayload);
 
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
 
         Assert.assertEquals("0-WindowSize-[256]\n" +
                 "3-WindowSize-[256]\n" +
@@ -243,7 +243,7 @@ public class TestHttp2Section_8_1 extends Http2TestBase {
         writeFrame(headersFrameHeader, headersPayload);
 
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals("3-RST-[1]\n", output.getTrace());
     }
@@ -266,7 +266,7 @@ public class TestHttp2Section_8_1 extends Http2TestBase {
 
         writeFrame(headersFrameHeader, headersPayload);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         String trace = output.getTrace();
         Assert.assertTrue(trace, trace.contains("3-Header-[:status]-[200]"));
@@ -291,7 +291,7 @@ public class TestHttp2Section_8_1 extends Http2TestBase {
 
         writeFrame(headersFrameHeader, headersPayload);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         String trace = output.getTrace();
         Assert.assertTrue(trace, trace.contains("0-Goaway-[1]-[9]"));
@@ -316,7 +316,7 @@ public class TestHttp2Section_8_1 extends Http2TestBase {
 
         writeFrame(headersFrameHeader, headersPayload);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         String trace = output.getTrace();
         Assert.assertTrue(trace, trace.contains("3-Header-[:status]-[200]"));
@@ -341,7 +341,7 @@ public class TestHttp2Section_8_1 extends Http2TestBase {
 
         writeFrame(headersFrameHeader, headersPayload);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         String trace = output.getTrace();
         Assert.assertTrue(trace, trace.contains("3-Header-[:status]-[200]"));
@@ -403,7 +403,7 @@ public class TestHttp2Section_8_1 extends Http2TestBase {
 
         writeFrame(headersFrameHeader, headersPayload);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         String trace = output.getTrace();
         Assert.assertTrue(trace, trace.contains("0-Goaway-[1]-[9]"));
@@ -419,7 +419,7 @@ public class TestHttp2Section_8_1 extends Http2TestBase {
         // Write the headers
         writeFrame(headersFrameHeader, headersPayload);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals("3-RST-[1]\n", output.getTrace());
     }
diff --git a/test/org/apache/coyote/http2/TestHttp2Timeouts.java b/test/org/apache/coyote/http2/TestHttp2Timeouts.java
index f3179c9f53..3768b5888e 100644
--- a/test/org/apache/coyote/http2/TestHttp2Timeouts.java
+++ b/test/org/apache/coyote/http2/TestHttp2Timeouts.java
@@ -39,13 +39,13 @@ public class TestHttp2Timeouts extends Http2TestBase {
         sendSimpleGetRequest(3);
 
         // Settings
-        parser.readFrame(false);
+        parser.readFrame();
         // Headers
-        parser.readFrame(false);
+        parser.readFrame();
 
         output.clearTrace();
 
-        parser.readFrame(false);
+        parser.readFrame();
         Assert.assertEquals("3-RST-[11]\n", output.getTrace());
     }
 
@@ -61,13 +61,13 @@ public class TestHttp2Timeouts extends Http2TestBase {
         sendLargeGetRequest(3);
 
         // Settings
-        parser.readFrame(false);
+        parser.readFrame();
         // Headers
-        parser.readFrame(false);
+        parser.readFrame();
 
         output.clearTrace();
 
-        parser.readFrame(false);
+        parser.readFrame();
         Assert.assertEquals("3-RST-[11]\n", output.getTrace());
     }
 
@@ -80,10 +80,10 @@ public class TestHttp2Timeouts extends Http2TestBase {
         sendSimplePostRequest(3,  null,  false);
 
         // Headers
-        parser.readFrame(false);
+        parser.readFrame();
         output.clearTrace();
 
-        parser.readFrame(false);
+        parser.readFrame();
 
         Assert.assertEquals("3-RST-[11]\n", output.getTrace());
     }
@@ -97,10 +97,10 @@ public class TestHttp2Timeouts extends Http2TestBase {
         sendParameterPostRequest(3, null, null, 10, false);
 
         // Headers
-        parser.readFrame(false);
+        parser.readFrame();
         output.clearTrace();
 
-        parser.readFrame(false);
+        parser.readFrame();
 
         Assert.assertEquals("3-RST-[11]\n", output.getTrace());
     }
diff --git a/test/org/apache/coyote/http2/TestHttp2UpgradeHandler.java b/test/org/apache/coyote/http2/TestHttp2UpgradeHandler.java
index e818205b2d..f96895980a 100644
--- a/test/org/apache/coyote/http2/TestHttp2UpgradeHandler.java
+++ b/test/org/apache/coyote/http2/TestHttp2UpgradeHandler.java
@@ -53,10 +53,10 @@ public class TestHttp2UpgradeHandler extends Http2TestBase {
         writeFrame(frameHeader, headersPayload);
 
         // Headers
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
         // Body
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals(
                 "3-HeadersStart\n" +
@@ -165,11 +165,11 @@ public class TestHttp2UpgradeHandler extends Http2TestBase {
             // - ping
             // - headers (for response)
             // - data (for response body)
-            parser.readFrame(true);
-            parser.readFrame(true);
-            parser.readFrame(true);
-            parser.readFrame(true);
-            parser.readFrame(true);
+            parser.readFrame();
+            parser.readFrame();
+            parser.readFrame();
+            parser.readFrame();
+            parser.readFrame();
 
             Assert.assertEquals("0-Settings-[3]-[200]\n" +
                     "0-Settings-End\n" +
diff --git a/test/org/apache/coyote/http2/TestHttpServlet.java b/test/org/apache/coyote/http2/TestHttpServlet.java
index cb98abd23a..de3749cd48 100644
--- a/test/org/apache/coyote/http2/TestHttpServlet.java
+++ b/test/org/apache/coyote/http2/TestHttpServlet.java
@@ -45,8 +45,8 @@ public class TestHttpServlet extends Http2TestBase {
         // Body
         writeFrame(dataFrameHeader, dataPayload);
 
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
 
         String trace = output.getTrace();
         String[] lines = trace.split("\n");
diff --git a/test/org/apache/coyote/http2/TestStream.java b/test/org/apache/coyote/http2/TestStream.java
index e34788395e..6cdb581d58 100644
--- a/test/org/apache/coyote/http2/TestStream.java
+++ b/test/org/apache/coyote/http2/TestStream.java
@@ -104,11 +104,11 @@ public class TestStream extends Http2TestBase {
         writeFrame(frameHeader, headersPayload);
 
         // Headers
-        parser.readFrame(true);
+        parser.readFrame();
         // Body
-        parser.readFrame(true);
+        parser.readFrame();
         // Trailers
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals(
                 "3-HeadersStart\n" +
diff --git a/test/org/apache/coyote/http2/TestStreamProcessor.java b/test/org/apache/coyote/http2/TestStreamProcessor.java
index b7480ed22f..8516d98f22 100644
--- a/test/org/apache/coyote/http2/TestStreamProcessor.java
+++ b/test/org/apache/coyote/http2/TestStreamProcessor.java
@@ -72,7 +72,7 @@ public class TestStreamProcessor extends Http2TestBase {
         readSimpleGetResponse();
         // Flush before startAsync means body is written in two packets so an
         // additional frame needs to be read
-        parser.readFrame(true);
+        parser.readFrame();
 
         Assert.assertEquals(
                 "3-HeadersStart\n" +
@@ -151,7 +151,7 @@ public class TestStreamProcessor extends Http2TestBase {
 
         writeFrame(frameHeader, headersPayload);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         StringBuilder expected = new StringBuilder();
         expected.append("3-HeadersStart\n");
@@ -201,7 +201,7 @@ public class TestStreamProcessor extends Http2TestBase {
 
         writeFrame(frameHeader, headersPayload);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         StringBuilder expected = new StringBuilder();
         expected.append("3-HeadersStart\n");
@@ -246,7 +246,7 @@ public class TestStreamProcessor extends Http2TestBase {
 
         writeFrame(frameHeader, headersPayload);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         StringBuilder expected = new StringBuilder();
         expected.append("3-HeadersStart\n");
@@ -290,7 +290,7 @@ public class TestStreamProcessor extends Http2TestBase {
 
         writeFrame(frameHeader, headersPayload);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         StringBuilder expected = new StringBuilder();
         expected.append("3-HeadersStart\n");
@@ -334,7 +334,7 @@ public class TestStreamProcessor extends Http2TestBase {
 
         writeFrame(frameHeader, headersPayload);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         StringBuilder expected = new StringBuilder();
         expected.append("3-HeadersStart\n");
@@ -380,7 +380,7 @@ public class TestStreamProcessor extends Http2TestBase {
 
         writeFrame(frameHeader, headersPayload);
 
-        parser.readFrame(true);
+        parser.readFrame();
 
         StringBuilder expected = new StringBuilder();
         expected.append("3-HeadersStart\n");
diff --git a/test/org/apache/coyote/http2/TestStreamQueryString.java b/test/org/apache/coyote/http2/TestStreamQueryString.java
index 154231b4e2..0997717f6d 100644
--- a/test/org/apache/coyote/http2/TestStreamQueryString.java
+++ b/test/org/apache/coyote/http2/TestStreamQueryString.java
@@ -131,11 +131,11 @@ public class TestStreamQueryString extends Http2TestBase {
         // - ping
         // - headers (for response)
         // - data (for response body)
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
-        parser.readFrame(true);
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
+        parser.readFrame();
 
         Assert.assertEquals("0-Settings-[3]-[200]\n" +
                 "0-Settings-End\n" +
diff --git a/test/org/apache/coyote/http2/TesterHttp2Parser.java b/test/org/apache/coyote/http2/TesterHttp2Parser.java
index 6cc41fd289..ee0a4b3b1d 100644
--- a/test/org/apache/coyote/http2/TesterHttp2Parser.java
+++ b/test/org/apache/coyote/http2/TesterHttp2Parser.java
@@ -33,9 +33,16 @@ public class TesterHttp2Parser extends Http2Parser {
         this.output = output;
     }
 
+
+    /**
+     * {@inheritDoc}
+     * <p>
+     * <b>Note:</b> The test implementation always uses blocking IO for both the
+     * initial read and the remainder.
+     */
     @Override
-    public boolean readFrame(boolean block) throws Http2Exception, IOException {
-        return super.readFrame(block);
+    public boolean readFrame() throws Http2Exception, IOException {
+        return super.readFrame();
     }
 
     @Override


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org