<!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:14 GMT+01:00 2012 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
BasicHttpProcessor (HttpComponents Core 4.2.2 API)
</TITLE>

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

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

<SCRIPT type="text/javascript">
function windowTitle()
{
    parent.document.title="BasicHttpProcessor (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/BasicHttpProcessor.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/protocol/BasicHttpContext.html" title="class in org.apache.http.protocol"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/http/protocol/DefaultedHttpContext.html" title="class in org.apache.http.protocol"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?org/apache/http/protocol/BasicHttpProcessor.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="BasicHttpProcessor.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;<A HREF="#field_summary">FIELD</A>&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;<A HREF="#field_detail">FIELD</A>&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.protocol</FONT>
<BR>
Class BasicHttpProcessor</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.protocol.BasicHttpProcessor</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Cloneable.html" title="class or interface in java.lang">Cloneable</A>, <A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A>, <A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A>, <A HREF="../../../../org/apache/http/protocol/HttpProcessor.html" title="interface in org.apache.http.protocol">HttpProcessor</A>, <A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html" title="interface in org.apache.http.protocol">HttpRequestInterceptorList</A>, <A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html" title="interface in org.apache.http.protocol">HttpResponseInterceptorList</A></DD>
</DL>
<HR>
<DL>
<DT><PRE><FONT SIZE="-1"><A HREF="../../../../org/apache/http/annotation/NotThreadSafe.html" title="annotation in org.apache.http.annotation">@NotThreadSafe</A>
</FONT>public final class <B>BasicHttpProcessor</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/protocol/HttpProcessor.html" title="interface in org.apache.http.protocol">HttpProcessor</A>, <A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html" title="interface in org.apache.http.protocol">HttpRequestInterceptorList</A>, <A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html" title="interface in org.apache.http.protocol">HttpResponseInterceptorList</A>, <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Cloneable.html" title="class or interface in java.lang">Cloneable</A></DL>
</PRE>

<P>
Default implementation of <A HREF="../../../../org/apache/http/protocol/HttpProcessor.html" title="interface in org.apache.http.protocol"><CODE>HttpProcessor</CODE></A>.
 <p>
 Please note access to the internal structures of this class is not
 synchronized and therefore this class may be thread-unsafe.
<P>

<P>
<DL>
<DT><B>Since:</B></DT>
  <DD>4.0</DD>
</DL>
<HR>

<P>
<!-- =========== FIELD SUMMARY =========== -->

<A NAME="field_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>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/http/protocol/BasicHttpProcessor.html#requestInterceptors">requestInterceptors</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>protected &nbsp;<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/http/protocol/BasicHttpProcessor.html#responseInterceptors">responseInterceptors</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== 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/protocol/BasicHttpProcessor.html#BasicHttpProcessor()">BasicHttpProcessor</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>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/http/protocol/BasicHttpProcessor.html#addInterceptor(org.apache.http.HttpRequestInterceptor)">addInterceptor</A></B>(<A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A>&nbsp;interceptor)</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/protocol/BasicHttpProcessor.html#addInterceptor(org.apache.http.HttpRequestInterceptor, int)">addInterceptor</A></B>(<A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A>&nbsp;interceptor,
               int&nbsp;index)</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/protocol/BasicHttpProcessor.html#addInterceptor(org.apache.http.HttpResponseInterceptor)">addInterceptor</A></B>(<A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A>&nbsp;interceptor)</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/protocol/BasicHttpProcessor.html#addInterceptor(org.apache.http.HttpResponseInterceptor, int)">addInterceptor</A></B>(<A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A>&nbsp;interceptor,
               int&nbsp;index)</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/protocol/BasicHttpProcessor.html#addRequestInterceptor(org.apache.http.HttpRequestInterceptor)">addRequestInterceptor</A></B>(<A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A>&nbsp;itcp)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Appends a request interceptor to this list.</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/protocol/BasicHttpProcessor.html#addRequestInterceptor(org.apache.http.HttpRequestInterceptor, int)">addRequestInterceptor</A></B>(<A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A>&nbsp;itcp,
                      int&nbsp;index)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Inserts a request interceptor at the specified index.</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/protocol/BasicHttpProcessor.html#addResponseInterceptor(org.apache.http.HttpResponseInterceptor)">addResponseInterceptor</A></B>(<A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A>&nbsp;itcp)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Appends a response interceptor to this list.</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/protocol/BasicHttpProcessor.html#addResponseInterceptor(org.apache.http.HttpResponseInterceptor, int)">addResponseInterceptor</A></B>(<A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A>&nbsp;itcp,
                       int&nbsp;index)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Inserts a response interceptor at the specified index.</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/protocol/BasicHttpProcessor.html#clearInterceptors()">clearInterceptors</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Clears both interceptor lists maintained by this processor.</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/protocol/BasicHttpProcessor.html#clearRequestInterceptors()">clearRequestInterceptors</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Removes all request interceptors from this list.</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/protocol/BasicHttpProcessor.html#clearResponseInterceptors()">clearResponseInterceptors</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Removes all response interceptors from this list.</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/Object.html" title="class or interface in java.lang">Object</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/http/protocol/BasicHttpProcessor.html#clone()">clone</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;<A HREF="../../../../org/apache/http/protocol/BasicHttpProcessor.html" title="class in org.apache.http.protocol">BasicHttpProcessor</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/http/protocol/BasicHttpProcessor.html#copy()">copy</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a copy of this instance</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/http/protocol/BasicHttpProcessor.html#copyInterceptors(org.apache.http.protocol.BasicHttpProcessor)">copyInterceptors</A></B>(<A HREF="../../../../org/apache/http/protocol/BasicHttpProcessor.html" title="class in org.apache.http.protocol">BasicHttpProcessor</A>&nbsp;target)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets up the target to have the same list of interceptors
 as the current instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/http/protocol/BasicHttpProcessor.html#getRequestInterceptor(int)">getRequestInterceptor</A></B>(int&nbsp;index)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Obtains a request interceptor from this list.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/http/protocol/BasicHttpProcessor.html#getRequestInterceptorCount()">getRequestInterceptorCount</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Obtains the current size of this list.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/http/protocol/BasicHttpProcessor.html#getResponseInterceptor(int)">getResponseInterceptor</A></B>(int&nbsp;index)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Obtains a response interceptor from this list.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/http/protocol/BasicHttpProcessor.html#getResponseInterceptorCount()">getResponseInterceptorCount</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Obtains the current size of this list.</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/protocol/BasicHttpProcessor.html#process(org.apache.http.HttpRequest, org.apache.http.protocol.HttpContext)">process</A></B>(<A HREF="../../../../org/apache/http/HttpRequest.html" title="interface in org.apache.http">HttpRequest</A>&nbsp;request,
        <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;Processes a request.</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/protocol/BasicHttpProcessor.html#process(org.apache.http.HttpResponse, org.apache.http.protocol.HttpContext)">process</A></B>(<A HREF="../../../../org/apache/http/HttpResponse.html" title="interface in org.apache.http">HttpResponse</A>&nbsp;response,
        <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;Processes a response.</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/protocol/BasicHttpProcessor.html#removeRequestInterceptorByClass(java.lang.Class)">removeRequestInterceptorByClass</A></B>(<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A>&lt;? extends <A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A>&gt;&nbsp;clazz)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Removes all request interceptor of the specified class</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/protocol/BasicHttpProcessor.html#removeResponseInterceptorByClass(java.lang.Class)">removeResponseInterceptorByClass</A></B>(<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A>&lt;? extends <A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A>&gt;&nbsp;clazz)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Removes all response interceptor of the specified class</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/protocol/BasicHttpProcessor.html#setInterceptors(java.util.List)">setInterceptors</A></B>(<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A>&lt;?&gt;&nbsp;list)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the interceptor lists.</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#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>

