|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.http.nio.protocol.BasicAsyncRequestProducer
@ThreadSafe public class BasicAsyncRequestProducer
Basic implementation of HttpAsyncRequestProducer
. The producer
can make use of the HttpAsyncContentProducer
interface to
efficiently stream out message content to the underlying non-blocking HTTP
connection, if it is implemented by the enclosed HttpEntity
.
HttpAsyncContentProducer
Constructor Summary | |
---|---|
protected |
BasicAsyncRequestProducer(HttpHost target,
HttpEntityEnclosingRequest request,
HttpAsyncContentProducer producer)
Creates a producer that can be used to transmit the given request message. |
|
BasicAsyncRequestProducer(HttpHost target,
HttpRequest request)
Creates a producer that can be used to transmit the given request message. |
Method Summary | |
---|---|
void |
close()
|
void |
failed(Exception ex)
Invoked to signal that the response processing terminated abnormally. |
HttpRequest |
generateRequest()
Invoked to generate a HTTP request message head. |
HttpHost |
getTarget()
Invoked to obtain the request target host. |
boolean |
isRepeatable()
Determines whether or not this producer is capable of producing HTTP request messages more than once. |
void |
produceContent(ContentEncoder encoder,
IOControl ioctrl)
Invoked to write out a chunk of content to the ContentEncoder . |
void |
requestCompleted(HttpContext context)
Invoked to signal that the request has been fully written out. |
void |
resetRequest()
Invoked to reset the producer to its initial state. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
protected BasicAsyncRequestProducer(HttpHost target, HttpEntityEnclosingRequest request, HttpAsyncContentProducer producer)
HttpEntity
whose properties are consistent with the behavior
of the content producer.
target
- target host.request
- request message.producer
- request content producer.public BasicAsyncRequestProducer(HttpHost target, HttpRequest request)
HttpEntity
it is also expected to implement HttpAsyncContentProducer
.
target
- target host.request
- request message.Method Detail |
---|
public HttpRequest generateRequest()
HttpAsyncRequestProducer
HttpEntityEnclosingRequest
interface if it is
to enclose a content entity. The HttpAsyncRequestProducer.produceContent(ContentEncoder, IOControl)
method will not be invoked if HttpEntityEnclosingRequest.getEntity()
returns null
.
generateRequest
in interface HttpAsyncRequestProducer
public HttpHost getTarget()
HttpAsyncRequestProducer
getTarget
in interface HttpAsyncRequestProducer
public void produceContent(ContentEncoder encoder, IOControl ioctrl) throws IOException
HttpAsyncRequestProducer
ContentEncoder
.
The IOControl
interface can be used to suspend output events
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.
produceContent
in interface HttpAsyncRequestProducer
encoder
- content encoder.ioctrl
- I/O control of the underlying connection.
IOException
- in case of an I/O errorpublic void requestCompleted(HttpContext context)
HttpAsyncRequestProducer
requestCompleted
in interface HttpAsyncRequestProducer
context
- HTTP contextpublic void failed(Exception ex)
HttpAsyncRequestProducer
failed
in interface HttpAsyncRequestProducer
ex
- exceptionpublic boolean isRepeatable()
HttpAsyncRequestProducer
isRepeatable
in interface HttpAsyncRequestProducer
public void resetRequest() throws IOException
HttpAsyncRequestProducer
resetRequest
in interface HttpAsyncRequestProducer
IOException
- in case of an I/O errorpublic void close() throws IOException
close
in interface Closeable
IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |