testPipelineKeepAlive() — netty Function Reference
Architecture documentation for the testPipelineKeepAlive() function in HttpServerKeepAliveHandlerTest.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD cbd740eb_89cf_330a_c97a_53914a54e207["testPipelineKeepAlive()"] be1dd72c_0689_de7f_2cae_50d18d342f5c["HttpServerKeepAliveHandlerTest"] cbd740eb_89cf_330a_c97a_53914a54e207 -->|defined in| be1dd72c_0689_de7f_2cae_50d18d342f5c 4a65f9df_769d_214b_e196_3b450aa1375b["setupMessageLength()"] cbd740eb_89cf_330a_c97a_53914a54e207 -->|calls| 4a65f9df_769d_214b_e196_3b450aa1375b style cbd740eb_89cf_330a_c97a_53914a54e207 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
codec-http/src/test/java/io/netty/handler/codec/http/HttpServerKeepAliveHandlerTest.java lines 149–213
@ParameterizedTest
@MethodSource("keepAliveProvider")
public void testPipelineKeepAlive(boolean isKeepAliveResponseExpected, HttpVersion httpVersion,
HttpResponseStatus responseStatus,
String sendKeepAlive, int setSelfDefinedMessageLength,
AsciiString setResponseConnection) {
FullHttpRequest firstRequest = new DefaultFullHttpRequest(httpVersion, HttpMethod.GET, "/v1/foo/bar");
setKeepAlive(firstRequest, true);
FullHttpRequest secondRequest = new DefaultFullHttpRequest(httpVersion, HttpMethod.GET, "/v1/foo/bar");
setKeepAlive(secondRequest, REQUEST_KEEP_ALIVE.equals(sendKeepAlive));
FullHttpRequest finalRequest = new DefaultFullHttpRequest(httpVersion, HttpMethod.GET, "/v1/foo/bar");
setKeepAlive(finalRequest, false);
FullHttpResponse response = new DefaultFullHttpResponse(httpVersion, responseStatus);
FullHttpResponse informationalResp = new DefaultFullHttpResponse(httpVersion, HttpResponseStatus.PROCESSING);
setKeepAlive(response, true);
setContentLength(response, 0);
setKeepAlive(informationalResp, true);
assertTrue(channel.writeInbound(firstRequest, secondRequest, finalRequest));
Object requestForwarded = channel.readInbound();
assertEquals(firstRequest, requestForwarded);
ReferenceCountUtil.release(requestForwarded);
channel.writeAndFlush(response.retainedDuplicate());
HttpResponse firstResponse = channel.readOutbound();
assertTrue(channel.isOpen(), "channel.isOpen");
assertTrue(isKeepAlive(firstResponse), "response keep-alive");
ReferenceCountUtil.release(firstResponse);
requestForwarded = channel.readInbound();
assertEquals(secondRequest, requestForwarded);
ReferenceCountUtil.release(requestForwarded);
channel.writeAndFlush(informationalResp);
HttpResponse writtenInfoResp = channel.readOutbound();
assertTrue(channel.isOpen(), "channel.isOpen");
assertTrue(isKeepAlive(writtenInfoResp), "response keep-alive");
ReferenceCountUtil.release(writtenInfoResp);
if (setResponseConnection != null) {
response.headers().set(HttpHeaderNames.CONNECTION, setResponseConnection);
} else {
response.headers().remove(HttpHeaderNames.CONNECTION);
}
setupMessageLength(response, setSelfDefinedMessageLength);
channel.writeAndFlush(response.retainedDuplicate());
HttpResponse secondResponse = channel.readOutbound();
assertEquals(isKeepAliveResponseExpected, channel.isOpen(), "channel.isOpen");
assertEquals(isKeepAliveResponseExpected, isKeepAlive(secondResponse), "response keep-alive");
ReferenceCountUtil.release(secondResponse);
requestForwarded = channel.readInbound();
assertEquals(finalRequest, requestForwarded);
ReferenceCountUtil.release(requestForwarded);
if (isKeepAliveResponseExpected) {
channel.writeAndFlush(response);
HttpResponse finalResponse = channel.readOutbound();
assertFalse(channel.isOpen(), "channel.isOpen");
assertFalse(isKeepAlive(finalResponse), "response keep-alive");
}
ReferenceCountUtil.release(response);
assertFalse(channel.finishAndReleaseAll());
}
Domain
Subdomains
Calls
Source
Frequently Asked Questions
What does testPipelineKeepAlive() do?
testPipelineKeepAlive() is a function in the netty codebase, defined in codec-http/src/test/java/io/netty/handler/codec/http/HttpServerKeepAliveHandlerTest.java.
Where is testPipelineKeepAlive() defined?
testPipelineKeepAlive() is defined in codec-http/src/test/java/io/netty/handler/codec/http/HttpServerKeepAliveHandlerTest.java at line 149.
What does testPipelineKeepAlive() call?
testPipelineKeepAlive() calls 1 function(s): setupMessageLength.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free