blob: 152baada7601f736dc726e7c6b76ddbee44ef8d1 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Tue Sep 18 20:44:15 GMT+01:00 2012 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
BasicAsyncRequestProducer (HttpComponents Core 4.2.2 API)
</TITLE>
<META NAME="keywords" CONTENT="org.apache.http.nio.protocol.BasicAsyncRequestProducer class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="BasicAsyncRequestProducer (HttpComponents Core 4.2.2 API)";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/BasicAsyncRequestProducer.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncRequestHandler.html" title="class in org.apache.http.nio.protocol"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncResponseConsumer.html" title="class in org.apache.http.nio.protocol"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?org/apache/http/nio/protocol/BasicAsyncRequestProducer.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="BasicAsyncRequestProducer.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.http.nio.protocol</FONT>
<BR>
Class BasicAsyncRequestProducer</H2>
<PRE>
<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">java.lang.Object</A>
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.http.nio.protocol.BasicAsyncRequestProducer</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/io/Closeable.html" title="class or interface in java.io">Closeable</A>, <A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncRequestProducer</A></DD>
</DL>
<HR>
<DL>
<DT><PRE><FONT SIZE="-1"><A HREF="../../../../../org/apache/http/annotation/ThreadSafe.html" title="annotation in org.apache.http.annotation">@ThreadSafe</A>
</FONT>public class <B>BasicAsyncRequestProducer</B><DT>extends <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A><DT>implements <A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncRequestProducer</A></DL>
</PRE>
<P>
Basic implementation of <A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html" title="interface in org.apache.http.nio.protocol"><CODE>HttpAsyncRequestProducer</CODE></A>. The producer
can make use of the <A HREF="../../../../../org/apache/http/nio/entity/HttpAsyncContentProducer.html" title="interface in org.apache.http.nio.entity"><CODE>HttpAsyncContentProducer</CODE></A> interface to
efficiently stream out message content to the underlying non-blocking HTTP
connection, if it is implemented by the enclosed <A HREF="../../../../../org/apache/http/HttpEntity.html" title="interface in org.apache.http"><CODE>HttpEntity</CODE></A>.
<P>
<P>
<DL>
<DT><B>Since:</B></DT>
<DD>4.2</DD>
<DT><B>See Also:</B><DD><A HREF="../../../../../org/apache/http/nio/entity/HttpAsyncContentProducer.html" title="interface in org.apache.http.nio.entity"><CODE>HttpAsyncContentProducer</CODE></A></DL>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected </CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncRequestProducer.html#BasicAsyncRequestProducer(org.apache.http.HttpHost, org.apache.http.HttpEntityEnclosingRequest, org.apache.http.nio.entity.HttpAsyncContentProducer)">BasicAsyncRequestProducer</A></B>(<A HREF="../../../../../org/apache/http/HttpHost.html" title="class in org.apache.http">HttpHost</A>&nbsp;target,
<A HREF="../../../../../org/apache/http/HttpEntityEnclosingRequest.html" title="interface in org.apache.http">HttpEntityEnclosingRequest</A>&nbsp;request,
<A HREF="../../../../../org/apache/http/nio/entity/HttpAsyncContentProducer.html" title="interface in org.apache.http.nio.entity">HttpAsyncContentProducer</A>&nbsp;producer)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a producer that can be used to transmit the given request
message.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncRequestProducer.html#BasicAsyncRequestProducer(org.apache.http.HttpHost, org.apache.http.HttpRequest)">BasicAsyncRequestProducer</A></B>(<A HREF="../../../../../org/apache/http/HttpHost.html" title="class in org.apache.http">HttpHost</A>&nbsp;target,
<A HREF="../../../../../org/apache/http/HttpRequest.html" title="interface in org.apache.http">HttpRequest</A>&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a producer that can be used to transmit the given request
message.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncRequestProducer.html#close()">close</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncRequestProducer.html#failed(java.lang.Exception)">failed</A></B>(<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Exception.html" title="class or interface in java.lang">Exception</A>&nbsp;ex)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoked to signal that the response processing terminated abnormally.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/http/HttpRequest.html" title="interface in org.apache.http">HttpRequest</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncRequestProducer.html#generateRequest()">generateRequest</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoked to generate a HTTP request message head.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/http/HttpHost.html" title="class in org.apache.http">HttpHost</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncRequestProducer.html#getTarget()">getTarget</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoked to obtain the request target host.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncRequestProducer.html#isRepeatable()">isRepeatable</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Determines whether or not this producer is capable of producing
HTTP request messages more than once.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncRequestProducer.html#produceContent(org.apache.http.nio.ContentEncoder, org.apache.http.nio.IOControl)">produceContent</A></B>(<A HREF="../../../../../org/apache/http/nio/ContentEncoder.html" title="interface in org.apache.http.nio">ContentEncoder</A>&nbsp;encoder,
<A HREF="../../../../../org/apache/http/nio/IOControl.html" title="interface in org.apache.http.nio">IOControl</A>&nbsp;ioctrl)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoked to write out a chunk of content to the <A HREF="../../../../../org/apache/http/nio/ContentEncoder.html" title="interface in org.apache.http.nio"><CODE>ContentEncoder</CODE></A>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncRequestProducer.html#requestCompleted(org.apache.http.protocol.HttpContext)">requestCompleted</A></B>(<A HREF="../../../../../org/apache/http/protocol/HttpContext.html" title="interface in org.apache.http.protocol">HttpContext</A>&nbsp;context)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoked to signal that the request has been fully written out.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncRequestProducer.html#resetRequest()">resetRequest</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoked to reset the producer to its initial state.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="BasicAsyncRequestProducer(org.apache.http.HttpHost, org.apache.http.HttpEntityEnclosingRequest, org.apache.http.nio.entity.HttpAsyncContentProducer)"><!-- --></A><H3>
BasicAsyncRequestProducer</H3>
<PRE>
protected <B>BasicAsyncRequestProducer</B>(<A HREF="../../../../../org/apache/http/HttpHost.html" title="class in org.apache.http">HttpHost</A>&nbsp;target,
<A HREF="../../../../../org/apache/http/HttpEntityEnclosingRequest.html" title="interface in org.apache.http">HttpEntityEnclosingRequest</A>&nbsp;request,
<A HREF="../../../../../org/apache/http/nio/entity/HttpAsyncContentProducer.html" title="interface in org.apache.http.nio.entity">HttpAsyncContentProducer</A>&nbsp;producer)</PRE>
<DL>
<DD>Creates a producer that can be used to transmit the given request
message. The given content producer will be used to stream out message
content. Please note that the request message is expected to enclose
an <A HREF="../../../../../org/apache/http/HttpEntity.html" title="interface in org.apache.http"><CODE>HttpEntity</CODE></A> whose properties are consistent with the behavior
of the content producer.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>target</CODE> - target host.<DD><CODE>request</CODE> - request message.<DD><CODE>producer</CODE> - request content producer.</DL>
</DL>
<HR>
<A NAME="BasicAsyncRequestProducer(org.apache.http.HttpHost, org.apache.http.HttpRequest)"><!-- --></A><H3>
BasicAsyncRequestProducer</H3>
<PRE>
public <B>BasicAsyncRequestProducer</B>(<A HREF="../../../../../org/apache/http/HttpHost.html" title="class in org.apache.http">HttpHost</A>&nbsp;target,
<A HREF="../../../../../org/apache/http/HttpRequest.html" title="interface in org.apache.http">HttpRequest</A>&nbsp;request)</PRE>
<DL>
<DD>Creates a producer that can be used to transmit the given request
message. If the request message encloses an <A HREF="../../../../../org/apache/http/HttpEntity.html" title="interface in org.apache.http"><CODE>HttpEntity</CODE></A>
it is also expected to implement <A HREF="../../../../../org/apache/http/nio/entity/HttpAsyncContentProducer.html" title="interface in org.apache.http.nio.entity"><CODE>HttpAsyncContentProducer</CODE></A>.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>target</CODE> - target host.<DD><CODE>request</CODE> - request message.</DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="generateRequest()"><!-- --></A><H3>
generateRequest</H3>
<PRE>
public <A HREF="../../../../../org/apache/http/HttpRequest.html" title="interface in org.apache.http">HttpRequest</A> <B>generateRequest</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#generateRequest()">HttpAsyncRequestProducer</A></CODE></B></DD>
<DD>Invoked to generate a HTTP request message head. The message is expected
to implement the <A HREF="../../../../../org/apache/http/HttpEntityEnclosingRequest.html" title="interface in org.apache.http"><CODE>HttpEntityEnclosingRequest</CODE></A> interface if it is
to enclose a content entity. The <A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#produceContent(org.apache.http.nio.ContentEncoder, org.apache.http.nio.IOControl)"><CODE>HttpAsyncRequestProducer.produceContent(ContentEncoder, IOControl)</CODE></A>
method will not be invoked if <A HREF="../../../../../org/apache/http/HttpEntityEnclosingRequest.html#getEntity()"><CODE>HttpEntityEnclosingRequest.getEntity()</CODE></A>
returns <code>null</code>.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#generateRequest()">generateRequest</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncRequestProducer</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>HTTP request message.</DL>
</DD>
</DL>
<HR>
<A NAME="getTarget()"><!-- --></A><H3>
getTarget</H3>
<PRE>
public <A HREF="../../../../../org/apache/http/HttpHost.html" title="class in org.apache.http">HttpHost</A> <B>getTarget</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#getTarget()">HttpAsyncRequestProducer</A></CODE></B></DD>
<DD>Invoked to obtain the request target host.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#getTarget()">getTarget</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncRequestProducer</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="produceContent(org.apache.http.nio.ContentEncoder, org.apache.http.nio.IOControl)"><!-- --></A><H3>
produceContent</H3>
<PRE>
public void <B>produceContent</B>(<A HREF="../../../../../org/apache/http/nio/ContentEncoder.html" title="interface in org.apache.http.nio">ContentEncoder</A>&nbsp;encoder,
<A HREF="../../../../../org/apache/http/nio/IOControl.html" title="interface in org.apache.http.nio">IOControl</A>&nbsp;ioctrl)
throws <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#produceContent(org.apache.http.nio.ContentEncoder, org.apache.http.nio.IOControl)">HttpAsyncRequestProducer</A></CODE></B></DD>
<DD>Invoked to write out a chunk of content to the <A HREF="../../../../../org/apache/http/nio/ContentEncoder.html" title="interface in org.apache.http.nio"><CODE>ContentEncoder</CODE></A>.
The <A HREF="../../../../../org/apache/http/nio/IOControl.html" title="interface in org.apache.http.nio"><CODE>IOControl</CODE></A> interface can be used to suspend output event
notifications if the producer is temporarily unable to produce more content.
<p/>
When all content is finished, the producer <b>MUST</b> call
<A HREF="../../../../../org/apache/http/nio/ContentEncoder.html#complete()"><CODE>ContentEncoder.complete()</CODE></A>. Failure to do so may cause the entity
to be incorrectly delimited.
<p/>
Please note that the <A HREF="../../../../../org/apache/http/nio/ContentEncoder.html" title="interface in org.apache.http.nio"><CODE>ContentEncoder</CODE></A> object is not thread-safe and
should only be used within the context of this method call.
The <A HREF="../../../../../org/apache/http/nio/IOControl.html" title="interface in org.apache.http.nio"><CODE>IOControl</CODE></A> object can be shared and used on other thread
to resume output event notifications when more content is made available.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#produceContent(org.apache.http.nio.ContentEncoder, org.apache.http.nio.IOControl)">produceContent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncRequestProducer</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>encoder</CODE> - content encoder.<DD><CODE>ioctrl</CODE> - I/O control of the underlying connection.
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></CODE> - in case of an I/O error</DL>
</DD>
</DL>
<HR>
<A NAME="requestCompleted(org.apache.http.protocol.HttpContext)"><!-- --></A><H3>
requestCompleted</H3>
<PRE>
public void <B>requestCompleted</B>(<A HREF="../../../../../org/apache/http/protocol/HttpContext.html" title="interface in org.apache.http.protocol">HttpContext</A>&nbsp;context)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#requestCompleted(org.apache.http.protocol.HttpContext)">HttpAsyncRequestProducer</A></CODE></B></DD>
<DD>Invoked to signal that the request has been fully written out.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#requestCompleted(org.apache.http.protocol.HttpContext)">requestCompleted</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncRequestProducer</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>context</CODE> - HTTP context</DL>
</DD>
</DL>
<HR>
<A NAME="failed(java.lang.Exception)"><!-- --></A><H3>
failed</H3>
<PRE>
public void <B>failed</B>(<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Exception.html" title="class or interface in java.lang">Exception</A>&nbsp;ex)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#failed(java.lang.Exception)">HttpAsyncRequestProducer</A></CODE></B></DD>
<DD>Invoked to signal that the response processing terminated abnormally.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#failed(java.lang.Exception)">failed</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncRequestProducer</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>ex</CODE> - exception</DL>
</DD>
</DL>
<HR>
<A NAME="isRepeatable()"><!-- --></A><H3>
isRepeatable</H3>
<PRE>
public boolean <B>isRepeatable</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#isRepeatable()">HttpAsyncRequestProducer</A></CODE></B></DD>
<DD>Determines whether or not this producer is capable of producing
HTTP request messages more than once.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#isRepeatable()">isRepeatable</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncRequestProducer</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="resetRequest()"><!-- --></A><H3>
resetRequest</H3>
<PRE>
public void <B>resetRequest</B>()
throws <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#resetRequest()">HttpAsyncRequestProducer</A></CODE></B></DD>
<DD>Invoked to reset the producer to its initial state. Repeatable request
producers are expected to release currently allocated resources that are
no longer needed or re-acquire resources needed to repeat the process.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html#resetRequest()">resetRequest</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncRequestProducer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncRequestProducer</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></CODE> - in case of an I/O error</DL>
</DD>
</DL>
<HR>
<A NAME="close()"><!-- --></A><H3>
close</H3>
<PRE>
public void <B>close</B>()
throws <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/io/Closeable.html#close()" title="class or interface in java.io">close</A></CODE> in interface <CODE><A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/io/Closeable.html" title="class or interface in java.io">Closeable</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></CODE></DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/BasicAsyncRequestProducer.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncRequestHandler.html" title="class in org.apache.http.nio.protocol"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncResponseConsumer.html" title="class in org.apache.http.nio.protocol"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?org/apache/http/nio/protocol/BasicAsyncRequestProducer.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="BasicAsyncRequestProducer.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
Copyright &#169; 2005-2012 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>