Home / Class/ DatagramDnsQueryDecoder Class — netty Architecture

DatagramDnsQueryDecoder Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  f6a8866a_38d6_4302_fe45_682c11d7960d["DatagramDnsQueryDecoder"]
  49143917_66be_67f2_a333_ab7080a86cc1["DatagramDnsQueryDecoder.java"]
  f6a8866a_38d6_4302_fe45_682c11d7960d -->|defined in| 49143917_66be_67f2_a333_ab7080a86cc1
  3305d3f0_26f9_9811_13c0_34e1791145f1["DatagramDnsQueryDecoder()"]
  f6a8866a_38d6_4302_fe45_682c11d7960d -->|method| 3305d3f0_26f9_9811_13c0_34e1791145f1
  652a5fcc_8465_9d10_10bb_a6f0c96b18df["decode()"]
  f6a8866a_38d6_4302_fe45_682c11d7960d -->|method| 652a5fcc_8465_9d10_10bb_a6f0c96b18df

Relationship Graph

Source Code

codec-dns/src/main/java/io/netty/handler/codec/dns/DatagramDnsQueryDecoder.java lines 30–61

@ChannelHandler.Sharable
public class DatagramDnsQueryDecoder extends MessageToMessageDecoder<DatagramPacket> {

    private final DnsRecordDecoder recordDecoder;

    /**
     * Creates a new decoder with {@linkplain DnsRecordDecoder#DEFAULT the default record decoder}.
     */
    public DatagramDnsQueryDecoder() {
        this(DnsRecordDecoder.DEFAULT);
    }

    /**
     * Creates a new decoder with the specified {@code recordDecoder}.
     */
    public DatagramDnsQueryDecoder(DnsRecordDecoder recordDecoder) {
        super(DatagramPacket.class);
        this.recordDecoder = checkNotNull(recordDecoder, "recordDecoder");
    }

    @Override
    protected void decode(ChannelHandlerContext ctx, final DatagramPacket packet, List<Object> out) throws Exception {
        DnsQuery query = DnsMessageUtil.decodeDnsQuery(recordDecoder, packet.content(),
                new DnsMessageUtil.DnsQueryFactory() {
            @Override
            public DnsQuery newQuery(int id, DnsOpCode dnsOpCode) {
                return new DatagramDnsQuery(packet.sender(), packet.recipient(), id, dnsOpCode);
            }
        });
        out.add(query);
    }
}

Frequently Asked Questions

What is the DatagramDnsQueryDecoder class?
DatagramDnsQueryDecoder is a class in the netty codebase, defined in codec-dns/src/main/java/io/netty/handler/codec/dns/DatagramDnsQueryDecoder.java.
Where is DatagramDnsQueryDecoder defined?
DatagramDnsQueryDecoder is defined in codec-dns/src/main/java/io/netty/handler/codec/dns/DatagramDnsQueryDecoder.java at line 30.

Analyze Your Own Codebase

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

Try Supermodel Free