Package io.netty.handler.codec.http2
package io.netty.handler.codec.http2
Handlers for sending and receiving HTTP/2 frames.
-
ClassDescriptionAbstractHttp2ConnectionHandlerBuilder<T extends Http2ConnectionHandler,
B extends AbstractHttp2ConnectionHandlerBuilder<T, B>> Abstract base class which defines commonly used features required to buildHttp2ConnectionHandler
instances.Returns the flow-control size for DATA frames, and 9 for all other frames.ChannelConfig
so that the high and low writebuffer watermarks can reflect the outbound flow control window, without having to create a newWriteBufferWaterMark
object whenever the flow control window changes.The current status of the read-processing for aAbstractHttp2StreamChannel
.Http2FrameStreamVisitor
that fires the user event for every active stream pipeline.Abstract implementation ofHttp2StreamFrame
.AbstractInboundHttp2ToHttpAdapterBuilder<T extends InboundHttp2ToHttpAdapter,B extends AbstractInboundHttp2ToHttpAdapterBuilder<T, B>> A skeletal builder implementation ofInboundHttp2ToHttpAdapter
and its subtypes.Internal use only!Performing cleartext upgrade, by h2c HTTP upgrade or Prior Knowledge.User event that is fired to notify about HTTP/2 protocol is started.A decorating HTTP2 encoder that will compress data frames according to thecontent-encoding
header for each stream.Decorator around anotherHttp2ConnectionDecoder
instance.A decorator around anotherHttp2ConnectionEncoder
instance.Decorator around anotherHttp2FrameWriter
instance.Simple implementation ofHttp2Connection
.Allows events which would modify the collection of active streams to be queued while iterating viaDefaultHttp2Connection.forEachActiveStream(Http2StreamVisitor)
.Provides the default implementation for processing inbound frame events and delegates to aHttp2FrameListener
Default implementation ofHttp2ConnectionEncoder
.The defaultHttp2DataFrame
implementation.AHttp2FrameReader
that supports all frame types defined by the HTTP/2 specification.AHttp2FrameWriter
that supports all frame types defined by the HTTP/2 specification.The defaultHttp2GoAwayFrame
implementation.The defaultHttp2HeadersFrame
implementation.Basic implementation ofHttp2LocalFlowController
.An abstraction which provides specific extensions used by local flow control.The defaultHttp2PingFrame
implementation.Default implementation of Http2PriorityFrameDefault implementation ofHttp2PushPromiseFrame
Basic implementation ofHttp2RemoteFlowController
.The defaultHttp2ResetFrame
implementation.The defaultHttp2SettingsAckFrame
implementation.The defaultHttp2SettingsFrame
implementation.The defaultHttp2WindowUpdateFrame
implementation.An HTTP2 frame listener that will decompress data frames according to thecontent-encoding
header for each stream.Provides the state for streamDATA
frame decompression.HTTP/2 header types.An HPACK encoder.AChannelDuplexHandler
providing additional functionality for HTTP/2.Client-side cleartext upgrade codec from HTTP to HTTP/2.Constants and utility method used for encoding/decoding HTTP2 frames.Provides the ability to associate the outcome of multipleChannelPromise
objects into a singleChannelPromise
object.Manager for the state of an HTTP/2 connection with the remote end-point.Http2Connection.Endpoint<F extends Http2FlowController>A view of the connection from one endpoint (local or remote).Listener for life-cycle events for streams in this connection.A key to be used for associating application-defined properties with streams within this connection.Provides empty implementations of allHttp2Connection.Listener
methods.Handler for inbound traffic on behalf ofHttp2ConnectionHandler
.Handler for outbound HTTP/2 traffic.Provides the default implementation for processing inbound frame events and delegates to aHttp2FrameListener
Closes the channel when the future completes.Builder which buildsHttp2ConnectionHandler
objects.Signifies that the connection preface and the initial SETTINGS frame have been sent.DecoratingHttp2ConnectionEncoder
which guards against a remote peer that will trigger a massive amount of control frames but will not consume our responses to these.AChunkedInput
that fetches data chunk by chunk for use with HTTP/2 Data Frames.HTTP/2 DATA frame.Interface that defines an object capable of producing HTTP/2 data frames.Enforce a limit on the maximum number of consecutive empty DATA frames (without end_of_stream flag) that are allowed before the connection will be closed.Enforce a limit on the maximum number of consecutive empty DATA frames (without end_of_stream flag) that are allowed before the connection will be closed.All error codes identified by the HTTP/2 spec.This class bringsHttp2Connection.Listener
andHttp2FrameListener
together to provide NOOP implementation so inheriting classes can selectively choose which methods to override.Exception thrown when an HTTP/2 error was encountered.Used when a stream creation attempt fails but may be because the stream was previously closed.Provides the ability to handle multiple stream exceptions with one throw statement.Provides a hint as to if shutdown is justified, what type of shutdown should be executed.Represents an exception that can be isolated to a single stream (as opposed to the entire connection).Provides utility methods for accessing specific flags as defined by the HTTP/2 spec.Base interface for all HTTP/2 flow controllers.An HTTP/2 frame.Convenience class that provides no-op implementations for all methods ofHttp2FrameListener
.This API is very immature. The Http2Connection-based API is currently preferred over this API.Http2FrameStream
implementation.Builder for theHttp2FrameCodec
.An listener of HTTP/2 frames.Provides a decorator around aHttp2FrameListener
and delegates all method callsLogs HTTP2 frames for debugging purposes.Reads HTTP/2 frames from an inputByteBuf
and notifies the specifiedHttp2FrameListener
when frames are complete.Configuration specific toHttp2FrameReader
A single stream within an HTTP/2 connection.An HTTP/2 exception for a specificHttp2FrameStream
.A visitor that allows to iterate over a collection ofHttp2FrameStream
s.Registry of all standard frame types defined by the HTTP/2 specification.A writer responsible for marshaling HTTP/2 frames to the channel.Configuration specific toHttp2FrameWriter
HTTP/2 GOAWAY frame.A collection of headers sent or received via HTTP/2.HTTP/2 pseudo-headers names.Decodes HPACK-encoded headers blocks intoHttp2Headers
.Configuration related elements for theHttp2HeadersDecoder
interfaceEncodesHttp2Headers
into HPACK-encoded headers blocks.Configuration related elements for theHttp2HeadersEncoder
interfaceDetermine if a header name/value pair is treated as sensitive.HTTP/2 HEADERS frame.Decorator around aHttp2FrameReader
that logs all inbound frames before calling back the listener.Manager for the life cycle of the HTTP/2 connection.AHttp2FlowController
for controlling the inbound flow ofDATA
frames from the remote endpoint.Enforce a limit on the maximum number of RST frames that are allowed per a window before the connection will be closed with a GO_AWAY frame.Deprecated.Deprecated.useHttp2FrameCodecBuilder
together withHttp2MultiplexHandler
.An HTTP/2 handler that creates child channels for each stream.This exception is thrown when there are no more stream IDs available for the current connectionDecorator around aHttp2FrameWriter
that logs all outbound frames before calling the writer.HTTP/2 PING Frame.HTTP/2 Priority FrameProvides an extensibility point for users to define the validity of push requests.HTTP/2 Push Promise FrameAHttp2FlowController
for controlling the flow of outboundDATA
frames to the remote endpoint.Implementations of this interface are used to progressively write chunks of the underlying payload to the stream.Listener to the number of flow-controlled bytes written per stream.HTTP/2 RST_STREAM frame.Provides utilities related to security requirements specific to HTTP/2.Server-side codec for performing a cleartext upgrade from HTTP/1.x to HTTP/2.Settings for one endpoint in an HTTP/2 connection.An ack for a previously receivedHttp2SettingsFrame
.HTTP/2 SETTINGS frame.Provides a Consumer like interface to consume remote settings received but not yet ACKed.A single stream within an HTTP2 connection.The allowed states of an HTTP2 stream.ChannelId implementation which is used by ourHttp2StreamChannel
implementation.A frame whose meaning may apply to a particular stream, instead of the entire connection.This handler converts fromHttp2StreamFrame
toHttpObject
, and back.A visitor that allows iteration over a collection of streams.HTTP/2 WINDOW_UPDATE frame.Provides utility methods and constants for the HTTP/2 to HTTP conversionProvides the HTTP header extensions used to carry HTTP/2 information in HTTP objectsUtility which translates HTTP/2 headers to HTTP/1 headers.Translates HTTP/1.x object writes into HTTP/2 frames.Builder which buildsHttpToHttp2ConnectionHandler
objects.This adapter provides just header/data events from the HTTP message flow defined in [RFC 7540], Section 8.1.Allows messages to be sent up the pipeline before the next phase in the HTTP message flow is detected.Builds anInboundHttp2ToHttpAdapter
.Translates HTTP/1.x object reads into HTTP/2 frames.A variant ofHttp2Headers
which only supports read-only methods.Implementation of aHttp2ConnectionEncoder
that dispatches all method call to anotherHttp2ConnectionEncoder
, untilSETTINGS_MAX_CONCURRENT_STREAMS
is reached.Thrown if buffered streams are terminated due to this encoder being closed.Thrown byStreamBufferingEncoder
if buffered streams are terminated due to receipt of aGOAWAY
.An object (used by remote flow control) that is responsible for distributing the bytes to be written across the streams in the connection.State information for the stream, indicating the number of bytes that are currently streamable.Object that performs the writing of the bytes that have been allocated for a stream.AStreamByteDistributor
that ignores stream priority and uniformly allocates bytes to all streams.AStreamByteDistributor
that is sensitive to stream priority and uses Weighted Fair Queueing approach for distributing bytes.Allows a correlation to be made between a stream and its old parent before a parent change occurs.A comparator forWeightedFairQueueByteDistributor.State
which has no associatedHttp2Stream
object.
Http2FrameCodecBuilder
together withHttp2MultiplexHandler
.