Package io.netty.handler.codec.dns
Class DefaultDnsRawRecord
- java.lang.Object
-
- io.netty.handler.codec.dns.AbstractDnsRecord
-
- io.netty.handler.codec.dns.DefaultDnsRawRecord
-
- All Implemented Interfaces:
ByteBufHolder
,DnsRawRecord
,DnsRecord
,ReferenceCounted
public class DefaultDnsRawRecord extends AbstractDnsRecord implements DnsRawRecord
The defaultDnsRawRecord
implementation.
-
-
Field Summary
-
Fields inherited from interface io.netty.handler.codec.dns.DnsRecord
CLASS_ANY, CLASS_CHAOS, CLASS_CSNET, CLASS_HESIOD, CLASS_IN, CLASS_NONE
-
-
Constructor Summary
Constructors Constructor Description DefaultDnsRawRecord(java.lang.String name, DnsRecordType type, int dnsClass, long timeToLive, ByteBuf content)
Creates a new record.DefaultDnsRawRecord(java.lang.String name, DnsRecordType type, long timeToLive, ByteBuf content)
Creates a newIN-class
record.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ByteBuf
content()
Return the data which is held by thisByteBufHolder
.DnsRawRecord
copy()
Creates a deep copy of thisByteBufHolder
.DnsRawRecord
duplicate()
Duplicates thisByteBufHolder
.int
refCnt()
Returns the reference count of this object.boolean
release()
Decreases the reference count by1
and deallocates this object if the reference count reaches at0
.boolean
release(int decrement)
Decreases the reference count by the specifieddecrement
and deallocates this object if the reference count reaches at0
.DnsRawRecord
replace(ByteBuf content)
Returns a newByteBufHolder
which contains the specifiedcontent
.DnsRawRecord
retain()
Increases the reference count by1
.DnsRawRecord
retain(int increment)
Increases the reference count by the specifiedincrement
.DnsRawRecord
retainedDuplicate()
Duplicates thisByteBufHolder
.java.lang.String
toString()
DnsRawRecord
touch()
Records the current access location of this object for debugging purposes.DnsRawRecord
touch(java.lang.Object hint)
Records the current access location of this object with an additional arbitrary information for debugging purposes.-
Methods inherited from class io.netty.handler.codec.dns.AbstractDnsRecord
dnsClass, equals, hashCode, name, timeToLive, type
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface io.netty.handler.codec.dns.DnsRecord
dnsClass, name, timeToLive, type
-
-
-
-
Constructor Detail
-
DefaultDnsRawRecord
public DefaultDnsRawRecord(java.lang.String name, DnsRecordType type, long timeToLive, ByteBuf content)
Creates a newIN-class
record.- Parameters:
name
- the domain nametype
- the type of the recordtimeToLive
- the TTL value of the record
-
DefaultDnsRawRecord
public DefaultDnsRawRecord(java.lang.String name, DnsRecordType type, int dnsClass, long timeToLive, ByteBuf content)
Creates a new record.- Parameters:
name
- the domain nametype
- the type of the recorddnsClass
- the class of the record, usually one of the following:timeToLive
- the TTL value of the record
-
-
Method Detail
-
content
public ByteBuf content()
Description copied from interface:ByteBufHolder
Return the data which is held by thisByteBufHolder
.- Specified by:
content
in interfaceByteBufHolder
-
copy
public DnsRawRecord copy()
Description copied from interface:ByteBufHolder
Creates a deep copy of thisByteBufHolder
.- Specified by:
copy
in interfaceByteBufHolder
- Specified by:
copy
in interfaceDnsRawRecord
-
duplicate
public DnsRawRecord duplicate()
Description copied from interface:ByteBufHolder
Duplicates thisByteBufHolder
. Be aware that this will not automatically callByteBufHolder.retain()
.- Specified by:
duplicate
in interfaceByteBufHolder
- Specified by:
duplicate
in interfaceDnsRawRecord
-
retainedDuplicate
public DnsRawRecord retainedDuplicate()
Description copied from interface:ByteBufHolder
Duplicates thisByteBufHolder
. This method returns a retained duplicate unlikeByteBufHolder.duplicate()
.- Specified by:
retainedDuplicate
in interfaceByteBufHolder
- Specified by:
retainedDuplicate
in interfaceDnsRawRecord
- See Also:
ByteBuf.retainedDuplicate()
-
replace
public DnsRawRecord replace(ByteBuf content)
Description copied from interface:ByteBufHolder
Returns a newByteBufHolder
which contains the specifiedcontent
.- Specified by:
replace
in interfaceByteBufHolder
- Specified by:
replace
in interfaceDnsRawRecord
-
refCnt
public int refCnt()
Description copied from interface:ReferenceCounted
Returns the reference count of this object. If0
, it means this object has been deallocated.- Specified by:
refCnt
in interfaceReferenceCounted
-
retain
public DnsRawRecord retain()
Description copied from interface:ReferenceCounted
Increases the reference count by1
.- Specified by:
retain
in interfaceByteBufHolder
- Specified by:
retain
in interfaceDnsRawRecord
- Specified by:
retain
in interfaceReferenceCounted
-
retain
public DnsRawRecord retain(int increment)
Description copied from interface:ReferenceCounted
Increases the reference count by the specifiedincrement
.- Specified by:
retain
in interfaceByteBufHolder
- Specified by:
retain
in interfaceDnsRawRecord
- Specified by:
retain
in interfaceReferenceCounted
-
release
public boolean release()
Description copied from interface:ReferenceCounted
Decreases the reference count by1
and deallocates this object if the reference count reaches at0
.- Specified by:
release
in interfaceReferenceCounted
- Returns:
true
if and only if the reference count became0
and this object has been deallocated
-
release
public boolean release(int decrement)
Description copied from interface:ReferenceCounted
Decreases the reference count by the specifieddecrement
and deallocates this object if the reference count reaches at0
.- Specified by:
release
in interfaceReferenceCounted
- Returns:
true
if and only if the reference count became0
and this object has been deallocated
-
touch
public DnsRawRecord touch()
Description copied from interface:ReferenceCounted
Records the current access location of this object for debugging purposes. If this object is determined to be leaked, the information recorded by this operation will be provided to you viaResourceLeakDetector
. This method is a shortcut totouch(null)
.- Specified by:
touch
in interfaceByteBufHolder
- Specified by:
touch
in interfaceDnsRawRecord
- Specified by:
touch
in interfaceReferenceCounted
-
touch
public DnsRawRecord touch(java.lang.Object hint)
Description copied from interface:ReferenceCounted
Records the current access location of this object with an additional arbitrary information for debugging purposes. If this object is determined to be leaked, the information recorded by this operation will be provided to you viaResourceLeakDetector
.- Specified by:
touch
in interfaceByteBufHolder
- Specified by:
touch
in interfaceDnsRawRecord
- Specified by:
touch
in interfaceReferenceCounted
-
toString
public java.lang.String toString()
- Overrides:
toString
in classAbstractDnsRecord
-
-