Home / Class/ TestServerHandler Class — netty Architecture

TestServerHandler Class — netty Architecture

Architecture documentation for the TestServerHandler class in SocketGatheringWriteTest.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  e3c4dde5_447e_94d7_1383_bf7cde04bd1e["TestServerHandler"]
  41c5cef7_c62b_3a8b_889d_709938bf272c["SocketGatheringWriteTest.java"]
  e3c4dde5_447e_94d7_1383_bf7cde04bd1e -->|defined in| 41c5cef7_c62b_3a8b_889d_709938bf272c
  a715d895_e6a6_b7f6_71fb_02f657d5cc9f["TestServerHandler()"]
  e3c4dde5_447e_94d7_1383_bf7cde04bd1e -->|method| a715d895_e6a6_b7f6_71fb_02f657d5cc9f
  44361660_3b64_62b3_fd02_3596fff13e57["channelRead0()"]
  e3c4dde5_447e_94d7_1383_bf7cde04bd1e -->|method| 44361660_3b64_62b3_fd02_3596fff13e57
  f192175e_0d79_8a59_dd88_a17ccd3cceee["handleException()"]
  e3c4dde5_447e_94d7_1383_bf7cde04bd1e -->|method| f192175e_0d79_8a59_dd88_a17ccd3cceee
  491d6fc1_a742_1bd0_8c7a_76fd2afeac6b["channelInactive()"]
  e3c4dde5_447e_94d7_1383_bf7cde04bd1e -->|method| 491d6fc1_a742_1bd0_8c7a_76fd2afeac6b

Relationship Graph

Source Code

testsuite/src/main/java/io/netty/testsuite/transport/socket/SocketGatheringWriteTest.java lines 207–237

    private static final class TestServerHandler extends TestHandler {
        private final int expectedBytes;
        private final Promise<Void> doneReadingPromise;
        final ByteBuf received = Unpooled.buffer();

        TestServerHandler(boolean autoRead, Promise<Void> doneReadingPromise, int expectedBytes) {
            super(autoRead);
            this.doneReadingPromise = doneReadingPromise;
            this.expectedBytes = expectedBytes;
        }

        @Override
        public void channelRead0(ChannelHandlerContext ctx, ByteBuf in) throws Exception {
            received.writeBytes(in);
            if (received.readableBytes() >= expectedBytes) {
                doneReadingPromise.setSuccess(null);
            }
        }

        @Override
        void handleException(ChannelHandlerContext ctx, Throwable cause) {
            doneReadingPromise.tryFailure(cause);
            super.handleException(ctx, cause);
        }

        @Override
        public void channelInactive(ChannelHandlerContext ctx) throws Exception {
            doneReadingPromise.tryFailure(new IllegalStateException("server closed!"));
            super.channelInactive(ctx);
        }
    }

Frequently Asked Questions

What is the TestServerHandler class?
TestServerHandler is a class in the netty codebase, defined in testsuite/src/main/java/io/netty/testsuite/transport/socket/SocketGatheringWriteTest.java.
Where is TestServerHandler defined?
TestServerHandler is defined in testsuite/src/main/java/io/netty/testsuite/transport/socket/SocketGatheringWriteTest.java at line 207.

Analyze Your Own Codebase

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

Try Supermodel Free