Home / Function/ testPromiseCorrectExecutor() — netty Function Reference

testPromiseCorrectExecutor() — netty Function Reference

Architecture documentation for the testPromiseCorrectExecutor() function in DefaultChannelPipelineTest.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  8602c868_3baa_e506_f888_d8151c0e7636["testPromiseCorrectExecutor()"]
  666d912b_4166_a807_ed10_ba12f328a7b2["DefaultChannelPipelineTest"]
  8602c868_3baa_e506_f888_d8151c0e7636 -->|defined in| 666d912b_4166_a807_ed10_ba12f328a7b2
  974b0d9b_b7be_340c_fc7a_5c63cdb7f612["inEventLoop()"]
  8602c868_3baa_e506_f888_d8151c0e7636 -->|calls| 974b0d9b_b7be_340c_fc7a_5c63cdb7f612
  19bd3906_4c8c_ae23_6c05_b7a84d367379["shutdownGracefully()"]
  8602c868_3baa_e506_f888_d8151c0e7636 -->|calls| 19bd3906_4c8c_ae23_6c05_b7a84d367379
  c5b1de85_d95d_3c1e_9030_4dd9d2b98ecf["bind()"]
  8602c868_3baa_e506_f888_d8151c0e7636 -->|calls| c5b1de85_d95d_3c1e_9030_4dd9d2b98ecf
  9f770434_3932_8df1_2654_cf441ae70b32["connect()"]
  8602c868_3baa_e506_f888_d8151c0e7636 -->|calls| 9f770434_3932_8df1_2654_cf441ae70b32
  65a8d695_94c6_e275_0d34_a046833cb923["disconnect()"]
  8602c868_3baa_e506_f888_d8151c0e7636 -->|calls| 65a8d695_94c6_e275_0d34_a046833cb923
  0734e696_bf2a_45af_707c_9731756d1f7d["close()"]
  8602c868_3baa_e506_f888_d8151c0e7636 -->|calls| 0734e696_bf2a_45af_707c_9731756d1f7d
  2a755a4a_592b_4884_97d8_3106d317dca2["deregister()"]
  8602c868_3baa_e506_f888_d8151c0e7636 -->|calls| 2a755a4a_592b_4884_97d8_3106d317dca2
  1bb1c1cc_77dd_d360_5aff_fec13914d331["write()"]
  8602c868_3baa_e506_f888_d8151c0e7636 -->|calls| 1bb1c1cc_77dd_d360_5aff_fec13914d331
  style 8602c868_3baa_e506_f888_d8151c0e7636 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

transport/src/test/java/io/netty/channel/DefaultChannelPipelineTest.java lines 921–1037

    @Test
    public void testPromiseCorrectExecutor() throws Exception {
        final ChannelPipeline pipeline = new LocalChannel().pipeline();
        final BlockingQueue<Boolean> queue = new ArrayBlockingQueue<Boolean>(6);
        EventExecutor executor = new DefaultEventExecutor();
        try {
            pipeline.addLast(new ChannelOutboundHandlerAdapter() {
                @Override
                public void bind(ChannelHandlerContext ctx, SocketAddress localAddress, ChannelPromise promise) {
                    promise.setSuccess();
                }

                @Override
                public void connect(ChannelHandlerContext ctx, SocketAddress remoteAddress,
                                    SocketAddress localAddress, ChannelPromise promise) {
                    promise.setSuccess();
                }

                @Override
                public void disconnect(ChannelHandlerContext ctx, ChannelPromise promise) {
                    promise.setSuccess();
                }

                @Override
                public void close(ChannelHandlerContext ctx, ChannelPromise promise) {
                    promise.setSuccess();
                }

                @Override
                public void deregister(ChannelHandlerContext ctx, ChannelPromise promise) {
                    promise.setSuccess();
                }

                @Override
                public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) {
                    promise.setSuccess();
                }
            }, new ChannelOutboundHandlerAdapter() {

                ChannelFutureListener listener;

                @Override
                public void handlerAdded(ChannelHandlerContext ctx) {
                    listener = f -> {
                        queue.add(ctx.executor().inEventLoop());
                    };
                }

                @Override
                public void bind(ChannelHandlerContext ctx, SocketAddress localAddress, ChannelPromise promise) {
                    ctx.bind(localAddress, promise.addListener(listener));
                }

                @Override
                public void connect(ChannelHandlerContext ctx, SocketAddress remoteAddress,
                                    SocketAddress localAddress, ChannelPromise promise) {
                    ctx.connect(remoteAddress, localAddress, promise.addListener(listener));
                }

                @Override
                public void disconnect(ChannelHandlerContext ctx, ChannelPromise promise) {
                    ctx.disconnect(promise.addListener(listener));
                }

                @Override
                public void close(ChannelHandlerContext ctx, ChannelPromise promise) {
                    ctx.close(promise.addListener(listener));
                }

                @Override
                public void deregister(ChannelHandlerContext ctx, ChannelPromise promise) {
                    ctx.deregister(promise.addListener(listener));
                }

                @Override
                public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) {
                    ctx.write(msg, promise.addListener(listener));
                }
            });
            group.register(pipeline.channel()).sync();

Domain

Subdomains

Frequently Asked Questions

What does testPromiseCorrectExecutor() do?
testPromiseCorrectExecutor() is a function in the netty codebase, defined in transport/src/test/java/io/netty/channel/DefaultChannelPipelineTest.java.
Where is testPromiseCorrectExecutor() defined?
testPromiseCorrectExecutor() is defined in transport/src/test/java/io/netty/channel/DefaultChannelPipelineTest.java at line 921.
What does testPromiseCorrectExecutor() call?
testPromiseCorrectExecutor() calls 8 function(s): bind, close, connect, deregister, disconnect, inEventLoop, shutdownGracefully, write.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free