<!-- ============ FIELD DETAIL =========== -->

<A NAME="field_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>Field Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="requestInterceptors"><!-- --></A><H3>
requestInterceptors</H3>
<PRE>
protected final <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A>&gt; <B>requestInterceptors</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>

<A NAME="responseInterceptors"><!-- --></A><H3>
responseInterceptors</H3>
<PRE>
protected final <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A>&lt;<A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A>&gt; <B>responseInterceptors</B></PRE>
<DL>
<DL>
</DL>
</DL>

<!-- ========= 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="BasicHttpProcessor()"><!-- --></A><H3>
BasicHttpProcessor</H3>
<PRE>
public <B>BasicHttpProcessor</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="addRequestInterceptor(org.apache.http.HttpRequestInterceptor)"><!-- --></A><H3>
addRequestInterceptor</H3>
<PRE>
public void <B>addRequestInterceptor</B>(<A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A>&nbsp;itcp)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html#addRequestInterceptor(org.apache.http.HttpRequestInterceptor)">HttpRequestInterceptorList</A></CODE></B></DD>
<DD>Appends a request interceptor to this list.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html#addRequestInterceptor(org.apache.http.HttpRequestInterceptor)">addRequestInterceptor</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html" title="interface in org.apache.http.protocol">HttpRequestInterceptorList</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>itcp</CODE> - the request interceptor to add</DL>
</DD>
</DL>
<HR>

