Package io.netty.handler.codec.http2
Class DefaultHttp2GoAwayFrame
- java.lang.Object
-
- io.netty.buffer.DefaultByteBufHolder
-
- io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame
-
- All Implemented Interfaces:
ByteBufHolder,Http2Frame,Http2GoAwayFrame,ReferenceCounted
public final class DefaultHttp2GoAwayFrame extends DefaultByteBufHolder implements Http2GoAwayFrame
The defaultHttp2GoAwayFrameimplementation.
-
-
Constructor Summary
Constructors Constructor Description DefaultHttp2GoAwayFrame(long errorCode)Equivalent tonew DefaultHttp2GoAwayFrame(content, Unpooled.EMPTY_BUFFER).DefaultHttp2GoAwayFrame(long errorCode, ByteBuf content)Construct a new GOAWAY message.DefaultHttp2GoAwayFrame(Http2Error error)Equivalent tonew DefaultHttp2GoAwayFrame(error.code()).DefaultHttp2GoAwayFrame(Http2Error error, ByteBuf content)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Http2GoAwayFramecopy()Creates a deep copy of thisByteBufHolder.Http2GoAwayFrameduplicate()Duplicates thisByteBufHolder.booleanequals(java.lang.Object o)This implementation of theequalsoperation is restricted to work only with instances of the same class.longerrorCode()The reason for beginning closure of the connection.intextraStreamIds()The number of IDs to reserve for the receiver to use while GOAWAY is in transit.inthashCode()intlastStreamId()Returns the last stream identifier if set, or-1else.java.lang.Stringname()Returns the name of the HTTP/2 frame e.g.Http2GoAwayFramereplace(ByteBuf content)Returns a newByteBufHolderwhich contains the specifiedcontent.Http2GoAwayFrameretain()Increases the reference count by1.Http2GoAwayFrameretain(int increment)Increases the reference count by the specifiedincrement.Http2GoAwayFrameretainedDuplicate()Duplicates thisByteBufHolder.Http2GoAwayFramesetExtraStreamIds(int extraStreamIds)Sets the number of IDs to reserve for the receiver to use while GOAWAY is in transit.java.lang.StringtoString()Http2GoAwayFrametouch()Records the current access location of this object for debugging purposes.Http2GoAwayFrametouch(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.buffer.DefaultByteBufHolder
content, contentToString, refCnt, release, release
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface io.netty.handler.codec.http2.Http2GoAwayFrame
content
-
Methods inherited from interface io.netty.util.ReferenceCounted
refCnt, release, release
-
-
-
-
Constructor Detail
-
DefaultHttp2GoAwayFrame
public DefaultHttp2GoAwayFrame(Http2Error error)
Equivalent tonew DefaultHttp2GoAwayFrame(error.code()).- Parameters:
error- non-nullreason for the go away
-
DefaultHttp2GoAwayFrame
public DefaultHttp2GoAwayFrame(long errorCode)
Equivalent tonew DefaultHttp2GoAwayFrame(content, Unpooled.EMPTY_BUFFER).- Parameters:
errorCode- reason for the go away
-
DefaultHttp2GoAwayFrame
public DefaultHttp2GoAwayFrame(Http2Error error, ByteBuf content)
- Parameters:
error- non-nullreason for the go awaycontent- non-nulldebug data
-
DefaultHttp2GoAwayFrame
public DefaultHttp2GoAwayFrame(long errorCode, ByteBuf content)Construct a new GOAWAY message.- Parameters:
errorCode- reason for the go awaycontent- non-nulldebug data
-
-
Method Detail
-
name
public java.lang.String name()
Description copied from interface:Http2FrameReturns the name of the HTTP/2 frame e.g. DATA, GOAWAY, etc.- Specified by:
namein interfaceHttp2Frame
-
errorCode
public long errorCode()
Description copied from interface:Http2GoAwayFrameThe reason for beginning closure of the connection. Represented as an HTTP/2 error code.- Specified by:
errorCodein interfaceHttp2GoAwayFrame
-
extraStreamIds
public int extraStreamIds()
Description copied from interface:Http2GoAwayFrameThe number of IDs to reserve for the receiver to use while GOAWAY is in transit. This allows for new streams currently en route to still be created, up to a point, which allows for very graceful shutdown of both sides.- Specified by:
extraStreamIdsin interfaceHttp2GoAwayFrame
-
setExtraStreamIds
public Http2GoAwayFrame setExtraStreamIds(int extraStreamIds)
Description copied from interface:Http2GoAwayFrameSets the number of IDs to reserve for the receiver to use while GOAWAY is in transit.- Specified by:
setExtraStreamIdsin interfaceHttp2GoAwayFrame- Returns:
this- See Also:
Http2GoAwayFrame.extraStreamIds()
-
lastStreamId
public int lastStreamId()
Description copied from interface:Http2GoAwayFrameReturns the last stream identifier if set, or-1else.- Specified by:
lastStreamIdin interfaceHttp2GoAwayFrame
-
copy
public Http2GoAwayFrame copy()
Description copied from class:DefaultByteBufHolderCreates a deep copy of thisByteBufHolder.This method calls
replace(content().copy())by default.- Specified by:
copyin interfaceByteBufHolder- Specified by:
copyin interfaceHttp2GoAwayFrame- Overrides:
copyin classDefaultByteBufHolder
-
duplicate
public Http2GoAwayFrame duplicate()
Description copied from class:DefaultByteBufHolderDuplicates thisByteBufHolder. Be aware that this will not automatically callByteBufHolder.retain().This method calls
replace(content().duplicate())by default.- Specified by:
duplicatein interfaceByteBufHolder- Specified by:
duplicatein interfaceHttp2GoAwayFrame- Overrides:
duplicatein classDefaultByteBufHolder
-
retainedDuplicate
public Http2GoAwayFrame retainedDuplicate()
Description copied from class:DefaultByteBufHolderDuplicates thisByteBufHolder. This method returns a retained duplicate unlikeByteBufHolder.duplicate().This method calls
replace(content().retainedDuplicate())by default.- Specified by:
retainedDuplicatein interfaceByteBufHolder- Specified by:
retainedDuplicatein interfaceHttp2GoAwayFrame- Overrides:
retainedDuplicatein classDefaultByteBufHolder- See Also:
ByteBuf.retainedDuplicate()
-
replace
public Http2GoAwayFrame replace(ByteBuf content)
Description copied from class:DefaultByteBufHolderReturns a newByteBufHolderwhich 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:
replacein interfaceByteBufHolder- Specified by:
replacein interfaceHttp2GoAwayFrame- Overrides:
replacein classDefaultByteBufHolder
-
retain
public Http2GoAwayFrame retain()
Description copied from interface:ReferenceCountedIncreases the reference count by1.- Specified by:
retainin interfaceByteBufHolder- Specified by:
retainin interfaceHttp2GoAwayFrame- Specified by:
retainin interfaceReferenceCounted- Overrides:
retainin classDefaultByteBufHolder
-
retain
public Http2GoAwayFrame retain(int increment)
Description copied from interface:ReferenceCountedIncreases the reference count by the specifiedincrement.- Specified by:
retainin interfaceByteBufHolder- Specified by:
retainin interfaceHttp2GoAwayFrame- Specified by:
retainin interfaceReferenceCounted- Overrides:
retainin classDefaultByteBufHolder
-
touch
public Http2GoAwayFrame touch()
Description copied from interface:ReferenceCountedRecords 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:
touchin interfaceByteBufHolder- Specified by:
touchin interfaceHttp2GoAwayFrame- Specified by:
touchin interfaceReferenceCounted- Overrides:
touchin classDefaultByteBufHolder
-
touch
public Http2GoAwayFrame touch(java.lang.Object hint)
Description copied from interface:ReferenceCountedRecords 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:
touchin interfaceByteBufHolder- Specified by:
touchin interfaceHttp2GoAwayFrame- Specified by:
touchin interfaceReferenceCounted- Overrides:
touchin classDefaultByteBufHolder
-
equals
public boolean equals(java.lang.Object o)
Description copied from class:DefaultByteBufHolderThis implementation of theequalsoperation is restricted to work only with instances of the same class. The reason for that is that Netty library already has a number of classes that extendDefaultByteBufHolderand overrideequalsmethod with an additional comparison logic and we need the symmetric property of theequalsoperation to be preserved.- Overrides:
equalsin classDefaultByteBufHolder- Parameters:
o- the reference object with which to compare.- Returns:
trueif this object is the same as the obj argument;falseotherwise.
-
hashCode
public int hashCode()
- Overrides:
hashCodein classDefaultByteBufHolder
-
toString
public java.lang.String toString()
- Overrides:
toStringin classDefaultByteBufHolder
-
-