io.undertow.protocols.ajp

## Class AjpClientResponseStreamSourceChannel

- java.lang.Object
- - io.undertow.server.protocol.framed.AbstractFramedStreamSourceChannel<AjpClientChannel,AbstractAjpClientStreamSourceChannel,AbstractAjpClientStreamSinkChannel>
  - - io.undertow.protocols.ajp.AbstractAjpClientStreamSourceChannel
    - - io.undertow.protocols.ajp.AjpClientResponseStreamSourceChannel

All Implemented Interfaces:
  Closeable, AutoCloseable, Channel, InterruptibleChannel, ReadableByteChannel, ScatteringByteChannel, org.xnio.channels.CloseableChannel, org.xnio.channels.Configurable, org.xnio.channels.StreamSourceChannel, org.xnio.channels.SuspendableReadChannel

    public class AjpClientResponseStreamSourceChannel
    extends AbstractAjpClientStreamSourceChannel

Author:
  Stuart Douglas

### Field Summary

### Fields inherited from interface org.xnio.channels.Configurable

`EMPTY`

### Constructor Summary

Constructors
Constructor and Description
`AjpClientResponseStreamSourceChannel(AjpClientChannel framedChannel, HeaderMap headers, int statusCode, String reasonPhrase, PooledByteBuffer frameData, int remaining)`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected void` `complete()` Method that is invoked when all data has been read.
`HeaderMap` `getHeaders()`
`String` `getReasonPhrase()`
`int` `getStatusCode()`
`protected void` `handleHeaderData(FrameHeaderData headerData)`
`void` `resumeReads()`
`void` `setFinishListener(org.xnio.ChannelListener<AjpClientResponseStreamSourceChannel> finishListener)`
`void` `suspendReads()`
`protected long` `updateFrameDataRemaining(PooledByteBuffer frameData, long frameDataRemaining)`
`void` `wakeupReads()`

### Methods inherited from class io.undertow.server.protocol.framed.AbstractFramedStreamSourceChannel

`addCloseTask, awaitReadable, awaitReadable, channelForciblyClosed, close, dataReady, getCloseSetter, getFramedChannel, getIoThread, getMaxStreamSize, getOption, getReadFrameCount, getReadSetter, getReadThread, getWorker, isComplete, isLastFrame, isOpen, isReadResumed, lastFrame, markStreamBroken, processFrameData, read, read, read, setMaxStreamSize, setOption, shutdownReads, supportsOption, transferTo, transferTo`

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

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

### Constructor Detail

#### AjpClientResponseStreamSourceChannel

    public AjpClientResponseStreamSourceChannel(AjpClientChannel framedChannel,
                                                HeaderMap headers,
                                                int statusCode,
                                                String reasonPhrase,
                                                PooledByteBuffer frameData,
                                                int remaining)

### Method Detail

#### getHeaders

    public HeaderMap getHeaders()

#### getStatusCode

    public int getStatusCode()

#### getReasonPhrase

    public String getReasonPhrase()

#### setFinishListener

    public void setFinishListener(org.xnio.ChannelListener<AjpClientResponseStreamSourceChannel> finishListener)

#### handleHeaderData

    protected void handleHeaderData(FrameHeaderData headerData)

Overrides:
  `handleHeaderData` in class `AbstractFramedStreamSourceChannel<AjpClientChannel,AbstractAjpClientStreamSourceChannel,AbstractAjpClientStreamSinkChannel>`

#### updateFrameDataRemaining

    protected long updateFrameDataRemaining(PooledByteBuffer frameData,
                                            long frameDataRemaining)

Overrides:
  `updateFrameDataRemaining` in class `AbstractFramedStreamSourceChannel<AjpClientChannel,AbstractAjpClientStreamSourceChannel,AbstractAjpClientStreamSinkChannel>`

#### complete

    protected void complete()
                     throws IOException

Description copied from class: `AbstractFramedStreamSourceChannel`
Method that is invoked when all data has been read.

Overrides:
  `complete` in class `AbstractFramedStreamSourceChannel<AjpClientChannel,AbstractAjpClientStreamSourceChannel,AbstractAjpClientStreamSinkChannel>`
Throws:
  `IOException`

#### wakeupReads

    public void wakeupReads()

Specified by:
  `wakeupReads` in interface `org.xnio.channels.SuspendableReadChannel`
Overrides:
  `wakeupReads` in class `AbstractFramedStreamSourceChannel<AjpClientChannel,AbstractAjpClientStreamSourceChannel,AbstractAjpClientStreamSinkChannel>`

#### resumeReads

    public void resumeReads()

Specified by:
  `resumeReads` in interface `org.xnio.channels.SuspendableReadChannel`
Overrides:
  `resumeReads` in class `AbstractFramedStreamSourceChannel<AjpClientChannel,AbstractAjpClientStreamSourceChannel,AbstractAjpClientStreamSinkChannel>`

#### suspendReads

    public void suspendReads()

Specified by:
  `suspendReads` in interface `org.xnio.channels.SuspendableReadChannel`
Overrides:
  `suspendReads` in class `AbstractFramedStreamSourceChannel<AjpClientChannel,AbstractAjpClientStreamSourceChannel,AbstractAjpClientStreamSinkChannel>`