<A NAME="addRequestInterceptor(org.apache.http.HttpRequestInterceptor, int)"><!-- --></A><H3>
addRequestInterceptor</H3>
<PRE>
public void <B>addRequestInterceptor</B>(<A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A>&nbsp;itcp,
                                  int&nbsp;index)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html#addRequestInterceptor(org.apache.http.HttpRequestInterceptor, int)">HttpRequestInterceptorList</A></CODE></B></DD>
<DD>Inserts a request interceptor at the specified index.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html#addRequestInterceptor(org.apache.http.HttpRequestInterceptor, int)">addRequestInterceptor</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html" title="interface in org.apache.http.protocol">HttpRequestInterceptorList</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>itcp</CODE> - the request interceptor to add<DD><CODE>index</CODE> - the index to insert the interceptor at</DL>
</DD>
</DL>
<HR>

<A NAME="addResponseInterceptor(org.apache.http.HttpResponseInterceptor, int)"><!-- --></A><H3>
addResponseInterceptor</H3>
<PRE>
public void <B>addResponseInterceptor</B>(<A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A>&nbsp;itcp,
                                   int&nbsp;index)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html#addResponseInterceptor(org.apache.http.HttpResponseInterceptor, int)">HttpResponseInterceptorList</A></CODE></B></DD>
<DD>Inserts a response interceptor at the specified index.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html#addResponseInterceptor(org.apache.http.HttpResponseInterceptor, int)">addResponseInterceptor</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html" title="interface in org.apache.http.protocol">HttpResponseInterceptorList</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>itcp</CODE> - the response interceptor to add<DD><CODE>index</CODE> - the index to insert the interceptor at</DL>
</DD>
</DL>
<HR>

<A NAME="removeRequestInterceptorByClass(java.lang.Class)"><!-- --></A><H3>
removeRequestInterceptorByClass</H3>
<PRE>
public void <B>removeRequestInterceptorByClass</B>(<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A>&lt;? extends <A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A>&gt;&nbsp;clazz)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html#removeRequestInterceptorByClass(java.lang.Class)">HttpRequestInterceptorList</A></CODE></B></DD>
<DD>Removes all request interceptor of the specified class
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html#removeRequestInterceptorByClass(java.lang.Class)">removeRequestInterceptorByClass</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html" title="interface in org.apache.http.protocol">HttpRequestInterceptorList</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>clazz</CODE> - the class of the instances to be removed.</DL>
</DD>
</DL>
<HR>

