Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.http.nio.protocol
Interface HttpAsyncResponseProducer

All Superinterfaces:
  Closeable

All Known Implementing Classes:
  BasicAsyncResponseProducer, ErrorResponseProducer

    public interface HttpAsyncResponseProducer

extends Closeable

`HttpAsyncResponseProducer` is a callback interface whose methods get invoked to generate an HTTP response message and to stream message content to a non-blocking HTTP connection on the server side.

Since:
  4.2

Method Summary
`void` | `failed(Exception ex)` Invoked to signal that the response processing terminated abnormally.
`HttpResponse` | `generateResponse()` Invoked to generate a HTTP response message head.
`void` | `produceContent(ContentEncoder encoder, IOControl ioControl)` Invoked to write out a chunk of content to the `ContentEncoder`.
`void` | `responseCompleted(HttpContext context)` Invoked to signal that the response has been fully written out.

Methods inherited from interface java.io.Closeable
`close`

Method Detail

### generateResponse

    HttpResponse generateResponse()

  Invoked to generate a HTTP response message head.

  Returns:
    HTTP response message.

### produceContent

    void produceContent(ContentEncoder encoder,
                        IOControl ioControl)
                        throws IOException

  Invoked to write out a chunk of content to the `ContentEncoder`. The `IOControl` interface can be used to suspend output event notifications if the producer is temporarily unable to produce more content.

  When all content is finished, the producer MUST call `ContentEncoder.complete()`. Failure to do so may cause the entity to be incorrectly delimited.

  Please note that the `ContentEncoder` object is not thread-safe and should only be used within the context of this method call. The `IOControl` object can be shared and used on other thread to resume output event notifications when more content is made available.

  Parameters:
    `encoder` - content encoder.
    `ioControl` - I/O control of the underlying connection.
  Throws:
    `IOException` - in case of an I/O error

### responseCompleted

    void responseCompleted(HttpContext context)

  Invoked to signal that the response has been fully written out.

  Parameters:
    `context` - HTTP context

### failed

    void failed(Exception ex)

  Invoked to signal that the response processing terminated abnormally.

  Parameters:
    `ex` - exception

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2005–2021 The Apache Software Foundation. All rights reserved.