Home / Class/ KQueueDomainDatagramUnicastTest Class — netty Architecture

KQueueDomainDatagramUnicastTest Class — netty Architecture

Architecture documentation for the KQueueDomainDatagramUnicastTest class in KQueueDomainDatagramUnicastTest.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  9d868f0f_1fff_ae59_a7c4_27d4f8eceb87["KQueueDomainDatagramUnicastTest"]
  4c741537_e48f_d972_9271_1a2a3d8df1ba["KQueueDomainDatagramUnicastTest.java"]
  9d868f0f_1fff_ae59_a7c4_27d4f8eceb87 -->|defined in| 4c741537_e48f_d972_9271_1a2a3d8df1ba
  fa054728_8cd8_6864_50fc_c272384085c7["testBind()"]
  9d868f0f_1fff_ae59_a7c4_27d4f8eceb87 -->|method| fa054728_8cd8_6864_50fc_c272384085c7
  2280edb4_4450_0b01_5c36_b87e2ac1d9e7["supportDisconnect()"]
  9d868f0f_1fff_ae59_a7c4_27d4f8eceb87 -->|method| 2280edb4_4450_0b01_5c36_b87e2ac1d9e7
  1488d206_eafc_4cb3_24ca_80637af29361["isConnected()"]
  9d868f0f_1fff_ae59_a7c4_27d4f8eceb87 -->|method| 1488d206_eafc_4cb3_24ca_80637af29361
  c6ec63d6_a400_128c_467b_954040d8b4a9["newFactories()"]
  9d868f0f_1fff_ae59_a7c4_27d4f8eceb87 -->|method| c6ec63d6_a400_128c_467b_954040d8b4a9
  23c1e20c_10ba_02bd_0d6a_cd042cd1b3c2["SocketAddress()"]
  9d868f0f_1fff_ae59_a7c4_27d4f8eceb87 -->|method| 23c1e20c_10ba_02bd_0d6a_cd042cd1b3c2
  f4029072_fcbb_7c81_4acf_73218c1bc0db["Channel()"]
  9d868f0f_1fff_ae59_a7c4_27d4f8eceb87 -->|method| f4029072_fcbb_7c81_4acf_73218c1bc0db
  7d5c715a_262e_7a17_5bae_8f7193054e53["ChannelFuture()"]
  9d868f0f_1fff_ae59_a7c4_27d4f8eceb87 -->|method| 7d5c715a_262e_7a17_5bae_8f7193054e53

Relationship Graph

Source Code

transport-native-kqueue/src/test/java/io/netty/channel/kqueue/KQueueDomainDatagramUnicastTest.java lines 42–168

class KQueueDomainDatagramUnicastTest extends DatagramUnicastTest {

    @Test
    void testBind(TestInfo testInfo) throws Throwable {
        run(testInfo, new Runner<Bootstrap, Bootstrap>() {
            @Override
            public void run(Bootstrap bootstrap, Bootstrap bootstrap2) throws Throwable {
                testBind(bootstrap2);
            }
        });
    }

    private void testBind(Bootstrap cb) throws Throwable {
        Channel channel = null;
        try {
            channel = cb.handler(new ChannelInboundHandlerAdapter())
                        .bind(newSocketAddress()).sync().channel();
            assertThat(channel.localAddress()).isNotNull()
                    .isInstanceOf(DomainSocketAddress.class);
        } finally {
            closeChannel(channel);
        }
    }

    @Override
    protected boolean supportDisconnect() {
        return false;
    }

    @Override
    protected boolean isConnected(Channel channel) {
        return ((DomainDatagramChannel) channel).isConnected();
    }

    @Override
    protected List<TestsuitePermutation.BootstrapComboFactory<Bootstrap, Bootstrap>> newFactories() {
        return KQueueSocketTestPermutation.INSTANCE.domainDatagram();
    }

    @Override
    protected SocketAddress newSocketAddress() {
        return KQueueSocketTestPermutation.newSocketAddress();
    }

    @Override
    protected Channel setupClientChannel(Bootstrap cb, final byte[] bytes, final CountDownLatch latch,
                                         final AtomicReference<Throwable> errorRef) throws Throwable {
        cb.handler(new SimpleChannelInboundHandler<DomainDatagramPacket>() {

            @Override
            public void channelRead0(ChannelHandlerContext ctx, DomainDatagramPacket msg) {
                try {
                    ByteBuf buf = msg.content();
                    assertEquals(bytes.length, buf.readableBytes());
                    for (int i = 0; i < bytes.length; i++) {
                        assertEquals(bytes[i], buf.getByte(buf.readerIndex() + i));
                    }

                    assertEquals(ctx.channel().localAddress(), msg.recipient());
                } finally {
                    latch.countDown();
                }
            }

            @Override
            public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) {
                errorRef.compareAndSet(null, cause);
            }
        });
        return cb.bind(newSocketAddress()).sync().channel();
    }

    @Override
    protected Channel setupServerChannel(Bootstrap sb, final byte[] bytes, final SocketAddress sender,
                                         final CountDownLatch latch, final AtomicReference<Throwable> errorRef,
                                         final boolean echo) throws Throwable {
        sb.handler(new SimpleChannelInboundHandler<DomainDatagramPacket>() {

            @Override
            public void channelRead0(ChannelHandlerContext ctx, DomainDatagramPacket msg) {
                try {

Frequently Asked Questions

What is the KQueueDomainDatagramUnicastTest class?
KQueueDomainDatagramUnicastTest is a class in the netty codebase, defined in transport-native-kqueue/src/test/java/io/netty/channel/kqueue/KQueueDomainDatagramUnicastTest.java.
Where is KQueueDomainDatagramUnicastTest defined?
KQueueDomainDatagramUnicastTest is defined in transport-native-kqueue/src/test/java/io/netty/channel/kqueue/KQueueDomainDatagramUnicastTest.java at line 42.

Analyze Your Own Codebase

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

Try Supermodel Free