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 buildHttp2ConnectionHandlerinstances.Returns the flow-control size for DATA frames, and 9 for all other frames.ChannelConfigso that the high and low writebuffer watermarks can reflect the outbound flow control window, without having to create a newWriteBufferWaterMarkobject whenever the flow control window changes.The current status of the read-processing for aAbstractHttp2StreamChannel.Http2FrameStreamVisitorthat 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 ofInboundHttp2ToHttpAdapterand 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-encodingheader for each stream.Decorator around anotherHttp2ConnectionDecoderinstance.A decorator around anotherHttp2ConnectionEncoderinstance.Decorator around anotherHttp2FrameWriterinstance.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 aHttp2FrameListenerDefault implementation ofHttp2ConnectionEncoder.The defaultHttp2DataFrameimplementation.AHttp2FrameReaderthat supports all frame types defined by the HTTP/2 specification.AHttp2FrameWriterthat supports all frame types defined by the HTTP/2 specification.The defaultHttp2GoAwayFrameimplementation.The defaultHttp2HeadersFrameimplementation.Basic implementation ofHttp2LocalFlowController.An abstraction which provides specific extensions used by local flow control.The defaultHttp2PingFrameimplementation.Default implementation of Http2PriorityFrameDefault implementation ofHttp2PushPromiseFrameBasic implementation ofHttp2RemoteFlowController.The defaultHttp2ResetFrameimplementation.The defaultHttp2SettingsAckFrameimplementation.The defaultHttp2SettingsFrameimplementation.The defaultHttp2WindowUpdateFrameimplementation.An HTTP2 frame listener that will decompress data frames according to thecontent-encodingheader for each stream.Provides the state for streamDATAframe decompression.HTTP/2 header types.An HPACK encoder.AChannelDuplexHandlerproviding 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 multipleChannelPromiseobjects into a singleChannelPromiseobject.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.Listenermethods.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 aHttp2FrameListenerCloses the channel when the future completes.Builder which buildsHttp2ConnectionHandlerobjects.Signifies that the connection preface and the initial SETTINGS frame have been sent.DecoratingHttp2ConnectionEncoderwhich guards against a remote peer that will trigger a massive amount of control frames but will not consume our responses to these.AChunkedInputthat 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.ListenerandHttp2FrameListenertogether 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.An HTTP/2 handler that maps HTTP/2 frames toHttp2Frameobjects and vice versa.Http2FrameStreamimplementation.Builder for theHttp2FrameCodec.An listener of HTTP/2 frames.Provides a decorator around aHttp2FrameListenerand delegates all method callsLogs HTTP2 frames for debugging purposes.Reads HTTP/2 frames from an inputByteBufand notifies the specifiedHttp2FrameListenerwhen frames are complete.Configuration specific toHttp2FrameReaderA single stream within an HTTP/2 connection.An HTTP/2 exception for a specificHttp2FrameStream.A visitor that allows to iterate over a collection ofHttp2FrameStreams.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 toHttp2FrameWriterHTTP/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 theHttp2HeadersDecoderinterfaceEncodesHttp2Headersinto HPACK-encoded headers blocks.Configuration related elements for theHttp2HeadersEncoderinterfaceDetermine if a header name/value pair is treated as sensitive.HTTP/2 HEADERS frame.Decorator around aHttp2FrameReaderthat logs all inbound frames before calling back the listener.Manager for the life cycle of the HTTP/2 connection.AHttp2FlowControllerfor controlling the inbound flow ofDATAframes 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.DecoratingHttp2ConnectionEncoderwhich guards against a remote peer that will trigger a massive amount of RST frames on an existing connection.Deprecated.Deprecated.useHttp2FrameCodecBuildertogether 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 aHttp2FrameWriterthat 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 FrameAHttp2FlowControllerfor controlling the flow of outboundDATAframes 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 ourHttp2StreamChannelimplementation.ChannelOptions that are specific toHttp2StreamChannels.A frame whose meaning may apply to a particular stream, instead of the entire connection.This handler converts fromHttp2StreamFrametoHttpObject, 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 buildsHttpToHttp2ConnectionHandlerobjects.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 ofHttp2Headerswhich only supports read-only methods.Implementation of aHttp2ConnectionEncoderthat dispatches all method call to anotherHttp2ConnectionEncoder, untilSETTINGS_MAX_CONCURRENT_STREAMSis reached.Thrown if buffered streams are terminated due to this encoder being closed.Thrown byStreamBufferingEncoderif 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.AStreamByteDistributorthat ignores stream priority and uniformly allocates bytes to all streams.AStreamByteDistributorthat 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.Statewhich has no associatedHttp2Streamobject.
Http2FrameCodecBuildertogether withHttp2MultiplexHandler.