Home / Function/ bootstrapEnv() — netty Function Reference

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

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