@UnstableApi @ChannelHandler.Sharable public class DatagramDnsResponseDecoder extends MessageToMessageDecoder<DatagramPacket>
DatagramPacket
into a DatagramDnsResponse
.ChannelHandler.Sharable
Modifier and Type | Field and Description |
---|---|
private DnsRecordDecoder |
recordDecoder |
Constructor and Description |
---|
DatagramDnsResponseDecoder()
Creates a new decoder with the default record decoder.
|
DatagramDnsResponseDecoder(DnsRecordDecoder recordDecoder)
Creates a new decoder with the specified
recordDecoder . |
Modifier and Type | Method and Description |
---|---|
protected void |
decode(ChannelHandlerContext ctx,
DatagramPacket packet,
java.util.List<java.lang.Object> out)
Decode from one message to an other.
|
private void |
decodeQuestions(DnsResponse response,
ByteBuf buf,
int questionCount) |
private void |
decodeRecords(DnsResponse response,
DnsSection section,
ByteBuf buf,
int count) |
private static DnsResponse |
newResponse(DatagramPacket packet,
ByteBuf buf) |
acceptInboundMessage, channelRead
channelActive, channelInactive, channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaught, userEventTriggered
ensureNotSharable, handlerAdded, handlerRemoved, isSharable
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
handlerAdded, handlerRemoved
private final DnsRecordDecoder recordDecoder
public DatagramDnsResponseDecoder()
public DatagramDnsResponseDecoder(DnsRecordDecoder recordDecoder)
recordDecoder
.protected void decode(ChannelHandlerContext ctx, DatagramPacket packet, java.util.List<java.lang.Object> out) throws java.lang.Exception
MessageToMessageDecoder
decode
in class MessageToMessageDecoder<DatagramPacket>
ctx
- the ChannelHandlerContext
which this MessageToMessageDecoder
belongs topacket
- the message to decode to an other oneout
- the List
to which decoded messages should be addedjava.lang.Exception
- is thrown if an error occursprivate static DnsResponse newResponse(DatagramPacket packet, ByteBuf buf)
private void decodeQuestions(DnsResponse response, ByteBuf buf, int questionCount) throws java.lang.Exception
java.lang.Exception
private void decodeRecords(DnsResponse response, DnsSection section, ByteBuf buf, int count) throws java.lang.Exception
java.lang.Exception