io.undertow.conduits

## Class ChunkedStreamSourceConduit

- java.lang.Object
- - org.xnio.conduits.AbstractConduit<D>
  - - org.xnio.conduits.AbstractSourceConduit<D>
    - - org.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>
      - - io.undertow.conduits.ChunkedStreamSourceConduit

All Implemented Interfaces:
  org.xnio.conduits.Conduit, org.xnio.conduits.SourceConduit, org.xnio.conduits.StreamSourceConduit

    public class ChunkedStreamSourceConduit
    extends org.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>

Channel to de-chunkify data

Author:
  Stuart Douglas

### Field Summary

Fields
`static AttachmentKey<HeaderMap>` `TRAILERS` Deprecated.

### Fields inherited from class org.xnio.conduits.AbstractConduit

`next`

### Constructor Summary

Constructors
`protected` `ChunkedStreamSourceConduit(org.xnio.conduits.StreamSourceConduit next, io.undertow.conduits.ChunkedStreamSourceConduit.BufferWrapper bufferWrapper, ConduitListener<? super ChunkedStreamSourceConduit> finishListener, Attachable attachable, HttpServerExchange exchange, Closeable closeable, org.xnio.conduits.PushBackStreamSourceConduit channel)`
`` `ChunkedStreamSourceConduit(org.xnio.conduits.StreamSourceConduit next, HttpServerExchange exchange, ConduitListener<? super ChunkedStreamSourceConduit> finishListener)`
`` `ChunkedStreamSourceConduit(org.xnio.conduits.StreamSourceConduit next, org.xnio.conduits.PushBackStreamSourceConduit channel, ByteBufferPool pool, ConduitListener<? super ChunkedStreamSourceConduit> finishListener, Attachable attachable, Closeable closeable)`

### Method Summary

All Methods Instance Methods Concrete Methods
`boolean` `isFinished()`
`int` `read(ByteBuffer dst)`
`long` `read(ByteBuffer[] dsts, int offset, int length)`
`void` `terminateReads()`
`long` `transferTo(long count, ByteBuffer throughBuffer, org.xnio.channels.StreamSinkChannel target)`
`long` `transferTo(long position, long count, FileChannel target)`

### Methods inherited from class org.xnio.conduits.AbstractSourceConduit

`awaitReadable, awaitReadable, getReadThread, isReadResumed, isReadShutdown, resumeReads, setReadReadyHandler, suspendReads, wakeupReads`

### Methods inherited from class org.xnio.conduits.AbstractConduit

`getWorker`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.xnio.conduits.SourceConduit

`awaitReadable, awaitReadable, getReadThread, isReadResumed, isReadShutdown, resumeReads, setReadReadyHandler, suspendReads, wakeupReads`

### Methods inherited from interface org.xnio.conduits.Conduit

`getWorker`

### Field Detail

#### TRAILERS

    @Deprecated
    public static final AttachmentKey<HeaderMap> TRAILERS

Deprecated.
If the response has HTTP footers they are attached to the exchange under this key. They will only be available once the exchange has been fully read.

### Constructor Detail

#### ChunkedStreamSourceConduit

    public ChunkedStreamSourceConduit(org.xnio.conduits.StreamSourceConduit next,
                                      org.xnio.conduits.PushBackStreamSourceConduit channel,
                                      ByteBufferPool pool,
                                      ConduitListener<? super ChunkedStreamSourceConduit> finishListener,
                                      Attachable attachable,
                                      Closeable closeable)

#### ChunkedStreamSourceConduit

    public ChunkedStreamSourceConduit(org.xnio.conduits.StreamSourceConduit next,
                                      HttpServerExchange exchange,
                                      ConduitListener<? super ChunkedStreamSourceConduit> finishListener)

#### ChunkedStreamSourceConduit

    protected ChunkedStreamSourceConduit(org.xnio.conduits.StreamSourceConduit next,
                                         io.undertow.conduits.ChunkedStreamSourceConduit.BufferWrapper bufferWrapper,
                                         ConduitListener<? super ChunkedStreamSourceConduit> finishListener,
                                         Attachable attachable,
                                         HttpServerExchange exchange,
                                         Closeable closeable,
                                         org.xnio.conduits.PushBackStreamSourceConduit channel)

### Method Detail

#### transferTo

    public long transferTo(long position,
                           long count,
                           FileChannel target)
                    throws IOException

Specified by:
  `transferTo` in interface `org.xnio.conduits.StreamSourceConduit`
Overrides:
  `transferTo` in class `org.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>`
Throws:
  `IOException`

#### transferTo

    public long transferTo(long count,
                           ByteBuffer throughBuffer,
                           org.xnio.channels.StreamSinkChannel target)
                    throws IOException

Specified by:
  `transferTo` in interface `org.xnio.conduits.StreamSourceConduit`
Overrides:
  `transferTo` in class `org.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>`
Throws:
  `IOException`

#### read

    public long read(ByteBuffer[] dsts,
                     int offset,
                     int length)
              throws IOException

Specified by:
  `read` in interface `org.xnio.conduits.StreamSourceConduit`
Overrides:
  `read` in class `org.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>`
Throws:
  `IOException`

#### terminateReads

    public void terminateReads()
                        throws IOException

Specified by:
  `terminateReads` in interface `org.xnio.conduits.SourceConduit`
Overrides:
  `terminateReads` in class `org.xnio.conduits.AbstractSourceConduit<org.xnio.conduits.StreamSourceConduit>`
Throws:
  `IOException`

#### read

    public int read(ByteBuffer dst)
             throws IOException

Specified by:
  `read` in interface `org.xnio.conduits.StreamSourceConduit`
Overrides:
  `read` in class `org.xnio.conduits.AbstractStreamSourceConduit<org.xnio.conduits.StreamSourceConduit>`
Throws:
  `IOException`

#### isFinished

    public boolean isFinished()