<A NAME="removeResponseInterceptorByClass(java.lang.Class)"><!-- --></A><H3>
removeResponseInterceptorByClass</H3>
<PRE>
public void <B>removeResponseInterceptorByClass</B>(<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A>&lt;? extends <A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A>&gt;&nbsp;clazz)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html#removeResponseInterceptorByClass(java.lang.Class)">HttpResponseInterceptorList</A></CODE></B></DD>
<DD>Removes all response interceptor of the specified class
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html#removeResponseInterceptorByClass(java.lang.Class)">removeResponseInterceptorByClass</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html" title="interface in org.apache.http.protocol">HttpResponseInterceptorList</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>clazz</CODE> - the class of the instances to be removed.</DL>
</DD>
</DL>
<HR>

<A NAME="addInterceptor(org.apache.http.HttpRequestInterceptor)"><!-- --></A><H3>
addInterceptor</H3>
<PRE>
public final void <B>addInterceptor</B>(<A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A>&nbsp;interceptor)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="addInterceptor(org.apache.http.HttpRequestInterceptor, int)"><!-- --></A><H3>
addInterceptor</H3>
<PRE>
public final void <B>addInterceptor</B>(<A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A>&nbsp;interceptor,
                                 int&nbsp;index)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getRequestInterceptorCount()"><!-- --></A><H3>
getRequestInterceptorCount</H3>
<PRE>
public int <B>getRequestInterceptorCount</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html#getRequestInterceptorCount()">HttpRequestInterceptorList</A></CODE></B></DD>
<DD>Obtains the current size of this list.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html#getRequestInterceptorCount()">getRequestInterceptorCount</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html" title="interface in org.apache.http.protocol">HttpRequestInterceptorList</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the number of request interceptors in this list</DL>
</DD>
</DL>
<HR>

<A NAME="getRequestInterceptor(int)"><!-- --></A><H3>
getRequestInterceptor</H3>
<PRE>
public <A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A> <B>getRequestInterceptor</B>(int&nbsp;index)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html#getRequestInterceptor(int)">HttpRequestInterceptorList</A></CODE></B></DD>
<DD>Obtains a request interceptor from this list.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html#getRequestInterceptor(int)">getRequestInterceptor</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html" title="interface in org.apache.http.protocol">HttpRequestInterceptorList</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>index</CODE> - the index of the interceptor to obtain,
                  0 for first
<DT><B>Returns:</B><DD>the interceptor at the given index, or
          <code>null</code> if the index is out of range</DL>
</DD>
</DL>
<HR>

<A NAME="clearRequestInterceptors()"><!-- --></A><H3>
clearRequestInterceptors</H3>
<PRE>
public void <B>clearRequestInterceptors</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html#clearRequestInterceptors()">HttpRequestInterceptorList</A></CODE></B></DD>
<DD>Removes all request interceptors from this list.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html#clearRequestInterceptors()">clearRequestInterceptors</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html" title="interface in org.apache.http.protocol">HttpRequestInterceptorList</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="addResponseInterceptor(org.apache.http.HttpResponseInterceptor)"><!-- --></A><H3>
addResponseInterceptor</H3>
<PRE>
public void <B>addResponseInterceptor</B>(<A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A>&nbsp;itcp)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html#addResponseInterceptor(org.apache.http.HttpResponseInterceptor)">HttpResponseInterceptorList</A></CODE></B></DD>
<DD>Appends a response interceptor to this list.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html#addResponseInterceptor(org.apache.http.HttpResponseInterceptor)">addResponseInterceptor</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html" title="interface in org.apache.http.protocol">HttpResponseInterceptorList</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>itcp</CODE> - the response interceptor to add</DL>
</DD>
</DL>
<HR>

