bootstrapEnv() — netty Function Reference
Architecture documentation for the bootstrapEnv() function in HttpToHttp2ConnectionHandlerTest.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 5a522eb6_40fe_3d12_39a2_24e8e6f43e87["bootstrapEnv()"] 919b1457_fbee_0bc0_c865_945a03b794b1["HttpToHttp2ConnectionHandlerTest"] 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 -->|defined in| 919b1457_fbee_0bc0_c865_945a03b794b1 25dbed58_6b69_23fc_d9b3_83b2d641af5d["testHeadersOnlyRequest()"] 25dbed58_6b69_23fc_d9b3_83b2d641af5d -->|calls| 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 b0106071_5ccc_2b5d_11aa_229497752d8c["testHttpScheme()"] b0106071_5ccc_2b5d_11aa_229497752d8c -->|calls| 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 4b85bea8_5c45_9402_a50d_d9e50274050a["testMultipleCookieEntriesAreCombined()"] 4b85bea8_5c45_9402_a50d_d9e50274050a -->|calls| 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 c23addaa_171e_1ace_be6c_f8b935230605["testOriginFormRequestTargetHandled()"] c23addaa_171e_1ace_be6c_f8b935230605 -->|calls| 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 54c9c87b_049d_4e23_9476_261446971e72["testOriginFormRequestTargetHandledFromUrlencodedUri()"] 54c9c87b_049d_4e23_9476_261446971e72 -->|calls| 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 9e1c4593_e0d9_2ad6_6a7e_6e59d9abd1e2["testAbsoluteFormRequestTargetHandledFromHeaders()"] 9e1c4593_e0d9_2ad6_6a7e_6e59d9abd1e2 -->|calls| 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 a4b14f26_3f5c_ba17_8613_0065fd79c112["testAbsoluteFormRequestTargetHandledFromRequestTargetUri()"] a4b14f26_3f5c_ba17_8613_0065fd79c112 -->|calls| 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 150b267e_aca7_3070_61a7_b0ee5348a2c9["testAuthorityFormRequestTargetHandled()"] 150b267e_aca7_3070_61a7_b0ee5348a2c9 -->|calls| 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 8f6064c6_4f05_4154_bdc2_e64995a59941["testAsterikFormRequestTargetHandled()"] 8f6064c6_4f05_4154_bdc2_e64995a59941 -->|calls| 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 19ff78d4_0335_44db_ea95_053ec800c254["testHostIPv6FormRequestTargetHandled()"] 19ff78d4_0335_44db_ea95_053ec800c254 -->|calls| 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 9ed631d3_d8d0_e3f2_cd8e_908e2db84777["testHostFormRequestTargetHandled()"] 9ed631d3_d8d0_e3f2_cd8e_908e2db84777 -->|calls| 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 5c87f7cb_c94f_1197_731b_e756d228e410["testHostIPv4FormRequestTargetHandled()"] 5c87f7cb_c94f_1197_731b_e756d228e410 -->|calls| 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 4c64324c_efb7_2704_7876_de980dcb54cf["testNoSchemeRequestTargetHandled()"] 4c64324c_efb7_2704_7876_de980dcb54cf -->|calls| 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 style 5a522eb6_40fe_3d12_39a2_24e8e6f43e87 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
codec-http2/src/test/java/io/netty/handler/codec/http2/HttpToHttp2ConnectionHandlerTest.java lines 551–610
private void bootstrapEnv(int requestCountDown, int serverSettingsAckCount, int trailersCount) throws Exception {
final CountDownLatch prefaceWrittenLatch = new CountDownLatch(1);
final CountDownLatch serverChannelLatch = new CountDownLatch(1);
requestLatch = new CountDownLatch(requestCountDown);
serverSettingsAckLatch = new CountDownLatch(serverSettingsAckCount);
trailersLatch = trailersCount == 0 ? null : new CountDownLatch(trailersCount);
sb = new ServerBootstrap();
cb = new Bootstrap();
sb.group(new MultiThreadIoEventLoopGroup(LocalIoHandler.newFactory()));
sb.channel(LocalServerChannel.class);
sb.childHandler(new ChannelInitializer<Channel>() {
@Override
protected void initChannel(Channel ch) throws Exception {
serverConnectedChannel = ch;
ChannelPipeline p = ch.pipeline();
serverFrameCountDown =
new FrameCountDown(serverListener, serverSettingsAckLatch, requestLatch, null, trailersLatch);
p.addLast(new HttpToHttp2ConnectionHandlerBuilder()
.server(true)
.frameListener(serverFrameCountDown)
.httpScheme(HttpScheme.HTTP)
.build());
serverChannelLatch.countDown();
}
});
cb.group(new MultiThreadIoEventLoopGroup(LocalIoHandler.newFactory()));
cb.channel(LocalChannel.class);
cb.handler(new ChannelInitializer<Channel>() {
@Override
protected void initChannel(Channel ch) throws Exception {
ChannelPipeline p = ch.pipeline();
HttpToHttp2ConnectionHandler handler = new HttpToHttp2ConnectionHandlerBuilder()
.server(false)
.frameListener(clientListener)
.gracefulShutdownTimeoutMillis(0)
.build();
p.addLast(handler);
p.addLast(new ChannelInboundHandlerAdapter() {
@Override
public void userEventTriggered(ChannelHandlerContext ctx, Object evt) throws Exception {
if (evt == Http2ConnectionPrefaceAndSettingsFrameWrittenEvent.INSTANCE) {
prefaceWrittenLatch.countDown();
ctx.pipeline().remove(this);
}
}
});
}
});
serverChannel = sb.bind(new LocalAddress(getClass())).sync().channel();
ChannelFuture ccf = cb.connect(serverChannel.localAddress());
assertTrue(ccf.awaitUninterruptibly().isSuccess());
clientChannel = ccf.channel();
assertTrue(prefaceWrittenLatch.await(5, SECONDS));
assertTrue(serverChannelLatch.await(WAIT_TIME_SECONDS, SECONDS));
}
Domain
Subdomains
Defined In
Called By
- testAbsoluteFormRequestTargetHandledFromHeaders()
- testAbsoluteFormRequestTargetHandledFromRequestTargetUri()
- testAsterikFormRequestTargetHandled()
- testAuthorityFormRequestTargetHandled()
- testChunkedRequestWithBodyAndTrailingHeaders()
- testHeadersOnlyRequest()
- testHostFormRequestTargetHandled()
- testHostIPv4FormRequestTargetHandled()
- testHostIPv6FormRequestTargetHandled()
- testHttpScheme()
- testInvalidStreamId()
- testMultipleCookieEntriesAreCombined()
- testNoSchemeRequestTargetHandled()
- testOriginFormRequestTargetHandled()
- testOriginFormRequestTargetHandledFromUrlencodedUri()
- testRequestWithBody()
- testRequestWithBodyAndTrailingHeaders()
Source
Frequently Asked Questions
What does bootstrapEnv() do?
bootstrapEnv() is a function in the netty codebase, defined in codec-http2/src/test/java/io/netty/handler/codec/http2/HttpToHttp2ConnectionHandlerTest.java.
Where is bootstrapEnv() defined?
bootstrapEnv() is defined in codec-http2/src/test/java/io/netty/handler/codec/http2/HttpToHttp2ConnectionHandlerTest.java at line 551.
What calls bootstrapEnv()?
bootstrapEnv() is called by 17 function(s): testAbsoluteFormRequestTargetHandledFromHeaders, testAbsoluteFormRequestTargetHandledFromRequestTargetUri, testAsterikFormRequestTargetHandled, testAuthorityFormRequestTargetHandled, testChunkedRequestWithBodyAndTrailingHeaders, testHeadersOnlyRequest, testHostFormRequestTargetHandled, testHostIPv4FormRequestTargetHandled, and 9 more.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free