Class ServerH2StreamMultiplexer
java.lang.Object
org.apache.hc.core5.http2.impl.nio.AbstractH2StreamMultiplexer
org.apache.hc.core5.http2.impl.nio.ServerH2StreamMultiplexer
- All Implemented Interfaces:
Closeable, AutoCloseable, HttpConnection, SocketModalCloseable, ModalCloseable, Identifiable
I/O event handler for events fired by
ProtocolIOSession that implements
server side HTTP/2 messaging protocol with full support for
multiplexed message transmission.- Since:
- 5.0
-
Nested Class Summary
Nested classes/interfaces inherited from class AbstractH2StreamMultiplexer
AbstractH2StreamMultiplexer.ConnectionHandshake, AbstractH2StreamMultiplexer.H2StreamChannelImpl, AbstractH2StreamMultiplexer.SettingsHandshake -
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionServerH2StreamMultiplexer(ProtocolIOSession ioSession, HttpProcessor httpProcessor, HandlerFactory<AsyncServerExchangeHandler> exchangeHandlerFactory, CharCodingConfig charCodingConfig, H2Config h2Config) ServerH2StreamMultiplexer(ProtocolIOSession ioSession, FrameFactory frameFactory, HttpProcessor httpProcessor, HandlerFactory<AsyncServerExchangeHandler> exchangeHandlerFactory, CharCodingConfig charCodingConfig, H2Config h2Config, H2StreamListener streamListener) -
Method Summary
Modifier and TypeMethodDescription(package private) void(package private) void(package private) void(package private) booleanallowGracefulAbort(H2Stream stream) decodeHeaders(ByteBuffer payload) (package private) H2Setting[]generateSettings(H2Config localConfig) (package private) H2StreamHandlerincomingPushPromise(H2StreamChannel channel, HandlerFactory<AsyncPushConsumer> pushHandlerFactory) (package private) H2StreamHandlerincomingRequest(H2StreamChannel channel) (package private) H2StreamHandleroutgoingPushPromise(H2StreamChannel channel, AsyncPushProducer pushProducer) (package private) H2StreamHandleroutgoingRequest(H2StreamChannel channel, AsyncClientExchangeHandler exchangeHandler, HandlerFactory<AsyncPushConsumer> pushHandlerFactory, HttpContext context) toString()(package private) voidvalidateSetting(H2Param param, int value) Methods inherited from class AbstractH2StreamMultiplexer
appendState, close, close, createChannel, createStream, getConnMetrics, getEndpointDetails, getHttpProcessor, getId, getLocalAddress, getProtocolVersion, getRemoteAddress, getSocketTimeout, getSSLSession, isOpen, onConnect, onDisconnect, onException, onInput, onOutput, onTimeout, requestSessionOutput, setSocketTimeout, submitCommand
-
Field Details
-
exchangeHandlerFactory
-
-
Constructor Details
-
ServerH2StreamMultiplexer
public ServerH2StreamMultiplexer(ProtocolIOSession ioSession, FrameFactory frameFactory, HttpProcessor httpProcessor, HandlerFactory<AsyncServerExchangeHandler> exchangeHandlerFactory, CharCodingConfig charCodingConfig, H2Config h2Config, H2StreamListener streamListener) -
ServerH2StreamMultiplexer
public ServerH2StreamMultiplexer(ProtocolIOSession ioSession, HttpProcessor httpProcessor, HandlerFactory<AsyncServerExchangeHandler> exchangeHandlerFactory, CharCodingConfig charCodingConfig, H2Config h2Config)
-
-
Method Details
-
validateSetting
- Specified by:
validateSettingin classAbstractH2StreamMultiplexer- Throws:
H2ConnectionException
-
generateSettings
- Specified by:
generateSettingsin classAbstractH2StreamMultiplexer
-
acceptHeaderFrame
void acceptHeaderFrame()- Specified by:
acceptHeaderFramein classAbstractH2StreamMultiplexer
-
acceptPushRequest
void acceptPushRequest()- Specified by:
acceptPushRequestin classAbstractH2StreamMultiplexer
-
acceptPushFrame
- Specified by:
acceptPushFramein classAbstractH2StreamMultiplexer- Throws:
H2ConnectionException
-
incomingRequest
- Specified by:
incomingRequestin classAbstractH2StreamMultiplexer
-
outgoingRequest
H2StreamHandler outgoingRequest(H2StreamChannel channel, AsyncClientExchangeHandler exchangeHandler, HandlerFactory<AsyncPushConsumer> pushHandlerFactory, HttpContext context) throws IOException - Specified by:
outgoingRequestin classAbstractH2StreamMultiplexer- Throws:
IOException
-
incomingPushPromise
H2StreamHandler incomingPushPromise(H2StreamChannel channel, HandlerFactory<AsyncPushConsumer> pushHandlerFactory) throws IOException - Specified by:
incomingPushPromisein classAbstractH2StreamMultiplexer- Throws:
IOException
-
outgoingPushPromise
H2StreamHandler outgoingPushPromise(H2StreamChannel channel, AsyncPushProducer pushProducer) throws IOException - Specified by:
outgoingPushPromisein classAbstractH2StreamMultiplexer- Throws:
IOException
-
allowGracefulAbort
- Specified by:
allowGracefulAbortin classAbstractH2StreamMultiplexer
-
decodeHeaders
- Overrides:
decodeHeadersin classAbstractH2StreamMultiplexer- Throws:
HttpException
-
toString
-