AbstractDnsMessage Class — netty Architecture
Architecture documentation for the AbstractDnsMessage class in AbstractDnsMessage.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD d9ce7b5a_3a9d_b410_1400_d8f33f269e21["AbstractDnsMessage"] f73cbde7_9320_07d7_1d7d_6c02b1569f31["AbstractDnsMessage.java"] d9ce7b5a_3a9d_b410_1400_d8f33f269e21 -->|defined in| f73cbde7_9320_07d7_1d7d_6c02b1569f31 f062b288_7cbe_759a_d39c_b9e3ac77a98c["AbstractDnsMessage()"] d9ce7b5a_3a9d_b410_1400_d8f33f269e21 -->|method| f062b288_7cbe_759a_d39c_b9e3ac77a98c 4f1727fd_86b0_c9af_3e2d_f5464c85a222["id()"] d9ce7b5a_3a9d_b410_1400_d8f33f269e21 -->|method| 4f1727fd_86b0_c9af_3e2d_f5464c85a222 cf59bc5e_842b_08d7_dc64_5a8446e778ed["DnsMessage()"] d9ce7b5a_3a9d_b410_1400_d8f33f269e21 -->|method| cf59bc5e_842b_08d7_dc64_5a8446e778ed a0600d4b_b164_a889_efd6_441e2a62f11b["DnsOpCode()"] d9ce7b5a_3a9d_b410_1400_d8f33f269e21 -->|method| a0600d4b_b164_a889_efd6_441e2a62f11b 4ab15298_89a3_bb85_8535_3b45f81635da["isRecursionDesired()"] d9ce7b5a_3a9d_b410_1400_d8f33f269e21 -->|method| 4ab15298_89a3_bb85_8535_3b45f81635da fc153139_778e_6d31_0546_9ee0e97f02de["z()"] d9ce7b5a_3a9d_b410_1400_d8f33f269e21 -->|method| fc153139_778e_6d31_0546_9ee0e97f02de ab0b52d4_200c_8b45_a2e2_ea9f5c8b40f1["count()"] d9ce7b5a_3a9d_b410_1400_d8f33f269e21 -->|method| ab0b52d4_200c_8b45_a2e2_ea9f5c8b40f1 001734d8_8ee3_1a0c_1c18_41c8907038ca["T()"] d9ce7b5a_3a9d_b410_1400_d8f33f269e21 -->|method| 001734d8_8ee3_1a0c_1c18_41c8907038ca 7558e755_76cf_c28c_e5c5_26ffdd9e605f["setRecord()"] d9ce7b5a_3a9d_b410_1400_d8f33f269e21 -->|method| 7558e755_76cf_c28c_e5c5_26ffdd9e605f 1608476e_fc0e_81d8_a8b5_dcdbf114419b["addRecord()"] d9ce7b5a_3a9d_b410_1400_d8f33f269e21 -->|method| 1608476e_fc0e_81d8_a8b5_dcdbf114419b bef82d38_5cb5_f764_a19a_09846f51a0d8["clear()"] d9ce7b5a_3a9d_b410_1400_d8f33f269e21 -->|method| bef82d38_5cb5_f764_a19a_09846f51a0d8 d8bdf3fd_17d6_953a_7563_07f99bb1c430["deallocate()"] d9ce7b5a_3a9d_b410_1400_d8f33f269e21 -->|method| d8bdf3fd_17d6_953a_7563_07f99bb1c430 d1bd251e_e5b8_5db3_67a8_39ba8a652342["equals()"] d9ce7b5a_3a9d_b410_1400_d8f33f269e21 -->|method| d1bd251e_e5b8_5db3_67a8_39ba8a652342
Relationship Graph
Source Code
codec-dns/src/main/java/io/netty/handler/codec/dns/AbstractDnsMessage.java lines 34–472
public abstract class AbstractDnsMessage extends AbstractReferenceCounted implements DnsMessage {
private static final ResourceLeakDetector<DnsMessage> leakDetector =
ResourceLeakDetectorFactory.instance().newResourceLeakDetector(DnsMessage.class);
private static final int SECTION_QUESTION = DnsSection.QUESTION.ordinal();
private static final int SECTION_COUNT = 4;
private final ResourceLeakTracker<DnsMessage> leak = leakDetector.track(this);
private short id;
private DnsOpCode opCode;
private boolean recursionDesired;
private byte z;
// To reduce the memory footprint of a message,
// each of the following fields is a single record or a list of records.
private Object questions;
private Object answers;
private Object authorities;
private Object additionals;
/**
* Creates a new instance with the specified {@code id} and {@link DnsOpCode#QUERY} opCode.
*/
protected AbstractDnsMessage(int id) {
this(id, DnsOpCode.QUERY);
}
/**
* Creates a new instance with the specified {@code id} and {@code opCode}.
*/
protected AbstractDnsMessage(int id, DnsOpCode opCode) {
setId(id);
setOpCode(opCode);
}
@Override
public int id() {
return id & 0xFFFF;
}
@Override
public DnsMessage setId(int id) {
this.id = (short) id;
return this;
}
@Override
public DnsOpCode opCode() {
return opCode;
}
@Override
public DnsMessage setOpCode(DnsOpCode opCode) {
this.opCode = checkNotNull(opCode, "opCode");
return this;
}
@Override
public boolean isRecursionDesired() {
return recursionDesired;
}
@Override
public DnsMessage setRecursionDesired(boolean recursionDesired) {
this.recursionDesired = recursionDesired;
return this;
}
@Override
public int z() {
return z;
}
@Override
public DnsMessage setZ(int z) {
this.z = (byte) (z & 7);
return this;
}
@Override
Source
Frequently Asked Questions
What is the AbstractDnsMessage class?
AbstractDnsMessage is a class in the netty codebase, defined in codec-dns/src/main/java/io/netty/handler/codec/dns/AbstractDnsMessage.java.
Where is AbstractDnsMessage defined?
AbstractDnsMessage is defined in codec-dns/src/main/java/io/netty/handler/codec/dns/AbstractDnsMessage.java at line 34.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free