Package io.undertow.conduits
Class FinishableStreamSourceConduit
- java.lang.Object
-
- org.xnio.conduits.AbstractConduit<D>
-
- org.xnio.conduits.AbstractSourceConduit<D>
-
- org.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>
-
- io.undertow.conduits.FinishableStreamSourceConduit
-
- All Implemented Interfaces:
org.xnio.conduits.Conduit
,org.xnio.conduits.SourceConduit
,org.xnio.conduits.StreamSourceConduit
public final class FinishableStreamSourceConduit extends org.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>
A conduit that calls a finish listener when there is no data left in the underlying conduit.- Author:
- Stuart Douglas
-
-
Constructor Summary
Constructors Constructor Description FinishableStreamSourceConduit(org.xnio.conduits.StreamSourceConduit next, ConduitListener<? super FinishableStreamSourceConduit> finishListener)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
read(java.nio.ByteBuffer dst)
long
read(java.nio.ByteBuffer[] dsts, int offset, int length)
long
transferTo(long position, long count, java.nio.channels.FileChannel target)
long
transferTo(long count, java.nio.ByteBuffer throughBuffer, org.xnio.channels.StreamSinkChannel target)
-
Methods inherited from class org.xnio.conduits.AbstractSourceConduit
awaitReadable, awaitReadable, getReadThread, isReadResumed, isReadShutdown, resumeReads, setReadReadyHandler, suspendReads, terminateReads, wakeupReads
-
-
-
-
Constructor Detail
-
FinishableStreamSourceConduit
public FinishableStreamSourceConduit(org.xnio.conduits.StreamSourceConduit next, ConduitListener<? super FinishableStreamSourceConduit> finishListener)
-
-
Method Detail
-
transferTo
public long transferTo(long position, long count, java.nio.channels.FileChannel target) throws java.io.IOException
- Specified by:
transferTo
in interfaceorg.xnio.conduits.StreamSourceConduit
- Overrides:
transferTo
in classorg.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>
- Throws:
java.io.IOException
-
transferTo
public long transferTo(long count, java.nio.ByteBuffer throughBuffer, org.xnio.channels.StreamSinkChannel target) throws java.io.IOException
- Specified by:
transferTo
in interfaceorg.xnio.conduits.StreamSourceConduit
- Overrides:
transferTo
in classorg.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>
- Throws:
java.io.IOException
-
read
public long read(java.nio.ByteBuffer[] dsts, int offset, int length) throws java.io.IOException
- Specified by:
read
in interfaceorg.xnio.conduits.StreamSourceConduit
- Overrides:
read
in classorg.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>
- Throws:
java.io.IOException
-
read
public int read(java.nio.ByteBuffer dst) throws java.io.IOException
- Specified by:
read
in interfaceorg.xnio.conduits.StreamSourceConduit
- Overrides:
read
in classorg.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>
- Throws:
java.io.IOException
-
-