Class ServerH2StreamHandler
- java.lang.Object
-
- org.apache.hc.core5.http2.impl.nio.ServerH2StreamHandler
-
- All Implemented Interfaces:
ResourceHolder
,H2StreamHandler
class ServerH2StreamHandler extends java.lang.Object implements H2StreamHandler
-
-
Field Summary
Fields Modifier and Type Field Description private BasicHttpConnectionMetrics
connMetrics
private HttpCoreContext
context
private DataStreamChannel
dataChannel
private java.util.concurrent.atomic.AtomicBoolean
done
private AsyncServerExchangeHandler
exchangeHandler
private HandlerFactory<AsyncServerExchangeHandler>
exchangeHandlerFactory
private java.util.concurrent.atomic.AtomicBoolean
failed
private HttpProcessor
httpProcessor
private H2StreamChannel
outputChannel
private HttpRequest
receivedRequest
private MessageState
requestState
private ResponseChannel
responseChannel
private java.util.concurrent.atomic.AtomicBoolean
responseCommitted
private MessageState
responseState
-
Constructor Summary
Constructors Constructor Description ServerH2StreamHandler(H2StreamChannel outputChannel, HttpProcessor httpProcessor, BasicHttpConnectionMetrics connMetrics, HandlerFactory<AsyncServerExchangeHandler> exchangeHandlerFactory, HttpCoreContext context)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
commitInformation(HttpResponse response)
private void
commitPromise(HttpRequest promise, AsyncPushProducer pushProducer)
private void
commitResponse(HttpResponse response, EntityDetails responseEntityDetails)
void
consumeData(java.nio.ByteBuffer src, boolean endStream)
void
consumeHeader(java.util.List<Header> headers, boolean endStream)
void
consumePromise(java.util.List<Header> headers)
void
failed(java.lang.Exception cause)
HandlerFactory<AsyncPushConsumer>
getPushHandlerFactory()
void
handle(HttpException ex, boolean endStream)
boolean
isOutputReady()
void
produceOutput()
void
releaseResources()
java.lang.String
toString()
void
updateInputCapacity()
-
-
-
Field Detail
-
outputChannel
private final H2StreamChannel outputChannel
-
dataChannel
private final DataStreamChannel dataChannel
-
responseChannel
private final ResponseChannel responseChannel
-
httpProcessor
private final HttpProcessor httpProcessor
-
connMetrics
private final BasicHttpConnectionMetrics connMetrics
-
exchangeHandlerFactory
private final HandlerFactory<AsyncServerExchangeHandler> exchangeHandlerFactory
-
context
private final HttpCoreContext context
-
responseCommitted
private final java.util.concurrent.atomic.AtomicBoolean responseCommitted
-
failed
private final java.util.concurrent.atomic.AtomicBoolean failed
-
done
private final java.util.concurrent.atomic.AtomicBoolean done
-
exchangeHandler
private volatile AsyncServerExchangeHandler exchangeHandler
-
receivedRequest
private volatile HttpRequest receivedRequest
-
requestState
private volatile MessageState requestState
-
responseState
private volatile MessageState responseState
-
-
Constructor Detail
-
ServerH2StreamHandler
ServerH2StreamHandler(H2StreamChannel outputChannel, HttpProcessor httpProcessor, BasicHttpConnectionMetrics connMetrics, HandlerFactory<AsyncServerExchangeHandler> exchangeHandlerFactory, HttpCoreContext context)
-
-
Method Detail
-
getPushHandlerFactory
public HandlerFactory<AsyncPushConsumer> getPushHandlerFactory()
- Specified by:
getPushHandlerFactory
in interfaceH2StreamHandler
-
commitInformation
private void commitInformation(HttpResponse response) throws java.io.IOException, HttpException
- Throws:
java.io.IOException
HttpException
-
commitResponse
private void commitResponse(HttpResponse response, EntityDetails responseEntityDetails) throws HttpException, java.io.IOException
- Throws:
HttpException
java.io.IOException
-
commitPromise
private void commitPromise(HttpRequest promise, AsyncPushProducer pushProducer) throws HttpException, java.io.IOException
- Throws:
HttpException
java.io.IOException
-
consumePromise
public void consumePromise(java.util.List<Header> headers) throws HttpException, java.io.IOException
- Specified by:
consumePromise
in interfaceH2StreamHandler
- Throws:
HttpException
java.io.IOException
-
consumeHeader
public void consumeHeader(java.util.List<Header> headers, boolean endStream) throws HttpException, java.io.IOException
- Specified by:
consumeHeader
in interfaceH2StreamHandler
- Throws:
HttpException
java.io.IOException
-
updateInputCapacity
public void updateInputCapacity() throws java.io.IOException
- Specified by:
updateInputCapacity
in interfaceH2StreamHandler
- Throws:
java.io.IOException
-
consumeData
public void consumeData(java.nio.ByteBuffer src, boolean endStream) throws HttpException, java.io.IOException
- Specified by:
consumeData
in interfaceH2StreamHandler
- Throws:
HttpException
java.io.IOException
-
isOutputReady
public boolean isOutputReady()
- Specified by:
isOutputReady
in interfaceH2StreamHandler
-
produceOutput
public void produceOutput() throws HttpException, java.io.IOException
- Specified by:
produceOutput
in interfaceH2StreamHandler
- Throws:
HttpException
java.io.IOException
-
handle
public void handle(HttpException ex, boolean endStream) throws HttpException, java.io.IOException
- Specified by:
handle
in interfaceH2StreamHandler
- Throws:
HttpException
java.io.IOException
-
failed
public void failed(java.lang.Exception cause)
- Specified by:
failed
in interfaceH2StreamHandler
-
releaseResources
public void releaseResources()
- Specified by:
releaseResources
in interfaceResourceHolder
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-