<A NAME="addInterceptor(org.apache.http.HttpResponseInterceptor)"><!-- --></A><H3>
addInterceptor</H3>
<PRE>
public final void <B>addInterceptor</B>(<A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A>&nbsp;interceptor)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="addInterceptor(org.apache.http.HttpResponseInterceptor, int)"><!-- --></A><H3>
addInterceptor</H3>
<PRE>
public final void <B>addInterceptor</B>(<A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A>&nbsp;interceptor,
                                 int&nbsp;index)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getResponseInterceptorCount()"><!-- --></A><H3>
getResponseInterceptorCount</H3>
<PRE>
public int <B>getResponseInterceptorCount</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html#getResponseInterceptorCount()">HttpResponseInterceptorList</A></CODE></B></DD>
<DD>Obtains the current size of this list.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html#getResponseInterceptorCount()">getResponseInterceptorCount</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html" title="interface in org.apache.http.protocol">HttpResponseInterceptorList</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the number of response interceptors in this list</DL>
</DD>
</DL>
<HR>

<A NAME="getResponseInterceptor(int)"><!-- --></A><H3>
getResponseInterceptor</H3>
<PRE>
public <A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A> <B>getResponseInterceptor</B>(int&nbsp;index)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html#getResponseInterceptor(int)">HttpResponseInterceptorList</A></CODE></B></DD>
<DD>Obtains a response interceptor from this list.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html#getResponseInterceptor(int)">getResponseInterceptor</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html" title="interface in org.apache.http.protocol">HttpResponseInterceptorList</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>index</CODE> - the index of the interceptor to obtain,
                  0 for first
<DT><B>Returns:</B><DD>the interceptor at the given index, or
          <code>null</code> if the index is out of range</DL>
</DD>
</DL>
<HR>

<A NAME="clearResponseInterceptors()"><!-- --></A><H3>
clearResponseInterceptors</H3>
<PRE>
public void <B>clearResponseInterceptors</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html#clearResponseInterceptors()">HttpResponseInterceptorList</A></CODE></B></DD>
<DD>Removes all response interceptors from this list.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html#clearResponseInterceptors()">clearResponseInterceptors</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html" title="interface in org.apache.http.protocol">HttpResponseInterceptorList</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setInterceptors(java.util.List)"><!-- --></A><H3>
setInterceptors</H3>
<PRE>
public void <B>setInterceptors</B>(<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A>&lt;?&gt;&nbsp;list)</PRE>
<DL>
<DD>Sets the interceptor lists.
 First, both interceptor lists maintained by this processor
 will be cleared.
 Subsequently,
 elements of the argument list that are request interceptors will be
 added to the request interceptor list.
 Elements that are response interceptors will be
 added to the response interceptor list.
 Elements that are both request and response interceptor will be
 added to both lists.
 Elements that are neither request nor response interceptor
 will be ignored.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html#setInterceptors(java.util.List)">setInterceptors</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/protocol/HttpRequestInterceptorList.html" title="interface in org.apache.http.protocol">HttpRequestInterceptorList</A></CODE><DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html#setInterceptors(java.util.List)">setInterceptors</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/protocol/HttpResponseInterceptorList.html" title="interface in org.apache.http.protocol">HttpResponseInterceptorList</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>list</CODE> - the list of request and response interceptors
                  from which to initialize</DL>
</DD>
</DL>
<HR>

