Package io.netty.handler.codec.haproxy
Class HAProxyTLV
- java.lang.Object
-
- io.netty.buffer.DefaultByteBufHolder
-
- io.netty.handler.codec.haproxy.HAProxyTLV
-
- All Implemented Interfaces:
ByteBufHolder
,ReferenceCounted
- Direct Known Subclasses:
HAProxySSLTLV
public class HAProxyTLV extends DefaultByteBufHolder
A Type-Length Value (TLV vector) that can be added to the PROXY protocol to include additional information like SSL information.- See Also:
HAProxySSLTLV
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
HAProxyTLV.Type
The registered types a TLV can have regarding the PROXY protocol 1.5 spec
-
Constructor Summary
Constructors Constructor Description HAProxyTLV(byte typeByteValue, ByteBuf content)
Creates a new HAProxyTLVHAProxyTLV(HAProxyTLV.Type type, ByteBuf content)
Creates a new HAProxyTLV
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description HAProxyTLV
copy()
Creates a deep copy of thisByteBufHolder
.HAProxyTLV
duplicate()
Duplicates thisByteBufHolder
.HAProxyTLV
replace(ByteBuf content)
Returns a newByteBufHolder
which contains the specifiedcontent
.HAProxyTLV
retain()
Increases the reference count by1
.HAProxyTLV
retain(int increment)
Increases the reference count by the specifiedincrement
.HAProxyTLV
retainedDuplicate()
Duplicates thisByteBufHolder
.java.lang.String
toString()
HAProxyTLV
touch()
Records the current access location of this object for debugging purposes.HAProxyTLV
touch(java.lang.Object hint)
Records the current access location of this object with an additional arbitrary information for debugging purposes.HAProxyTLV.Type
type()
Returns theHAProxyTLV.Type
of this TLVbyte
typeByteValue()
Returns the type of the TLV as byte-
Methods inherited from class io.netty.buffer.DefaultByteBufHolder
content, contentToString, equals, hashCode, refCnt, release, release
-
-
-
-
Constructor Detail
-
HAProxyTLV
public HAProxyTLV(byte typeByteValue, ByteBuf content)
Creates a new HAProxyTLV- Parameters:
typeByteValue
- the byteValue of the TLV. This is especially important if non-standard TLVs are usedcontent
- the raw content of the TLV
-
HAProxyTLV
public HAProxyTLV(HAProxyTLV.Type type, ByteBuf content)
Creates a new HAProxyTLV- Parameters:
type
- theHAProxyTLV.Type
of the TLVcontent
- the raw content of the TLV
-
-
Method Detail
-
type
public HAProxyTLV.Type type()
Returns theHAProxyTLV.Type
of this TLV
-
typeByteValue
public byte typeByteValue()
Returns the type of the TLV as byte
-
copy
public HAProxyTLV copy()
Description copied from class:DefaultByteBufHolder
Creates a deep copy of thisByteBufHolder
.This method calls
replace(content().copy())
by default.- Specified by:
copy
in interfaceByteBufHolder
- Overrides:
copy
in classDefaultByteBufHolder
-
duplicate
public HAProxyTLV duplicate()
Description copied from class:DefaultByteBufHolder
Duplicates thisByteBufHolder
. Be aware that this will not automatically callByteBufHolder.retain()
.This method calls
replace(content().duplicate())
by default.- Specified by:
duplicate
in interfaceByteBufHolder
- Overrides:
duplicate
in classDefaultByteBufHolder
-
retainedDuplicate
public HAProxyTLV retainedDuplicate()
Description copied from class:DefaultByteBufHolder
Duplicates thisByteBufHolder
. This method returns a retained duplicate unlikeByteBufHolder.duplicate()
.This method calls
replace(content().retainedDuplicate())
by default.- Specified by:
retainedDuplicate
in interfaceByteBufHolder
- Overrides:
retainedDuplicate
in classDefaultByteBufHolder
- See Also:
ByteBuf.retainedDuplicate()
-
replace
public HAProxyTLV replace(ByteBuf content)
Description copied from class:DefaultByteBufHolder
Returns a newByteBufHolder
which contains the specifiedcontent
.Override this method to return a new instance of this object whose content is set to the specified
content
. The default implementation ofDefaultByteBufHolder.copy()
,DefaultByteBufHolder.duplicate()
andDefaultByteBufHolder.retainedDuplicate()
invokes this method to create a copy.- Specified by:
replace
in interfaceByteBufHolder
- Overrides:
replace
in classDefaultByteBufHolder
-
retain
public HAProxyTLV retain()
Description copied from interface:ReferenceCounted
Increases the reference count by1
.- Specified by:
retain
in interfaceByteBufHolder
- Specified by:
retain
in interfaceReferenceCounted
- Overrides:
retain
in classDefaultByteBufHolder
-
retain
public HAProxyTLV retain(int increment)
Description copied from interface:ReferenceCounted
Increases the reference count by the specifiedincrement
.- Specified by:
retain
in interfaceByteBufHolder
- Specified by:
retain
in interfaceReferenceCounted
- Overrides:
retain
in classDefaultByteBufHolder
-
touch
public HAProxyTLV 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 interfaceReferenceCounted
- Overrides:
touch
in classDefaultByteBufHolder
-
touch
public HAProxyTLV 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 interfaceReferenceCounted
- Overrides:
touch
in classDefaultByteBufHolder
-
toString
public java.lang.String toString()
- Overrides:
toString
in classDefaultByteBufHolder
-
-