Package io.netty.handler.codec.http2
Class CleartextHttp2ServerUpgradeHandler
- java.lang.Object
-
- io.netty.channel.ChannelHandlerAdapter
-
- io.netty.channel.ChannelInboundHandlerAdapter
-
- io.netty.handler.codec.ByteToMessageDecoder
-
- io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler
-
- All Implemented Interfaces:
ChannelHandler,ChannelInboundHandler
public final class CleartextHttp2ServerUpgradeHandler extends ByteToMessageDecoder
Performing cleartext upgrade, by h2c HTTP upgrade or Prior Knowledge. This handler config pipeline for h2c upgrade when handler added. And will update pipeline once it detect the connection is starting HTTP/2 by prior knowledge or not.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classCleartextHttp2ServerUpgradeHandler.PriorKnowledgeUpgradeEventUser event that is fired to notify about HTTP/2 protocol is started.-
Nested classes/interfaces inherited from class io.netty.handler.codec.ByteToMessageDecoder
ByteToMessageDecoder.Cumulator
-
Nested classes/interfaces inherited from interface io.netty.channel.ChannelHandler
ChannelHandler.Sharable
-
-
Field Summary
-
Fields inherited from class io.netty.handler.codec.ByteToMessageDecoder
COMPOSITE_CUMULATOR, MERGE_CUMULATOR
-
-
Constructor Summary
Constructors Constructor Description CleartextHttp2ServerUpgradeHandler(HttpServerCodec httpServerCodec, HttpServerUpgradeHandler httpServerUpgradeHandler, ChannelHandler http2ServerHandler)Creates the channel handler provide cleartext HTTP/2 upgrade from HTTP upgrade or prior knowledge
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voiddecode(ChannelHandlerContext ctx, ByteBuf in, java.util.List<java.lang.Object> out)Peek inbound message to determine current connection wants to start HTTP/2 by HTTP upgrade or prior knowledgevoidhandlerAdded(ChannelHandlerContext ctx)Do nothing by default, sub-classes may override this method.-
Methods inherited from class io.netty.handler.codec.ByteToMessageDecoder
actualReadableBytes, callDecode, channelInactive, channelRead, channelReadComplete, decodeLast, discardSomeReadBytes, handlerRemoved, handlerRemoved0, internalBuffer, isSingleDecode, setCumulator, setDiscardAfterReads, setSingleDecode, userEventTriggered
-
Methods inherited from class io.netty.channel.ChannelInboundHandlerAdapter
channelActive, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaught
-
Methods inherited from class io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, isSharable
-
-
-
-
Constructor Detail
-
CleartextHttp2ServerUpgradeHandler
public CleartextHttp2ServerUpgradeHandler(HttpServerCodec httpServerCodec, HttpServerUpgradeHandler httpServerUpgradeHandler, ChannelHandler http2ServerHandler)
Creates the channel handler provide cleartext HTTP/2 upgrade from HTTP upgrade or prior knowledge- Parameters:
httpServerCodec- the http server codechttpServerUpgradeHandler- the http server upgrade handler for HTTP/2http2ServerHandler- the http2 server handler, will be added into pipeline when starting HTTP/2 by prior knowledge
-
-
Method Detail
-
handlerAdded
public void handlerAdded(ChannelHandlerContext ctx) throws java.lang.Exception
Description copied from class:ChannelHandlerAdapterDo nothing by default, sub-classes may override this method.- Specified by:
handlerAddedin interfaceChannelHandler- Overrides:
handlerAddedin classChannelHandlerAdapter- Throws:
java.lang.Exception
-
decode
protected void decode(ChannelHandlerContext ctx, ByteBuf in, java.util.List<java.lang.Object> out) throws java.lang.Exception
Peek inbound message to determine current connection wants to start HTTP/2 by HTTP upgrade or prior knowledge- Specified by:
decodein classByteToMessageDecoder- Parameters:
ctx- theChannelHandlerContextwhich thisByteToMessageDecoderbelongs toin- theByteBuffrom which to read dataout- theListto which decoded messages should be added- Throws:
java.lang.Exception- is thrown if an error occurs
-
-