<!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>
AbstractAsyncResponseConsumer (HttpComponents Core 4.2.2 API)
</TITLE>

<META NAME="keywords" CONTENT="org.apache.http.nio.protocol.AbstractAsyncResponseConsumer class">

<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    parent.document.title="AbstractAsyncResponseConsumer (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/AbstractAsyncResponseConsumer.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/AbstractAsyncRequestConsumer.html" title="class in org.apache.http.nio.protocol"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/http/nio/protocol/AsyncNHttpClientHandler.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/AbstractAsyncResponseConsumer.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="AbstractAsyncResponseConsumer.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 AbstractAsyncResponseConsumer&lt;T&gt;</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.AbstractAsyncResponseConsumer&lt;T&gt;</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/concurrent/Cancellable.html" title="interface in org.apache.http.concurrent">Cancellable</A>, <A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncResponseConsumer</A>&lt;T&gt;</DD>
</DL>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../../org/apache/http/nio/protocol/BasicAsyncResponseConsumer.html" title="class in org.apache.http.nio.protocol">BasicAsyncResponseConsumer</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 abstract class <B>AbstractAsyncResponseConsumer&lt;T&gt;</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/HttpAsyncResponseConsumer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncResponseConsumer</A>&lt;T&gt;</DL>
</PRE>

<P>
Abstract <A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html" title="interface in org.apache.http.nio.protocol"><CODE>HttpAsyncResponseConsumer</CODE></A> implementation that relieves its
 subclasses form having to synchronize access to internal instance variables
 and provides a number of protected methods that they need to implement.
<P>

<P>
<DL>
<DT><B>Since:</B></DT>
  <DD>4.2</DD>
</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><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#AbstractAsyncResponseConsumer()">AbstractAsyncResponseConsumer</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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>protected abstract &nbsp;<A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html" title="type parameter in AbstractAsyncResponseConsumer">T</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#buildResult(org.apache.http.protocol.HttpContext)">buildResult</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 generate a result object from the received HTTP response
 message.</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/AbstractAsyncResponseConsumer.html#cancel()">cancel</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/AbstractAsyncResponseConsumer.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/AbstractAsyncResponseConsumer.html#consumeContent(org.apache.http.nio.ContentDecoder, org.apache.http.nio.IOControl)">consumeContent</A></B>(<A HREF="../../../../../org/apache/http/nio/ContentDecoder.html" title="interface in org.apache.http.nio">ContentDecoder</A>&nbsp;decoder,
               <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;Use <A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#onContentReceived(org.apache.http.nio.ContentDecoder, org.apache.http.nio.IOControl)"><CODE>onContentReceived(ContentDecoder, IOControl)</CODE></A> instead.</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/AbstractAsyncResponseConsumer.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="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Exception.html" title="class or interface in java.lang">Exception</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#getException()">getException</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns an exception in case of an abnormal termination.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html" title="type parameter in AbstractAsyncResponseConsumer">T</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#getResult()">getResult</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a result of the response processing, when available.</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/AbstractAsyncResponseConsumer.html#isDone()">isDone</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Determines whether or not the response processing completed.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected abstract &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#onContentReceived(org.apache.http.nio.ContentDecoder, org.apache.http.nio.IOControl)">onContentReceived</A></B>(<A HREF="../../../../../org/apache/http/nio/ContentDecoder.html" title="interface in org.apache.http.nio">ContentDecoder</A>&nbsp;decoder,
                  <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 process a chunk of content from the <A HREF="../../../../../org/apache/http/nio/ContentDecoder.html" title="interface in org.apache.http.nio"><CODE>ContentDecoder</CODE></A>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected abstract &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#onEntityEnclosed(org.apache.http.HttpEntity, org.apache.http.entity.ContentType)">onEntityEnclosed</A></B>(<A HREF="../../../../../org/apache/http/HttpEntity.html" title="interface in org.apache.http">HttpEntity</A>&nbsp;entity,
                 <A HREF="../../../../../org/apache/http/entity/ContentType.html" title="class in org.apache.http.entity">ContentType</A>&nbsp;contentType)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoked if the response message encloses a content entity.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected abstract &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#onResponseReceived(org.apache.http.HttpResponse)">onResponseReceived</A></B>(<A HREF="../../../../../org/apache/http/HttpResponse.html" title="interface in org.apache.http">HttpResponse</A>&nbsp;response)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoked when a HTTP response message is received.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected abstract &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#releaseResources()">releaseResources</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Invoked to release all system resources currently allocated.</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/AbstractAsyncResponseConsumer.html#responseCompleted(org.apache.http.protocol.HttpContext)">responseCompleted</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;Use <A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#buildResult(org.apache.http.protocol.HttpContext)"><CODE>buildResult(HttpContext)</CODE></A> instead.</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/AbstractAsyncResponseConsumer.html#responseReceived(org.apache.http.HttpResponse)">responseReceived</A></B>(<A HREF="../../../../../org/apache/http/HttpResponse.html" title="interface in org.apache.http">HttpResponse</A>&nbsp;response)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Use <A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#onResponseReceived(org.apache.http.HttpResponse)"><CODE>onResponseReceived(HttpResponse)</CODE></A> instead.</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="AbstractAsyncResponseConsumer()"><!-- --></A><H3>
