blob: 7cabb0709070a9818505021c88ebfac178f76b75 [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.6.0_26) on Wed Jun 15 18:09:19 CEST 2011 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
ProxyFilter (Apache MINA 2.0.4 API Documentation)
</TITLE>
<META NAME="date" CONTENT="2011-06-15">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ProxyFilter (Apache MINA 2.0.4 API Documentation)";
}
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<HR>
<!-- ========= 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/ProxyFilter.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;PREV CLASS&nbsp;
&nbsp;<A HREF="../../../../../org/apache/mina/proxy/filter/ProxyHandshakeIoBuffer.html" title="class in org.apache.mina.proxy.filter"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?org/apache/mina/proxy/filter/ProxyFilter.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ProxyFilter.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.mina.proxy.filter</FONT>
<BR>
Class ProxyFilter</H2>
<PRE>
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html" title="class in org.apache.mina.core.filterchain">org.apache.mina.core.filterchain.IoFilterAdapter</A>
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.mina.proxy.filter.ProxyFilter</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>ProxyFilter</B><DT>extends <A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html" title="class in org.apache.mina.core.filterchain">IoFilterAdapter</A></DL>
</PRE>
<P>
ProxyFilter.java - Proxy <A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html" title="interface in org.apache.mina.core.filterchain"><CODE>IoFilter</CODE></A>.
Automatically inserted into the <A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html" title="interface in org.apache.mina.core.filterchain"><CODE>IoFilter</CODE></A> chain by <A HREF="../../../../../org/apache/mina/proxy/ProxyConnector.html" title="class in org.apache.mina.proxy"><CODE>ProxyConnector</CODE></A>.
Sends the initial handshake message to the proxy and handles any response
to the handshake. Once the handshake has completed and the proxied connection has been
established this filter becomes transparent to data flowing through the connection.
<p>
Based upon SSLFilter from mina-filter-ssl.
<P>
<P>
<DL>
<DT><B>Since:</B></DT>
<DD>MINA 2.0.0-M3</DD>
<DT><B>Author:</B></DT>
<DD><a href="http://mina.apache.org">Apache MINA Project</a></DD>
</DL>
<HR>
<P>
<!-- ======== NESTED CLASS SUMMARY ======== -->
<A NAME="nested_class_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>Nested Class Summary</B></FONT></TH>
</TR>
</TABLE>
&nbsp;<A NAME="nested_classes_inherited_from_class_org.apache.mina.core.filterchain.IoFilter"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Nested classes/interfaces inherited from interface org.apache.mina.core.filterchain.<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A></CODE></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/mina/proxy/filter/ProxyFilter.html#ProxyFilter()">ProxyFilter</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a new <A HREF="../../../../../org/apache/mina/proxy/filter/ProxyFilter.html" title="class in org.apache.mina.proxy.filter"><CODE>ProxyFilter</CODE></A>.</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/mina/proxy/filter/ProxyFilter.html#exceptionCaught(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, java.lang.Throwable)">exceptionCaught</A></B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</A>&nbsp;cause)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Called when an exception occurs in the chain.</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/mina/proxy/filter/ProxyFilter.html#filterWrite(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, org.apache.mina.core.write.WriteRequest)">filterWrite</A></B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="../../../../../org/apache/mina/core/write/WriteRequest.html" title="interface in org.apache.mina.core.write">WriteRequest</A>&nbsp;writeRequest)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filters outgoing writes, queueing them up if necessary while a handshake
is ongoing.</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/mina/proxy/filter/ProxyFilter.html#messageReceived(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, java.lang.Object)">messageReceived</A></B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;message)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Receives data from the remote host, passes to the handler if a handshake is in progress,
otherwise passes on transparently.</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/mina/proxy/filter/ProxyFilter.html#messageSent(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, org.apache.mina.core.write.WriteRequest)">messageSent</A></B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="../../../../../org/apache/mina/core/write/WriteRequest.html" title="interface in org.apache.mina.core.write">WriteRequest</A>&nbsp;writeRequest)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Filter handshake related messages from reaching the messageSent callbacks of
downstream filters.</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/mina/proxy/filter/ProxyFilter.html#onPreAdd(org.apache.mina.core.filterchain.IoFilterChain, java.lang.String, org.apache.mina.core.filterchain.IoFilter.NextFilter)">onPreAdd</A></B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChain.html" title="interface in org.apache.mina.core.filterchain">IoFilterChain</A>&nbsp;chain,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;name,
<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Called before the filter is added into the filter chain.</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/mina/proxy/filter/ProxyFilter.html#onPreRemove(org.apache.mina.core.filterchain.IoFilterChain, java.lang.String, org.apache.mina.core.filterchain.IoFilter.NextFilter)">onPreRemove</A></B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChain.html" title="interface in org.apache.mina.core.filterchain">IoFilterChain</A>&nbsp;chain,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;name,
<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Called when the filter is removed from the filter chain.</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/mina/proxy/filter/ProxyFilter.html#sessionClosed(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession)">sessionClosed</A></B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Event is stored in an <A HREF="../../../../../org/apache/mina/proxy/event/IoSessionEventQueue.html" title="class in org.apache.mina.proxy.event"><CODE>IoSessionEventQueue</CODE></A> for later delivery to the next filter
in the chain when the handshake would have succeed.</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/mina/proxy/filter/ProxyFilter.html#sessionCreated(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession)">sessionCreated</A></B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Called when the session is created.</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/mina/proxy/filter/ProxyFilter.html#sessionIdle(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, org.apache.mina.core.session.IdleStatus)">sessionIdle</A></B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="../../../../../org/apache/mina/core/session/IdleStatus.html" title="class in org.apache.mina.core.session">IdleStatus</A>&nbsp;status)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Event is stored in an <A HREF="../../../../../org/apache/mina/proxy/event/IoSessionEventQueue.html" title="class in org.apache.mina.proxy.event"><CODE>IoSessionEventQueue</CODE></A> for later delivery to the next filter
in the chain when the handshake would have succeed.</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/mina/proxy/filter/ProxyFilter.html#sessionOpened(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession)">sessionOpened</A></B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Event is stored in an <A HREF="../../../../../org/apache/mina/proxy/event/IoSessionEventQueue.html" title="class in org.apache.mina.proxy.event"><CODE>IoSessionEventQueue</CODE></A> for later delivery to the next filter
in the chain when the handshake would have succeed.</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/mina/proxy/filter/ProxyFilter.html#writeData(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, org.apache.mina.core.write.WriteRequest, boolean)">writeData</A></B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="../../../../../org/apache/mina/core/write/WriteRequest.html" title="interface in org.apache.mina.core.write">WriteRequest</A>&nbsp;writeRequest,
boolean&nbsp;isHandshakeData)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Actually write data.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.mina.core.filterchain.IoFilterAdapter"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.mina.core.filterchain.<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html" title="class in org.apache.mina.core.filterchain">IoFilterAdapter</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#destroy()">destroy</A>, <A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#filterClose(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession)">filterClose</A>, <A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#init()">init</A>, <A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#onPostAdd(org.apache.mina.core.filterchain.IoFilterChain, java.lang.String, org.apache.mina.core.filterchain.IoFilter.NextFilter)">onPostAdd</A>, <A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#onPostRemove(org.apache.mina.core.filterchain.IoFilterChain, java.lang.String, org.apache.mina.core.filterchain.IoFilter.NextFilter)">onPostRemove</A>, <A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#toString()">toString</A></CODE></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://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#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="ProxyFilter()"><!-- --></A><H3>
ProxyFilter</H3>
<PRE>
public <B>ProxyFilter</B>()</PRE>
<DL>
<DD>Create a new <A HREF="../../../../../org/apache/mina/proxy/filter/ProxyFilter.html" title="class in org.apache.mina.proxy.filter"><CODE>ProxyFilter</CODE></A>.
<P>
</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="onPreAdd(org.apache.mina.core.filterchain.IoFilterChain, java.lang.String, org.apache.mina.core.filterchain.IoFilter.NextFilter)"><!-- --></A><H3>
onPreAdd</H3>
<PRE>
public void <B>onPreAdd</B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChain.html" title="interface in org.apache.mina.core.filterchain">IoFilterChain</A>&nbsp;chain,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;name,
<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter)</PRE>
<DL>
<DD>Called before the filter is added into the filter chain.
Checks if chain already holds an <A HREF="../../../../../org/apache/mina/proxy/filter/ProxyFilter.html" title="class in org.apache.mina.proxy.filter"><CODE>ProxyFilter</CODE></A> instance.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html#onPreAdd(org.apache.mina.core.filterchain.IoFilterChain, java.lang.String, org.apache.mina.core.filterchain.IoFilter.NextFilter)">onPreAdd</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#onPreAdd(org.apache.mina.core.filterchain.IoFilterChain, java.lang.String, org.apache.mina.core.filterchain.IoFilter.NextFilter)">onPreAdd</A></CODE> in class <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html" title="class in org.apache.mina.core.filterchain">IoFilterAdapter</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>chain</CODE> - the filter chain<DD><CODE>name</CODE> - the name assigned to this filter<DD><CODE>nextFilter</CODE> - the next filter
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</A></CODE> - if chain already contains an instance of
<A HREF="../../../../../org/apache/mina/proxy/filter/ProxyFilter.html" title="class in org.apache.mina.proxy.filter"><CODE>ProxyFilter</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="onPreRemove(org.apache.mina.core.filterchain.IoFilterChain, java.lang.String, org.apache.mina.core.filterchain.IoFilter.NextFilter)"><!-- --></A><H3>
onPreRemove</H3>
<PRE>
public void <B>onPreRemove</B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChain.html" title="interface in org.apache.mina.core.filterchain">IoFilterChain</A>&nbsp;chain,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;name,
<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter)</PRE>
<DL>
<DD>Called when the filter is removed from the filter chain.
Cleans the <A HREF="../../../../../org/apache/mina/proxy/session/ProxyIoSession.html" title="class in org.apache.mina.proxy.session"><CODE>ProxyIoSession</CODE></A> instance from the session.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html#onPreRemove(org.apache.mina.core.filterchain.IoFilterChain, java.lang.String, org.apache.mina.core.filterchain.IoFilter.NextFilter)">onPreRemove</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#onPreRemove(org.apache.mina.core.filterchain.IoFilterChain, java.lang.String, org.apache.mina.core.filterchain.IoFilter.NextFilter)">onPreRemove</A></CODE> in class <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html" title="class in org.apache.mina.core.filterchain">IoFilterAdapter</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>chain</CODE> - the filter chain<DD><CODE>name</CODE> - the name assigned to this filter<DD><CODE>nextFilter</CODE> - the next filter</DL>
</DD>
</DL>
<HR>
<A NAME="exceptionCaught(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, java.lang.Throwable)"><!-- --></A><H3>
exceptionCaught</H3>
<PRE>
public void <B>exceptionCaught</B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</A>&nbsp;cause)
throws <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</A></PRE>
<DL>
<DD>Called when an exception occurs in the chain. A flag is set in the
<A HREF="../../../../../org/apache/mina/proxy/session/ProxyIoSession.html" title="class in org.apache.mina.proxy.session"><CODE>ProxyIoSession</CODE></A> session's instance to signal that handshake
failed.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html#exceptionCaught(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, java.lang.Throwable)">exceptionCaught</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#exceptionCaught(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, java.lang.Throwable)">exceptionCaught</A></CODE> in class <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html" title="class in org.apache.mina.core.filterchain">IoFilterAdapter</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>chain</CODE> - the filter chain<DD><CODE>name</CODE> - the name assigned to this filter<DD><CODE>nextFilter</CODE> - the next filter
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="messageReceived(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, java.lang.Object)"><!-- --></A><H3>
messageReceived</H3>
<PRE>
public void <B>messageReceived</B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;message)
throws <A HREF="../../../../../org/apache/mina/proxy/ProxyAuthException.html" title="class in org.apache.mina.proxy">ProxyAuthException</A></PRE>
<DL>
<DD>Receives data from the remote host, passes to the handler if a handshake is in progress,
otherwise passes on transparently.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html#messageReceived(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, java.lang.Object)">messageReceived</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#messageReceived(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, java.lang.Object)">messageReceived</A></CODE> in class <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html" title="class in org.apache.mina.core.filterchain">IoFilterAdapter</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>nextFilter</CODE> - the next filter in filter chain<DD><CODE>session</CODE> - the session object<DD><CODE>message</CODE> - the object holding the received data
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../../org/apache/mina/proxy/ProxyAuthException.html" title="class in org.apache.mina.proxy">ProxyAuthException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="filterWrite(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, org.apache.mina.core.write.WriteRequest)"><!-- --></A><H3>
filterWrite</H3>
<PRE>
public void <B>filterWrite</B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="../../../../../org/apache/mina/core/write/WriteRequest.html" title="interface in org.apache.mina.core.write">WriteRequest</A>&nbsp;writeRequest)</PRE>
<DL>
<DD>Filters outgoing writes, queueing them up if necessary while a handshake
is ongoing.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html#filterWrite(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, org.apache.mina.core.write.WriteRequest)">filterWrite</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#filterWrite(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, org.apache.mina.core.write.WriteRequest)">filterWrite</A></CODE> in class <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html" title="class in org.apache.mina.core.filterchain">IoFilterAdapter</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>nextFilter</CODE> - the next filter in filter chain<DD><CODE>session</CODE> - the session object<DD><CODE>writeRequest</CODE> - the data to write</DL>
</DD>
</DL>
<HR>
<A NAME="writeData(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, org.apache.mina.core.write.WriteRequest, boolean)"><!-- --></A><H3>
writeData</H3>
<PRE>
public void <B>writeData</B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="../../../../../org/apache/mina/core/write/WriteRequest.html" title="interface in org.apache.mina.core.write">WriteRequest</A>&nbsp;writeRequest,
boolean&nbsp;isHandshakeData)</PRE>
<DL>
<DD>Actually write data. Queues the data up unless it relates to the handshake or the
handshake is done.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>nextFilter</CODE> - the next filter in filter chain<DD><CODE>session</CODE> - the session object<DD><CODE>writeRequest</CODE> - the data to write<DD><CODE>isHandshakeData</CODE> - true if writeRequest is written by the proxy classes.</DL>
</DD>
</DL>
<HR>
<A NAME="messageSent(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, org.apache.mina.core.write.WriteRequest)"><!-- --></A><H3>
messageSent</H3>
<PRE>
public void <B>messageSent</B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="../../../../../org/apache/mina/core/write/WriteRequest.html" title="interface in org.apache.mina.core.write">WriteRequest</A>&nbsp;writeRequest)
throws <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</A></PRE>
<DL>
<DD>Filter handshake related messages from reaching the messageSent callbacks of
downstream filters.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html#messageSent(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, org.apache.mina.core.write.WriteRequest)">messageSent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#messageSent(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, org.apache.mina.core.write.WriteRequest)">messageSent</A></CODE> in class <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html" title="class in org.apache.mina.core.filterchain">IoFilterAdapter</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>nextFilter</CODE> - the next filter in filter chain<DD><CODE>session</CODE> - the session object<DD><CODE>writeRequest</CODE> - the data written
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="sessionCreated(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession)"><!-- --></A><H3>
sessionCreated</H3>
<PRE>
public void <B>sessionCreated</B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session)
throws <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</A></PRE>
<DL>
<DD>Called when the session is created. Will create the handler able to handle
the <A HREF="../../../../../org/apache/mina/proxy/session/ProxyIoSession.html#getRequest()"><CODE>ProxyIoSession.getRequest()</CODE></A> request stored in the session. Event
is stored in an <A HREF="../../../../../org/apache/mina/proxy/event/IoSessionEventQueue.html" title="class in org.apache.mina.proxy.event"><CODE>IoSessionEventQueue</CODE></A> for later delivery to the next filter
in the chain when the handshake would have succeed. This will prevent the rest of
the filter chain from being affected by this filter internals.
Please note that this event can occur multiple times because of some http
proxies not handling keep-alive connections thus needing multiple sessions
during the handshake.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html#sessionCreated(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession)">sessionCreated</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#sessionCreated(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession)">sessionCreated</A></CODE> in class <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html" title="class in org.apache.mina.core.filterchain">IoFilterAdapter</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>nextFilter</CODE> - the next filter in filter chain<DD><CODE>session</CODE> - the session object
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="sessionOpened(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession)"><!-- --></A><H3>
sessionOpened</H3>
<PRE>
public void <B>sessionOpened</B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session)
throws <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</A></PRE>
<DL>
<DD>Event is stored in an <A HREF="../../../../../org/apache/mina/proxy/event/IoSessionEventQueue.html" title="class in org.apache.mina.proxy.event"><CODE>IoSessionEventQueue</CODE></A> for later delivery to the next filter
in the chain when the handshake would have succeed. This will prevent the rest of
the filter chain from being affected by this filter internals.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html#sessionOpened(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession)">sessionOpened</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#sessionOpened(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession)">sessionOpened</A></CODE> in class <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html" title="class in org.apache.mina.core.filterchain">IoFilterAdapter</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>nextFilter</CODE> - the next filter in filter chain<DD><CODE>session</CODE> - the session object
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="sessionIdle(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, org.apache.mina.core.session.IdleStatus)"><!-- --></A><H3>
sessionIdle</H3>
<PRE>
public void <B>sessionIdle</B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="../../../../../org/apache/mina/core/session/IdleStatus.html" title="class in org.apache.mina.core.session">IdleStatus</A>&nbsp;status)
throws <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</A></PRE>
<DL>
<DD>Event is stored in an <A HREF="../../../../../org/apache/mina/proxy/event/IoSessionEventQueue.html" title="class in org.apache.mina.proxy.event"><CODE>IoSessionEventQueue</CODE></A> for later delivery to the next filter
in the chain when the handshake would have succeed. This will prevent the rest of
the filter chain from being affected by this filter internals.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html#sessionIdle(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, org.apache.mina.core.session.IdleStatus)">sessionIdle</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#sessionIdle(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession, org.apache.mina.core.session.IdleStatus)">sessionIdle</A></CODE> in class <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html" title="class in org.apache.mina.core.filterchain">IoFilterAdapter</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>nextFilter</CODE> - the next filter in filter chain<DD><CODE>session</CODE> - the session object
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="sessionClosed(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession)"><!-- --></A><H3>
sessionClosed</H3>
<PRE>
public void <B>sessionClosed</B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.NextFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter.NextFilter</A>&nbsp;nextFilter,
<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session)
throws <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</A></PRE>
<DL>
<DD>Event is stored in an <A HREF="../../../../../org/apache/mina/proxy/event/IoSessionEventQueue.html" title="class in org.apache.mina.proxy.event"><CODE>IoSessionEventQueue</CODE></A> for later delivery to the next filter
in the chain when the handshake would have succeed. This will prevent the rest of
the filter chain from being affected by this filter internals.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html#sessionClosed(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession)">sessionClosed</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilter.html" title="interface in org.apache.mina.core.filterchain">IoFilter</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html#sessionClosed(org.apache.mina.core.filterchain.IoFilter.NextFilter, org.apache.mina.core.session.IoSession)">sessionClosed</A></CODE> in class <CODE><A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterAdapter.html" title="class in org.apache.mina.core.filterchain">IoFilterAdapter</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>nextFilter</CODE> - the next filter in filter chain<DD><CODE>session</CODE> - the session object
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</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/ProxyFilter.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;PREV CLASS&nbsp;
&nbsp;<A HREF="../../../../../org/apache/mina/proxy/filter/ProxyHandshakeIoBuffer.html" title="class in org.apache.mina.proxy.filter"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?org/apache/mina/proxy/filter/ProxyFilter.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ProxyFilter.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; 2004-2011 <a href="http://mina.apache.org/">Apache MINA Project</a>. All Rights Reserved.
</BODY>
</HTML>