Class ClientPushH2StreamHandler
- java.lang.Object
-
- org.apache.hc.core5.http2.impl.nio.ClientPushH2StreamHandler
-
- All Implemented Interfaces:
ResourceHolder
,H2StreamHandler
class ClientPushH2StreamHandler extends java.lang.Object implements H2StreamHandler
-
-
Field Summary
Fields Modifier and Type Field Description private BasicHttpConnectionMetrics
connMetrics
private HttpCoreContext
context
private java.util.concurrent.atomic.AtomicBoolean
done
private AsyncPushConsumer
exchangeHandler
private java.util.concurrent.atomic.AtomicBoolean
failed
private HttpProcessor
httpProcessor
private H2StreamChannel
internalOutputChannel
private HandlerFactory<AsyncPushConsumer>
pushHandlerFactory
private HttpRequest
request
private MessageState
requestState
private MessageState
responseState
-
Constructor Summary
Constructors Constructor Description ClientPushH2StreamHandler(H2StreamChannel outputChannel, HttpProcessor httpProcessor, BasicHttpConnectionMetrics connMetrics, HandlerFactory<AsyncPushConsumer> pushHandlerFactory, HttpCoreContext context)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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
isDone()
boolean
isOutputReady()
void
produceOutput()
void
releaseResources()
java.lang.String
toString()
void
updateInputCapacity()
-
-
-
Field Detail
-
internalOutputChannel
private final H2StreamChannel internalOutputChannel
-
httpProcessor
private final HttpProcessor httpProcessor
-
connMetrics
private final BasicHttpConnectionMetrics connMetrics
-
pushHandlerFactory
private final HandlerFactory<AsyncPushConsumer> pushHandlerFactory
-
context
private final HttpCoreContext context
-
failed
private final java.util.concurrent.atomic.AtomicBoolean failed
-
done
private final java.util.concurrent.atomic.AtomicBoolean done
-
request
private volatile HttpRequest request
-
exchangeHandler
private volatile AsyncPushConsumer exchangeHandler
-
requestState
private volatile MessageState requestState
-
responseState
private volatile MessageState responseState
-
-
Constructor Detail
-
ClientPushH2StreamHandler
ClientPushH2StreamHandler(H2StreamChannel outputChannel, HttpProcessor httpProcessor, BasicHttpConnectionMetrics connMetrics, HandlerFactory<AsyncPushConsumer> pushHandlerFactory, HttpCoreContext context)
-
-
Method Detail
-
getPushHandlerFactory
public HandlerFactory<AsyncPushConsumer> getPushHandlerFactory()
- Specified by:
getPushHandlerFactory
in interfaceH2StreamHandler
-
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
-
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
-
isDone
public boolean isDone()
-
failed
public void failed(java.lang.Exception cause)
- Specified by:
failed
in interfaceH2StreamHandler
-
handle
public void handle(HttpException ex, boolean endStream) throws HttpException
- Specified by:
handle
in interfaceH2StreamHandler
- Throws:
HttpException
-
releaseResources
public void releaseResources()
- Specified by:
releaseResources
in interfaceResourceHolder
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-