AbstractAsyncResponseConsumer</H3>
<PRE>
public <B>AbstractAsyncResponseConsumer</B>()</PRE>
<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="onResponseReceived(org.apache.http.HttpResponse)"><!-- --></A><H3>
onResponseReceived</H3>
<PRE>
protected abstract void <B>onResponseReceived</B>(<A HREF="../../../../../org/apache/http/HttpResponse.html" title="interface in org.apache.http">HttpResponse</A>&nbsp;response)
                                    throws <A HREF="../../../../../org/apache/http/HttpException.html" title="class in org.apache.http">HttpException</A>,
                                           <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>Invoked when a HTTP response message is received. Please note
 that the <A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#onContentReceived(org.apache.http.nio.ContentDecoder, org.apache.http.nio.IOControl)"><CODE>onContentReceived(ContentDecoder, IOControl)</CODE></A> method
 will be invoked only if the response messages has a content entity
 enclosed.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>response</CODE> - HTTP response message.
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../../org/apache/http/HttpException.html" title="class in org.apache.http">HttpException</A></CODE> - in case of HTTP protocol violation
<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="onContentReceived(org.apache.http.nio.ContentDecoder, org.apache.http.nio.IOControl)"><!-- --></A><H3>
onContentReceived</H3>
<PRE>
protected abstract void <B>onContentReceived</B>(<A HREF="../../../../../org/apache/http/nio/ContentDecoder.html" title="interface in org.apache.http.nio">ContentDecoder</A>&nbsp;decoder,
                                          <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>Invoked to process a chunk of content from the <A HREF="../../../../../org/apache/http/nio/ContentDecoder.html" title="interface in org.apache.http.nio"><CODE>ContentDecoder</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 input events
 if the consumer is temporarily unable to consume more content.
 <p/>
 The consumer can use the <A HREF="../../../../../org/apache/http/nio/ContentDecoder.html#isCompleted()"><CODE>ContentDecoder.isCompleted()</CODE></A> method
 to find out whether or not the message content has been fully consumed.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>decoder</CODE> - content decoder.<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="onEntityEnclosed(org.apache.http.HttpEntity, org.apache.http.entity.ContentType)"><!-- --></A><H3>
onEntityEnclosed</H3>
<PRE>
protected abstract void <B>onEntityEnclosed</B>(<A HREF="../../../../../org/apache/http/HttpEntity.html" title="interface in org.apache.http">HttpEntity</A>&nbsp;entity,
                                         <A HREF="../../../../../org/apache/http/entity/ContentType.html" title="class in org.apache.http.entity">ContentType</A>&nbsp;contentType)
                                  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>Invoked if the response message encloses a content entity.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>entity</CODE> - HTTP entity<DD><CODE>contentType</CODE> - expected content type.
<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="buildResult(org.apache.http.protocol.HttpContext)"><!-- --></A><H3>
buildResult</H3>
<PRE>
protected abstract <A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html" title="type parameter in AbstractAsyncResponseConsumer">T</A> <B>buildResult</B>(<A HREF="../../../../../org/apache/http/protocol/HttpContext.html" title="interface in org.apache.http.protocol">HttpContext</A>&nbsp;context)
                          throws <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></PRE>
<DL>
<DD>Invoked to generate a result object from the received HTTP response
 message.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>context</CODE> - HTTP context.
<DT><B>Returns:</B><DD>result of the response processing.
<DT><B>Throws:</B>
<DD><CODE><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></CODE> - in case of an abnormal termination.</DL>
</DD>
</DL>
<HR>

<A NAME="releaseResources()"><!-- --></A><H3>
releaseResources</H3>
<PRE>
protected abstract void <B>releaseResources</B>()</PRE>
<DL>
<DD>Invoked to release all system resources currently allocated.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="responseReceived(org.apache.http.HttpResponse)"><!-- --></A><H3>
responseReceived</H3>
<PRE>
public final void <B>responseReceived</B>(<A HREF="../../../../../org/apache/http/HttpResponse.html" title="interface in org.apache.http">HttpResponse</A>&nbsp;response)
                            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>,
                                   <A HREF="../../../../../org/apache/http/HttpException.html" title="class in org.apache.http">HttpException</A></PRE>
<DL>
<DD>Use <A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#onResponseReceived(org.apache.http.HttpResponse)"><CODE>onResponseReceived(HttpResponse)</CODE></A> instead.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html#responseReceived(org.apache.http.HttpResponse)">responseReceived</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncResponseConsumer</A>&lt;<A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html" title="type parameter in AbstractAsyncResponseConsumer">T</A>&gt;</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>response</CODE> - HTTP response message.
<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
<DD><CODE><A HREF="../../../../../org/apache/http/HttpException.html" title="class in org.apache.http">HttpException</A></CODE> - in case of HTTP protocol violation</DL>
</DD>
</DL>
<HR>

<A NAME="consumeContent(org.apache.http.nio.ContentDecoder, org.apache.http.nio.IOControl)"><!-- --></A><H3>
consumeContent</H3>
<PRE>
public final void <B>consumeContent</B>(<A HREF="../../../../../org/apache/http/nio/ContentDecoder.html" title="interface in org.apache.http.nio">ContentDecoder</A>&nbsp;decoder,
                                 <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>Use <A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#onContentReceived(org.apache.http.nio.ContentDecoder, org.apache.http.nio.IOControl)"><CODE>onContentReceived(ContentDecoder, IOControl)</CODE></A> instead.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html#consumeContent(org.apache.http.nio.ContentDecoder, org.apache.http.nio.IOControl)">consumeContent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncResponseConsumer</A>&lt;<A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html" title="type parameter in AbstractAsyncResponseConsumer">T</A>&gt;</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>decoder</CODE> - content decoder.<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="responseCompleted(org.apache.http.protocol.HttpContext)"><!-- --></A><H3>
responseCompleted</H3>
<PRE>
public final void <B>responseCompleted</B>(<A HREF="../../../../../org/apache/http/protocol/HttpContext.html" title="interface in org.apache.http.protocol">HttpContext</A>&nbsp;context)</PRE>
<DL>
<DD>Use <A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html#buildResult(org.apache.http.protocol.HttpContext)"><CODE>buildResult(HttpContext)</CODE></A> instead.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html#responseCompleted(org.apache.http.protocol.HttpContext)">responseCompleted</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncResponseConsumer</A>&lt;<A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html" title="type parameter in AbstractAsyncResponseConsumer">T</A>&gt;</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>context</CODE> - HTTP context</DL>
</DD>
</DL>
<HR>

<A NAME="cancel()"><!-- --></A><H3>
cancel</H3>
<PRE>
public final boolean <B>cancel</B>()</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/http/concurrent/Cancellable.html#cancel()">cancel</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/concurrent/Cancellable.html" title="interface in org.apache.http.concurrent">Cancellable</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="failed(java.lang.Exception)"><!-- --></A><H3>
failed</H3>
<PRE>
public final 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/HttpAsyncResponseConsumer.html#failed(java.lang.Exception)">HttpAsyncResponseConsumer</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/HttpAsyncResponseConsumer.html#failed(java.lang.Exception)">failed</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncResponseConsumer</A>&lt;<A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html" title="type parameter in AbstractAsyncResponseConsumer">T</A>&gt;</CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>ex</CODE> - exception</DL>
</DD>
</DL>
<HR>

<A NAME="close()"><!-- --></A><H3>
close</H3>
<PRE>
public final void <B>close</B>()</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>
</DL>
</DD>
</DL>
<HR>

<A NAME="getException()"><!-- --></A><H3>
getException</H3>
<PRE>
public <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> <B>getException</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html#getException()">HttpAsyncResponseConsumer</A></CODE></B></DD>
<DD>Returns an exception in case of an abnormal termination. This method
 returns <code>null</code> if the response processing is still ongoing
 or if it completed successfully.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html#getException()">getException</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncResponseConsumer</A>&lt;<A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html" title="type parameter in AbstractAsyncResponseConsumer">T</A>&gt;</CODE></DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html#isDone()"><CODE>HttpAsyncResponseConsumer.isDone()</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="getResult()"><!-- --></A><H3>
getResult</H3>
<PRE>
public <A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html" title="type parameter in AbstractAsyncResponseConsumer">T</A> <B>getResult</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html#getResult()">HttpAsyncResponseConsumer</A></CODE></B></DD>
<DD>Returns a result of the response processing, when available. This method
 returns <code>null</code> if the response processing is still ongoing.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html#getResult()">getResult</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncResponseConsumer</A>&lt;<A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html" title="type parameter in AbstractAsyncResponseConsumer">T</A>&gt;</CODE></DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html#isDone()"><CODE>HttpAsyncResponseConsumer.isDone()</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="isDone()"><!-- --></A><H3>
isDone</H3>
<PRE>
public boolean <B>isDone</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html#isDone()">HttpAsyncResponseConsumer</A></CODE></B></DD>
<DD>Determines whether or not the response processing completed. If the
 response processing terminated normally <A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html#getResult()"><CODE>HttpAsyncResponseConsumer.getResult()</CODE></A>
 can be used to obtain the result. If the response processing terminated
 abnormally <A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html#getException()"><CODE>HttpAsyncResponseConsumer.getException()</CODE></A> can be used to obtain the cause.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html#isDone()">isDone</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/http/nio/protocol/HttpAsyncResponseConsumer.html" title="interface in org.apache.http.nio.protocol">HttpAsyncResponseConsumer</A>&lt;<A HREF="../../../../../org/apache/http/nio/protocol/AbstractAsyncResponseConsumer.html" title="type parameter in AbstractAsyncResponseConsumer">T</A>&gt;</CODE></DL>
</DD>
<DD><DL>
</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/AbstractAsyncResponseConsumer.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/AbstractAsyncRequestConsumer.html" title="class in org.apache.http.nio.protocol"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/http/nio/protocol/AsyncNHttpClientHandler.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/AbstractAsyncResponseConsumer.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="AbstractAsyncResponseConsumer.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>
