@Contract(threading=SAFE_CONDITIONAL) public abstract class AbstractBinAsyncEntityProducer extends Object implements AsyncEntityProducer
| Constructor and Description |
|---|
AbstractBinAsyncEntityProducer(int fragmentSizeHint,
ContentType contentType) |
| Modifier and Type | Method and Description |
|---|---|
int |
available()
Returns the number of bytes immediately available for output.
|
protected abstract int |
availableData()
Returns the number of bytes immediately available for output.
|
String |
getContentEncoding()
Gets content encoding of this entity, if known.
|
long |
getContentLength()
Gets length of this entity, if known.
|
String |
getContentType()
Gets content type of this entity, if known.
|
Set<String> |
getTrailerNames()
Gets the preliminary declaration of trailing headers.
|
boolean |
isChunked()
Tests the chunked transfer hint for this entity.
|
void |
produce(DataStreamChannel channel)
Triggered to signal the ability of the underlying data channel
to accept more data.
|
protected abstract void |
produceData(StreamChannel<ByteBuffer> channel)
Triggered to signal the ability of the underlying byte channel
to accept more data.
|
void |
releaseResources() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitfailed, isRepeatablepublic AbstractBinAsyncEntityProducer(int fragmentSizeHint,
ContentType contentType)
protected abstract int availableData()
protected abstract void produceData(StreamChannel<ByteBuffer> channel) throws IOException
StreamChannel passed to this method is threading-safe.
channel - the data channel capable to accepting more data.IOExceptionpublic final String getContentType()
EntityDetailsgetContentType in interface EntityDetailsnull.public String getContentEncoding()
EntityDetailsgetContentEncoding in interface EntityDetailsnull.public boolean isChunked()
EntityDetailsThe behavior of wrapping entities is implementation dependent, but should respect the primary purpose.
isChunked in interface EntityDetailspublic Set<String> getTrailerNames()
EntityDetailsgetTrailerNames in interface EntityDetailspublic long getContentLength()
EntityDetailsgetContentLength in interface EntityDetails0.public final int available()
AsyncDataProduceravailable in interface AsyncDataProducerpublic final void produce(DataStreamChannel channel) throws IOException
AsyncDataProducerproduce in interface AsyncDataProducerchannel - the data channel capable to accepting more data.IOExceptionpublic void releaseResources()
releaseResources in interface ResourceHolderCopyright © 2005–2021 The Apache Software Foundation. All rights reserved.