<A NAME="clearInterceptors()"><!-- --></A><H3>
clearInterceptors</H3>
<PRE>
public void <B>clearInterceptors</B>()</PRE>
<DL>
<DD>Clears both interceptor lists maintained by this processor.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="process(org.apache.http.HttpRequest, org.apache.http.protocol.HttpContext)"><!-- --></A><H3>
process</H3>
<PRE>
public void <B>process</B>(<A HREF="../../../../org/apache/http/HttpRequest.html" title="interface in org.apache.http">HttpRequest</A>&nbsp;request,
                    <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/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><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/http/HttpRequestInterceptor.html#process(org.apache.http.HttpRequest, org.apache.http.protocol.HttpContext)">HttpRequestInterceptor</A></CODE></B></DD>
<DD>Processes a request.
 On the client side, this step is performed before the request is
 sent to the server. On the server side, this step is performed
 on incoming messages before the message body is evaluated.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/HttpRequestInterceptor.html#process(org.apache.http.HttpRequest, org.apache.http.protocol.HttpContext)">process</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/HttpRequestInterceptor.html" title="interface in org.apache.http">HttpRequestInterceptor</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - the request to preprocess<DD><CODE>context</CODE> - the context for the request
<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 an HTTP protocol violation</DL>
</DD>
</DL>
<HR>

<A NAME="process(org.apache.http.HttpResponse, org.apache.http.protocol.HttpContext)"><!-- --></A><H3>
process</H3>
<PRE>
public void <B>process</B>(<A HREF="../../../../org/apache/http/HttpResponse.html" title="interface in org.apache.http">HttpResponse</A>&nbsp;response,
                    <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/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><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/http/HttpResponseInterceptor.html#process(org.apache.http.HttpResponse, org.apache.http.protocol.HttpContext)">HttpResponseInterceptor</A></CODE></B></DD>
<DD>Processes a response.
 On the server side, this step is performed before the response is
 sent to the client. On the client side, this step is performed
 on incoming messages before the message body is evaluated.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/http/HttpResponseInterceptor.html#process(org.apache.http.HttpResponse, org.apache.http.protocol.HttpContext)">process</A></CODE> in interface <CODE><A HREF="../../../../org/apache/http/HttpResponseInterceptor.html" title="interface in org.apache.http">HttpResponseInterceptor</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>response</CODE> - the response to postprocess<DD><CODE>context</CODE> - the context for the request
<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 an HTTP protocol violation</DL>
</DD>
</DL>
<HR>

<A NAME="copyInterceptors(org.apache.http.protocol.BasicHttpProcessor)"><!-- --></A><H3>
copyInterceptors</H3>
<PRE>
protected void <B>copyInterceptors</B>(<A HREF="../../../../org/apache/http/protocol/BasicHttpProcessor.html" title="class in org.apache.http.protocol">BasicHttpProcessor</A>&nbsp;target)</PRE>
<DL>
<DD>Sets up the target to have the same list of interceptors
 as the current instance.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>target</CODE> - object to be initialised</DL>
</DD>
</DL>
<HR>

<A NAME="copy()"><!-- --></A><H3>
copy</H3>
<PRE>
public <A HREF="../../../../org/apache/http/protocol/BasicHttpProcessor.html" title="class in org.apache.http.protocol">BasicHttpProcessor</A> <B>copy</B>()</PRE>
<DL>
<DD>Creates a copy of this instance
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>new instance of the BasicHttpProcessor</DL>
</DD>
</DL>
<HR>

<A NAME="clone()"><!-- --></A><H3>
clone</H3>
<PRE>
public <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>clone</B>()
             throws <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/CloneNotSupportedException.html" title="class or interface in java.lang">CloneNotSupportedException</A></PRE>
<DL>
<DD><DL>
<DT><B>Overrides:</B><DD><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></CODE> in class <CODE><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></CODE></DL>
</DD>
<DD><DL>

<DT><B>Throws:</B>
<DD><CODE><A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/CloneNotSupportedException.html" title="class or interface in java.lang">CloneNotSupportedException</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/BasicHttpProcessor.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/protocol/BasicHttpContext.html" title="class in org.apache.http.protocol"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/http/protocol/DefaultedHttpContext.html" title="class in org.apache.http.protocol"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?org/apache/http/protocol/BasicHttpProcessor.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="BasicHttpProcessor.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;<A HREF="#field_summary">FIELD</A>&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;<A HREF="#field_detail">FIELD</A>&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>
