public final class FixedLengthStreamSourceConduit
extends org.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>
getRemaining()
to see if more bytes were pending when the channel was
closed.Constructor | Description |
---|---|
FixedLengthStreamSourceConduit(org.xnio.conduits.StreamSourceConduit next,
long contentLength,
ConduitListener<? super FixedLengthStreamSourceConduit> finishListener) |
Construct a new instance.
|
FixedLengthStreamSourceConduit(org.xnio.conduits.StreamSourceConduit next,
long contentLength,
ConduitListener<? super FixedLengthStreamSourceConduit> finishListener,
HttpServerExchange exchange) |
Construct a new instance.
|
Modifier and Type | Method | Description |
---|---|---|
void |
awaitReadable() |
|
void |
awaitReadable(long time,
TimeUnit timeUnit) |
|
long |
getRemaining() |
Get the number of remaining bytes.
|
boolean |
isReadResumed() |
|
int |
read(ByteBuffer dst) |
|
long |
read(ByteBuffer[] dsts) |
|
long |
read(ByteBuffer[] dsts,
int offset,
int length) |
|
void |
terminateReads() |
|
long |
transferTo(long position,
long count,
FileChannel target) |
|
long |
transferTo(long count,
ByteBuffer throughBuffer,
org.xnio.channels.StreamSinkChannel target) |
|
void |
wakeupReads() |
getReadThread, isReadShutdown, resumeReads, setReadReadyHandler, suspendReads
public FixedLengthStreamSourceConduit(org.xnio.conduits.StreamSourceConduit next, long contentLength, ConduitListener<? super FixedLengthStreamSourceConduit> finishListener, HttpServerExchange exchange)
Calling this constructor will replace the read listener of the underlying channel. The listener should be
restored from the finishListener
object. The underlying stream should not be closed while this wrapper
stream is active.
next
- the stream source channel to read fromcontentLength
- the amount of content to readfinishListener
- the listener to call once the stream is exhausted or closedexchange
- The server exchange. This is used to determine the max sizepublic FixedLengthStreamSourceConduit(org.xnio.conduits.StreamSourceConduit next, long contentLength, ConduitListener<? super FixedLengthStreamSourceConduit> finishListener)
Calling this constructor will replace the read listener of the underlying channel. The listener should be
restored from the finishListener
object. The underlying stream should not be closed while this wrapper
stream is active.
next
- the stream source channel to read fromcontentLength
- the amount of content to readfinishListener
- the listener to call once the stream is exhausted or closedpublic long transferTo(long position, long count, FileChannel target) throws IOException
transferTo
in class org.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>
IOException
public long transferTo(long count, ByteBuffer throughBuffer, org.xnio.channels.StreamSinkChannel target) throws IOException
transferTo
in class org.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>
IOException
public long read(ByteBuffer[] dsts, int offset, int length) throws IOException
read
in class org.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>
IOException
public long read(ByteBuffer[] dsts) throws IOException
IOException
public int read(ByteBuffer dst) throws IOException
read
in class org.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>
IOException
public boolean isReadResumed()
isReadResumed
in class org.xnio.conduits.AbstractSourceConduit<org.xnio.conduits.StreamSourceConduit>
public void wakeupReads()
wakeupReads
in class org.xnio.conduits.AbstractSourceConduit<org.xnio.conduits.StreamSourceConduit>
public void terminateReads() throws IOException
terminateReads
in class org.xnio.conduits.AbstractSourceConduit<org.xnio.conduits.StreamSourceConduit>
IOException
public void awaitReadable() throws IOException
awaitReadable
in class org.xnio.conduits.AbstractSourceConduit<org.xnio.conduits.StreamSourceConduit>
IOException
public void awaitReadable(long time, TimeUnit timeUnit) throws IOException
awaitReadable
in class org.xnio.conduits.AbstractSourceConduit<org.xnio.conduits.StreamSourceConduit>
IOException
public long getRemaining()
Copyright © 2018. All rights reserved.