public final class InflatingStreamSourceConduit extends AbstractStreamSourceConduit<StreamSourceConduit> implements StreamSourceConduit
next
Constructor and Description |
---|
InflatingStreamSourceConduit(StreamSourceConduit next,
Inflater inflater)
Construct a new instance.
|
Modifier and Type | Method and Description |
---|---|
void |
awaitReadable()
Block until this channel becomes readable again.
|
void |
awaitReadable(long time,
TimeUnit timeUnit)
Block until this conduit becomes readable again, or until the timeout expires.
|
int |
read(ByteBuffer dst)
Read a sequence of bytes from this conduit to the given buffer.
|
long |
read(ByteBuffer[] dsts) |
long |
read(ByteBuffer[] dsts,
int offset,
int length)
Read a sequence of bytes from this conduit to the given buffers.
|
void |
terminateReads()
Indicate that no more data will be read from this conduit.
|
long |
transferTo(long count,
ByteBuffer throughBuffer,
StreamSinkChannel target)
Transfers bytes into the given channel target.
|
long |
transferTo(long position,
long count,
FileChannel target)
Transfers bytes into the given file from this channel.
|
getReadThread, isReadResumed, isReadShutdown, resumeReads, setReadReadyHandler, suspendReads, wakeupReads
getWorker
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getReadThread, isReadResumed, isReadShutdown, resumeReads, setReadReadyHandler, suspendReads, wakeupReads
public InflatingStreamSourceConduit(StreamSourceConduit next, Inflater inflater)
next
- the underlying conduit for this channelinflater
- the initialized inflater to usepublic long transferTo(long position, long count, FileChannel target) throws IOException
StreamSourceConduit
transferTo
in interface StreamSourceConduit
transferTo
in class AbstractStreamSourceConduit<StreamSourceConduit>
position
- the position within the file from which the transfer is to begincount
- the number of bytes to be transferredtarget
- the file to write toIOException
- if an I/O error occurspublic long transferTo(long count, ByteBuffer throughBuffer, StreamSinkChannel target) throws IOException
StreamSourceConduit
throughBuffer
will be cleared. On exit, the buffer will be
flipped for emptying, and may possibly be empty or may contain data. If this method returns a value less than
count
, then the remaining data in throughBuffer
may contain data read from this channel which must
be written to target
to complete the operation.transferTo
in interface StreamSourceConduit
transferTo
in class AbstractStreamSourceConduit<StreamSourceConduit>
count
- the number of bytes to be transferredthroughBuffer
- the buffer to copy through.target
- the destination to write toIOException
- if an I/O error occurspublic int read(ByteBuffer dst) throws IOException
StreamSourceConduit
read
in interface StreamSourceConduit
read
in class AbstractStreamSourceConduit<StreamSourceConduit>
SourceConduit.terminateReads()
method was previously calledIOException
- if an error occurspublic long read(ByteBuffer[] dsts) throws IOException
IOException
public long read(ByteBuffer[] dsts, int offset, int length) throws IOException
StreamSourceConduit
read
in interface StreamSourceConduit
read
in class AbstractStreamSourceConduit<StreamSourceConduit>
offset
- the offset into the buffer arraylength
- the number of buffers to fillSourceConduit.terminateReads()
method was previously calledIOException
- if an error occurspublic void terminateReads() throws IOException
SourceConduit
terminateReads
in interface SourceConduit
terminateReads
in class AbstractSourceConduit<StreamSourceConduit>
IOException
- if there was a problempublic void awaitReadable() throws IOException
SourceConduit
awaitReadable
in interface SourceConduit
awaitReadable
in class AbstractSourceConduit<StreamSourceConduit>
InterruptedIOException
- if the operation is interrupted; the thread's interrupt flag will be set as wellIOException
- if an I/O error occurspublic void awaitReadable(long time, TimeUnit timeUnit) throws IOException
SourceConduit
awaitReadable
in interface SourceConduit
awaitReadable
in class AbstractSourceConduit<StreamSourceConduit>
time
- the time to waittimeUnit
- the time unitInterruptedIOException
- if the operation is interrupted; the thread's interrupt flag will be set as wellIOException
- if an I/O error occursCopyright © 2017 JBoss by Red Hat. All rights reserved.