<!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_02) on Mon Jul 11 13:14:48 KST 2005 -->
<TITLE>
Index
</TITLE>


<LINK REL ="stylesheet" TYPE="text/css" HREF="./stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    parent.document.title="Index";
}
</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">    <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="./overview-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="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&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&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="./index.html?index-all.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="index-all.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>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<A HREF="#_A_">A</A> <A HREF="#_B_">B</A> <A HREF="#_C_">C</A> <A HREF="#_D_">D</A> <A HREF="#_E_">E</A> <A HREF="#_G_">G</A> <A HREF="#_H_">H</A> <A HREF="#_I_">I</A> <A HREF="#_M_">M</A> <A HREF="#_N_">N</A> <A HREF="#_O_">O</A> <A HREF="#_P_">P</A> <A HREF="#_R_">R</A> <A HREF="#_S_">S</A> <A HREF="#_T_">T</A> <HR>
<A NAME="_A_"><!-- --></A><H2>
<B>A</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/sumup/message/AbstractMessage.html" title="class in org.apache.mina.examples.sumup.message"><B>AbstractMessage</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/message/package-summary.html">org.apache.mina.examples.sumup.message</A><DD>A base message for SumUp protocol messages.<DT><A HREF="./org/apache/mina/examples/sumup/message/AbstractMessage.html#AbstractMessage()"><B>AbstractMessage()</B></A> - 
Constructor for class org.apache.mina.examples.sumup.message.<A HREF="./org/apache/mina/examples/sumup/message/AbstractMessage.html" title="class in org.apache.mina.examples.sumup.message">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageDecoder.html" title="class in org.apache.mina.examples.sumup.codec"><B>AbstractMessageDecoder</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/codec/package-summary.html">org.apache.mina.examples.sumup.codec</A><DD>A <CODE>MessageDecoder</CODE> that decodes message header and forwards
 the decoding of body to a subclass.<DT><A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageDecoder.html#AbstractMessageDecoder(int)"><B>AbstractMessageDecoder(int)</B></A> - 
Constructor for class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageDecoder.html" title="class in org.apache.mina.examples.sumup.codec">AbstractMessageDecoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageEncoder.html" title="class in org.apache.mina.examples.sumup.codec"><B>AbstractMessageEncoder</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/codec/package-summary.html">org.apache.mina.examples.sumup.codec</A><DD>A <CODE>MessageEncoder</CODE> that encodes message header and forwards
 the encoding of body to a subclass.<DT><A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageEncoder.html#AbstractMessageEncoder(int)"><B>AbstractMessageEncoder(int)</B></A> - 
Constructor for class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageEncoder.html" title="class in org.apache.mina.examples.sumup.codec">AbstractMessageEncoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/Constants.html#ADD"><B>ADD</B></A> - 
Static variable in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/Constants.html" title="class in org.apache.mina.examples.sumup.codec">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/Constants.html#ADD_BODY_LEN"><B>ADD_BODY_LEN</B></A> - 
Static variable in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/Constants.html" title="class in org.apache.mina.examples.sumup.codec">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/message/AddMessage.html" title="class in org.apache.mina.examples.sumup.message"><B>AddMessage</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/message/package-summary.html">org.apache.mina.examples.sumup.message</A><DD><code>ADD</code> message in SumUp protocol.<DT><A HREF="./org/apache/mina/examples/sumup/message/AddMessage.html#AddMessage()"><B>AddMessage()</B></A> - 
Constructor for class org.apache.mina.examples.sumup.message.<A HREF="./org/apache/mina/examples/sumup/message/AddMessage.html" title="class in org.apache.mina.examples.sumup.message">AddMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/AddMessageDecoder.html" title="class in org.apache.mina.examples.sumup.codec"><B>AddMessageDecoder</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/codec/package-summary.html">org.apache.mina.examples.sumup.codec</A><DD>A <CODE>MessageDecoder</CODE> that decodes <A HREF="./org/apache/mina/examples/sumup/message/AddMessage.html" title="class in org.apache.mina.examples.sumup.message"><CODE>AddMessage</CODE></A>.<DT><A HREF="./org/apache/mina/examples/sumup/codec/AddMessageDecoder.html#AddMessageDecoder()"><B>AddMessageDecoder()</B></A> - 
Constructor for class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/AddMessageDecoder.html" title="class in org.apache.mina.examples.sumup.codec">AddMessageDecoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/AddMessageEncoder.html" title="class in org.apache.mina.examples.sumup.codec"><B>AddMessageEncoder</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/codec/package-summary.html">org.apache.mina.examples.sumup.codec</A><DD>A <CODE>MessageEncoder</CODE> that encodes <A HREF="./org/apache/mina/examples/sumup/message/AddMessage.html" title="class in org.apache.mina.examples.sumup.message"><CODE>AddMessage</CODE></A>.<DT><A HREF="./org/apache/mina/examples/sumup/codec/AddMessageEncoder.html#AddMessageEncoder()"><B>AddMessageEncoder()</B></A> - 
Constructor for class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/AddMessageEncoder.html" title="class in org.apache.mina.examples.sumup.codec">AddMessageEncoder</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_B_"><!-- --></A><H2>
<B>B</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/sumup/codec/Constants.html#BODY_LEN"><B>BODY_LEN</B></A> - 
Static variable in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/Constants.html" title="class in org.apache.mina.examples.sumup.codec">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/BogusSSLContextFactory.html" title="class in org.apache.mina.examples.echoserver.ssl"><B>BogusSSLContextFactory</B></A> - Class in <A HREF="./org/apache/mina/examples/echoserver/ssl/package-summary.html">org.apache.mina.examples.echoserver.ssl</A><DD>Factory to create a bougus SSLContext.<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/BogusSSLContextFactory.html#BogusSSLContextFactory()"><B>BogusSSLContextFactory()</B></A> - 
Constructor for class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/BogusSSLContextFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">BogusSSLContextFactory</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_C_"><!-- --></A><H2>
<B>C</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/sumup/Client.html" title="class in org.apache.mina.examples.sumup"><B>Client</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/package-summary.html">org.apache.mina.examples.sumup</A><DD>(<strong>Entry Point</strong>) Starts SumUp client.<DT><A HREF="./org/apache/mina/examples/sumup/Client.html#Client()"><B>Client()</B></A> - 
Constructor for class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/Client.html" title="class in org.apache.mina.examples.sumup">Client</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ClientProtocolProvider.html" title="class in org.apache.mina.examples.sumup"><B>ClientProtocolProvider</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/package-summary.html">org.apache.mina.examples.sumup</A><DD><CODE>ProtocolProvider</CODE> for SumUp client.<DT><A HREF="./org/apache/mina/examples/sumup/ClientProtocolProvider.html#ClientProtocolProvider(int[])"><B>ClientProtocolProvider(int[])</B></A> - 
Constructor for class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ClientProtocolProvider.html" title="class in org.apache.mina.examples.sumup">ClientProtocolProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ClientSessionHandler.html" title="class in org.apache.mina.examples.sumup"><B>ClientSessionHandler</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/package-summary.html">org.apache.mina.examples.sumup</A><DD><CODE>ProtocolHandler</CODE> for SumUp client.<DT><A HREF="./org/apache/mina/examples/sumup/ClientSessionHandler.html#ClientSessionHandler(int[])"><B>ClientSessionHandler(int[])</B></A> - 
Constructor for class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ClientSessionHandler.html" title="class in org.apache.mina.examples.sumup">ClientSessionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/Constants.html" title="class in org.apache.mina.examples.sumup.codec"><B>Constants</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/codec/package-summary.html">org.apache.mina.examples.sumup.codec</A><DD>Provides SumUp protocol constants.<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html#createServerSocket(int)"><B>createServerSocket(int)</B></A> - 
Method in class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLServerSocketFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html#createServerSocket(int, int)"><B>createServerSocket(int, int)</B></A> - 
Method in class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLServerSocketFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html#createServerSocket(int, int, java.net.InetAddress)"><B>createServerSocket(int, int, InetAddress)</B></A> - 
Method in class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLServerSocketFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html#createSocket(java.lang.String, int)"><B>createSocket(String, int)</B></A> - 
Method in class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLSocketFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html#createSocket(java.lang.String, int, java.net.InetAddress, int)"><B>createSocket(String, int, InetAddress, int)</B></A> - 
Method in class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLSocketFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html#createSocket(java.net.InetAddress, int)"><B>createSocket(InetAddress, int)</B></A> - 
Method in class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLSocketFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html#createSocket(java.net.InetAddress, int, java.net.InetAddress, int)"><B>createSocket(InetAddress, int, InetAddress, int)</B></A> - 
Method in class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLSocketFactory</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_D_"><!-- --></A><H2>
<B>D</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/echoserver/EchoProtocolHandler.html#dataRead(IoSession, ByteBuffer)"><B>dataRead(IoSession, ByteBuffer)</B></A> - 
Method in class org.apache.mina.examples.echoserver.<A HREF="./org/apache/mina/examples/echoserver/EchoProtocolHandler.html" title="class in org.apache.mina.examples.echoserver">EchoProtocolHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/netcat/NetCatProtocolHandler.html#dataRead(IoSession, ByteBuffer)"><B>dataRead(IoSession, ByteBuffer)</B></A> - 
Method in class org.apache.mina.examples.netcat.<A HREF="./org/apache/mina/examples/netcat/NetCatProtocolHandler.html" title="class in org.apache.mina.examples.netcat">NetCatProtocolHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageDecoder.html#decodable(ProtocolSession, ByteBuffer)"><B>decodable(ProtocolSession, ByteBuffer)</B></A> - 
Method in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageDecoder.html" title="class in org.apache.mina.examples.sumup.codec">AbstractMessageDecoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/reverser/TextLineDecoder.html#decode(ProtocolSession, ByteBuffer, ProtocolDecoderOutput)"><B>decode(ProtocolSession, ByteBuffer, ProtocolDecoderOutput)</B></A> - 
Method in class org.apache.mina.examples.reverser.<A HREF="./org/apache/mina/examples/reverser/TextLineDecoder.html" title="class in org.apache.mina.examples.reverser">TextLineDecoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageDecoder.html#decode(ProtocolSession, ByteBuffer, ProtocolDecoderOutput)"><B>decode(ProtocolSession, ByteBuffer, ProtocolDecoderOutput)</B></A> - 
Method in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageDecoder.html" title="class in org.apache.mina.examples.sumup.codec">AbstractMessageDecoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageDecoder.html#decodeBody(ProtocolSession, ByteBuffer)"><B>decodeBody(ProtocolSession, ByteBuffer)</B></A> - 
Method in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageDecoder.html" title="class in org.apache.mina.examples.sumup.codec">AbstractMessageDecoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/AddMessageDecoder.html#decodeBody(ProtocolSession, ByteBuffer)"><B>decodeBody(ProtocolSession, ByteBuffer)</B></A> - 
Method in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/AddMessageDecoder.html" title="class in org.apache.mina.examples.sumup.codec">AddMessageDecoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/ResultMessageDecoder.html#decodeBody(ProtocolSession, ByteBuffer)"><B>decodeBody(ProtocolSession, ByteBuffer)</B></A> - 
Method in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/ResultMessageDecoder.html" title="class in org.apache.mina.examples.sumup.codec">ResultMessageDecoder</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_E_"><!-- --></A><H2>
<B>E</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/echoserver/EchoProtocolHandler.html" title="class in org.apache.mina.examples.echoserver"><B>EchoProtocolHandler</B></A> - Class in <A HREF="./org/apache/mina/examples/echoserver/package-summary.html">org.apache.mina.examples.echoserver</A><DD><CODE>IoHandler</CODE> implementation for echo server.<DT><A HREF="./org/apache/mina/examples/echoserver/EchoProtocolHandler.html#EchoProtocolHandler()"><B>EchoProtocolHandler()</B></A> - 
Constructor for class org.apache.mina.examples.echoserver.<A HREF="./org/apache/mina/examples/echoserver/EchoProtocolHandler.html" title="class in org.apache.mina.examples.echoserver">EchoProtocolHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/reverser/TextLineEncoder.html#encode(ProtocolSession, java.lang.Object, ProtocolEncoderOutput)"><B>encode(ProtocolSession, Object, ProtocolEncoderOutput)</B></A> - 
Method in class org.apache.mina.examples.reverser.<A HREF="./org/apache/mina/examples/reverser/TextLineEncoder.html" title="class in org.apache.mina.examples.reverser">TextLineEncoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageEncoder.html#encode(ProtocolSession, java.lang.Object, ProtocolEncoderOutput)"><B>encode(ProtocolSession, Object, ProtocolEncoderOutput)</B></A> - 
Method in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageEncoder.html" title="class in org.apache.mina.examples.sumup.codec">AbstractMessageEncoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageEncoder.html#encodeBody(ProtocolSession, org.apache.mina.examples.sumup.message.AbstractMessage, ByteBuffer)"><B>encodeBody(ProtocolSession, AbstractMessage, ByteBuffer)</B></A> - 
Method in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/AbstractMessageEncoder.html" title="class in org.apache.mina.examples.sumup.codec">AbstractMessageEncoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/AddMessageEncoder.html#encodeBody(ProtocolSession, org.apache.mina.examples.sumup.message.AbstractMessage, ByteBuffer)"><B>encodeBody(ProtocolSession, AbstractMessage, ByteBuffer)</B></A> - 
Method in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/AddMessageEncoder.html" title="class in org.apache.mina.examples.sumup.codec">AddMessageEncoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/ResultMessageEncoder.html#encodeBody(ProtocolSession, org.apache.mina.examples.sumup.message.AbstractMessage, ByteBuffer)"><B>encodeBody(ProtocolSession, AbstractMessage, ByteBuffer)</B></A> - 
Method in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/ResultMessageEncoder.html" title="class in org.apache.mina.examples.sumup.codec">ResultMessageEncoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/EchoProtocolHandler.html#exceptionCaught(IoSession, java.lang.Throwable)"><B>exceptionCaught(IoSession, Throwable)</B></A> - 
Method in class org.apache.mina.examples.echoserver.<A HREF="./org/apache/mina/examples/echoserver/EchoProtocolHandler.html" title="class in org.apache.mina.examples.echoserver">EchoProtocolHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/reverser/ReverseProtocolHandler.html#exceptionCaught(ProtocolSession, java.lang.Throwable)"><B>exceptionCaught(ProtocolSession, Throwable)</B></A> - 
Method in class org.apache.mina.examples.reverser.<A HREF="./org/apache/mina/examples/reverser/ReverseProtocolHandler.html" title="class in org.apache.mina.examples.reverser">ReverseProtocolHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ClientSessionHandler.html#exceptionCaught(ProtocolSession, java.lang.Throwable)"><B>exceptionCaught(ProtocolSession, Throwable)</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ClientSessionHandler.html" title="class in org.apache.mina.examples.sumup">ClientSessionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html#exceptionCaught(ProtocolSession, java.lang.Throwable)"><B>exceptionCaught(ProtocolSession, Throwable)</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html" title="class in org.apache.mina.examples.sumup">ServerSessionHandler</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_G_"><!-- --></A><H2>
<B>G</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/reverser/ReverseProtocolProvider.html#getCodecFactory()"><B>getCodecFactory()</B></A> - 
Method in class org.apache.mina.examples.reverser.<A HREF="./org/apache/mina/examples/reverser/ReverseProtocolProvider.html" title="class in org.apache.mina.examples.reverser">ReverseProtocolProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ClientProtocolProvider.html#getCodecFactory()"><B>getCodecFactory()</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ClientProtocolProvider.html" title="class in org.apache.mina.examples.sumup">ClientProtocolProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ServerProtocolProvider.html#getCodecFactory()"><B>getCodecFactory()</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ServerProtocolProvider.html" title="class in org.apache.mina.examples.sumup">ServerProtocolProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/tennis/TennisPlayer.html#getCodecFactory()"><B>getCodecFactory()</B></A> - 
Method in class org.apache.mina.examples.tennis.<A HREF="./org/apache/mina/examples/tennis/TennisPlayer.html" title="class in org.apache.mina.examples.tennis">TennisPlayer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/reverser/ReverseProtocolProvider.html#getHandler()"><B>getHandler()</B></A> - 
Method in class org.apache.mina.examples.reverser.<A HREF="./org/apache/mina/examples/reverser/ReverseProtocolProvider.html" title="class in org.apache.mina.examples.reverser">ReverseProtocolProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ClientProtocolProvider.html#getHandler()"><B>getHandler()</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ClientProtocolProvider.html" title="class in org.apache.mina.examples.sumup">ClientProtocolProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ServerProtocolProvider.html#getHandler()"><B>getHandler()</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ServerProtocolProvider.html" title="class in org.apache.mina.examples.sumup">ServerProtocolProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/tennis/TennisPlayer.html#getHandler()"><B>getHandler()</B></A> - 
Method in class org.apache.mina.examples.tennis.<A HREF="./org/apache/mina/examples/tennis/TennisPlayer.html" title="class in org.apache.mina.examples.tennis">TennisPlayer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/BogusSSLContextFactory.html#getInstance(boolean)"><B>getInstance(boolean)</B></A> - 
Static method in class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/BogusSSLContextFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">BogusSSLContextFactory</A>
<DD>Get SSLContext singleton.
<DT><A HREF="./org/apache/mina/examples/sumup/codec/AddMessageEncoder.html#getMessageTypes()"><B>getMessageTypes()</B></A> - 
Method in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/AddMessageEncoder.html" title="class in org.apache.mina.examples.sumup.codec">AddMessageEncoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/ResultMessageEncoder.html#getMessageTypes()"><B>getMessageTypes()</B></A> - 
Method in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/ResultMessageEncoder.html" title="class in org.apache.mina.examples.sumup.codec">ResultMessageEncoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/message/AbstractMessage.html#getSequence()"><B>getSequence()</B></A> - 
Method in class org.apache.mina.examples.sumup.message.<A HREF="./org/apache/mina/examples/sumup/message/AbstractMessage.html" title="class in org.apache.mina.examples.sumup.message">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html#getServerSocketFactory()"><B>getServerSocketFactory()</B></A> - 
Static method in class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLServerSocketFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html#getSocketFactory()"><B>getSocketFactory()</B></A> - 
Static method in class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLSocketFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/tennis/TennisBall.html#getTTL()"><B>getTTL()</B></A> - 
Method in class org.apache.mina.examples.tennis.<A HREF="./org/apache/mina/examples/tennis/TennisBall.html" title="class in org.apache.mina.examples.tennis">TennisBall</A>
<DD>Returns the TTL value of this ball.
<DT><A HREF="./org/apache/mina/examples/sumup/message/AddMessage.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.mina.examples.sumup.message.<A HREF="./org/apache/mina/examples/sumup/message/AddMessage.html" title="class in org.apache.mina.examples.sumup.message">AddMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html#getValue()"><B>getValue()</B></A> - 
Method in class org.apache.mina.examples.sumup.message.<A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html" title="class in org.apache.mina.examples.sumup.message">ResultMessage</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_H_"><!-- --></A><H2>
<B>H</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/sumup/codec/Constants.html#HEADER_LEN"><B>HEADER_LEN</B></A> - 
Static variable in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/Constants.html" title="class in org.apache.mina.examples.sumup.codec">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/httpserver/HttpProtocolHandler.html" title="class in org.apache.mina.examples.httpserver"><B>HttpProtocolHandler</B></A> - Class in <A HREF="./org/apache/mina/examples/httpserver/package-summary.html">org.apache.mina.examples.httpserver</A><DD>A simplistic HTTP protocol handler that replies back the URL and headers
 which a client requested.<DT><A HREF="./org/apache/mina/examples/httpserver/HttpProtocolHandler.html#HttpProtocolHandler()"><B>HttpProtocolHandler()</B></A> - 
Constructor for class org.apache.mina.examples.httpserver.<A HREF="./org/apache/mina/examples/httpserver/HttpProtocolHandler.html" title="class in org.apache.mina.examples.httpserver">HttpProtocolHandler</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_I_"><!-- --></A><H2>
<B>I</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/sumup/ClientSessionHandler.html#isFinished()"><B>isFinished()</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ClientSessionHandler.html" title="class in org.apache.mina.examples.sumup">ClientSessionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html#isOk()"><B>isOk()</B></A> - 
Method in class org.apache.mina.examples.sumup.message.<A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html" title="class in org.apache.mina.examples.sumup.message">ResultMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html#isSslEnabled()"><B>isSslEnabled()</B></A> - 
Static method in class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLServerSocketFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html#isSslEnabled()"><B>isSslEnabled()</B></A> - 
Static method in class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLSocketFactory</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_M_"><!-- --></A><H2>
<B>M</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/echoserver/Main.html" title="class in org.apache.mina.examples.echoserver"><B>Main</B></A> - Class in <A HREF="./org/apache/mina/examples/echoserver/package-summary.html">org.apache.mina.examples.echoserver</A><DD>(<b>Entry point</b>) Echo server<DT><A HREF="./org/apache/mina/examples/echoserver/Main.html#Main()"><B>Main()</B></A> - 
Constructor for class org.apache.mina.examples.echoserver.<A HREF="./org/apache/mina/examples/echoserver/Main.html" title="class in org.apache.mina.examples.echoserver">Main</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/Main.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
Static method in class org.apache.mina.examples.echoserver.<A HREF="./org/apache/mina/examples/echoserver/Main.html" title="class in org.apache.mina.examples.echoserver">Main</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/httpserver/Main.html" title="class in org.apache.mina.examples.httpserver"><B>Main</B></A> - Class in <A HREF="./org/apache/mina/examples/httpserver/package-summary.html">org.apache.mina.examples.httpserver</A><DD>(<b>Entry point</b>) HTTP server<DT><A HREF="./org/apache/mina/examples/httpserver/Main.html#Main()"><B>Main()</B></A> - 
Constructor for class org.apache.mina.examples.httpserver.<A HREF="./org/apache/mina/examples/httpserver/Main.html" title="class in org.apache.mina.examples.httpserver">Main</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/httpserver/Main.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
Static method in class org.apache.mina.examples.httpserver.<A HREF="./org/apache/mina/examples/httpserver/Main.html" title="class in org.apache.mina.examples.httpserver">Main</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/netcat/Main.html" title="class in org.apache.mina.examples.netcat"><B>Main</B></A> - Class in <A HREF="./org/apache/mina/examples/netcat/package-summary.html">org.apache.mina.examples.netcat</A><DD>(<b>Entry point</b>) NetCat client.<DT><A HREF="./org/apache/mina/examples/netcat/Main.html#Main()"><B>Main()</B></A> - 
Constructor for class org.apache.mina.examples.netcat.<A HREF="./org/apache/mina/examples/netcat/Main.html" title="class in org.apache.mina.examples.netcat">Main</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/netcat/Main.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
Static method in class org.apache.mina.examples.netcat.<A HREF="./org/apache/mina/examples/netcat/Main.html" title="class in org.apache.mina.examples.netcat">Main</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/reverser/Main.html" title="class in org.apache.mina.examples.reverser"><B>Main</B></A> - Class in <A HREF="./org/apache/mina/examples/reverser/package-summary.html">org.apache.mina.examples.reverser</A><DD>(<b>Entry point</b>) Reverser server which reverses all text lines from
 clients.<DT><A HREF="./org/apache/mina/examples/reverser/Main.html#Main()"><B>Main()</B></A> - 
Constructor for class org.apache.mina.examples.reverser.<A HREF="./org/apache/mina/examples/reverser/Main.html" title="class in org.apache.mina.examples.reverser">Main</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/reverser/Main.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
Static method in class org.apache.mina.examples.reverser.<A HREF="./org/apache/mina/examples/reverser/Main.html" title="class in org.apache.mina.examples.reverser">Main</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/Client.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
Static method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/Client.html" title="class in org.apache.mina.examples.sumup">Client</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/Server.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
Static method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/Server.html" title="class in org.apache.mina.examples.sumup">Server</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/tennis/Main.html" title="class in org.apache.mina.examples.tennis"><B>Main</B></A> - Class in <A HREF="./org/apache/mina/examples/tennis/package-summary.html">org.apache.mina.examples.tennis</A><DD>(<b>Entry point</b>) An 'in-VM pipe' example which simulates a tennis game
 between client and server.<DT><A HREF="./org/apache/mina/examples/tennis/Main.html#Main()"><B>Main()</B></A> - 
Constructor for class org.apache.mina.examples.tennis.<A HREF="./org/apache/mina/examples/tennis/Main.html" title="class in org.apache.mina.examples.tennis">Main</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/tennis/Main.html#main(java.lang.String[])"><B>main(String[])</B></A> - 
Static method in class org.apache.mina.examples.tennis.<A HREF="./org/apache/mina/examples/tennis/Main.html" title="class in org.apache.mina.examples.tennis">Main</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/reverser/ReverseProtocolHandler.html#messageReceived(ProtocolSession, java.lang.Object)"><B>messageReceived(ProtocolSession, Object)</B></A> - 
Method in class org.apache.mina.examples.reverser.<A HREF="./org/apache/mina/examples/reverser/ReverseProtocolHandler.html" title="class in org.apache.mina.examples.reverser">ReverseProtocolHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ClientSessionHandler.html#messageReceived(ProtocolSession, java.lang.Object)"><B>messageReceived(ProtocolSession, Object)</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ClientSessionHandler.html" title="class in org.apache.mina.examples.sumup">ClientSessionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html#messageReceived(ProtocolSession, java.lang.Object)"><B>messageReceived(ProtocolSession, Object)</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html" title="class in org.apache.mina.examples.sumup">ServerSessionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html#messageSent(ProtocolSession, java.lang.Object)"><B>messageSent(ProtocolSession, Object)</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html" title="class in org.apache.mina.examples.sumup">ServerSessionHandler</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_N_"><!-- --></A><H2>
<B>N</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/netcat/NetCatProtocolHandler.html" title="class in org.apache.mina.examples.netcat"><B>NetCatProtocolHandler</B></A> - Class in <A HREF="./org/apache/mina/examples/netcat/package-summary.html">org.apache.mina.examples.netcat</A><DD><CODE>IoHandler</CODE> implementation for NetCat client.<DT><A HREF="./org/apache/mina/examples/netcat/NetCatProtocolHandler.html#NetCatProtocolHandler()"><B>NetCatProtocolHandler()</B></A> - 
Constructor for class org.apache.mina.examples.netcat.<A HREF="./org/apache/mina/examples/netcat/NetCatProtocolHandler.html" title="class in org.apache.mina.examples.netcat">NetCatProtocolHandler</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_O_"><!-- --></A><H2>
<B>O</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/echoserver/package-summary.html"><B>org.apache.mina.examples.echoserver</B></A> - package org.apache.mina.examples.echoserver<DD>Echo server which demonstates low-level I/O layer and SSL support.<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/package-summary.html"><B>org.apache.mina.examples.echoserver.ssl</B></A> - package org.apache.mina.examples.echoserver.ssl<DD>SSL support classes.<DT><A HREF="./org/apache/mina/examples/httpserver/package-summary.html"><B>org.apache.mina.examples.httpserver</B></A> - package org.apache.mina.examples.httpserver<DD>Simplistic HTTP server which demonstates stream-based I/O support.<DT><A HREF="./org/apache/mina/examples/netcat/package-summary.html"><B>org.apache.mina.examples.netcat</B></A> - package org.apache.mina.examples.netcat<DD>NetCat client (Network + Unix <code>cat</code> command) which demonstates low-level I/O layer.<DT><A HREF="./org/apache/mina/examples/reverser/package-summary.html"><B>org.apache.mina.examples.reverser</B></A> - package org.apache.mina.examples.reverser<DD>Reverser server which reverses all text lines demonstating high-level protocol layer.<DT><A HREF="./org/apache/mina/examples/sumup/package-summary.html"><B>org.apache.mina.examples.sumup</B></A> - package org.apache.mina.examples.sumup<DD>&nbsp;<DT><A HREF="./org/apache/mina/examples/sumup/codec/package-summary.html"><B>org.apache.mina.examples.sumup.codec</B></A> - package org.apache.mina.examples.sumup.codec<DD>&nbsp;<DT><A HREF="./org/apache/mina/examples/sumup/message/package-summary.html"><B>org.apache.mina.examples.sumup.message</B></A> - package org.apache.mina.examples.sumup.message<DD>&nbsp;<DT><A HREF="./org/apache/mina/examples/tennis/package-summary.html"><B>org.apache.mina.examples.tennis</B></A> - package org.apache.mina.examples.tennis<DD>Two tennis players play a game which demonstates in-VM pipes.</DL>
<HR>
<A NAME="_P_"><!-- --></A><H2>
<B>P</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/httpserver/HttpProtocolHandler.html#processStreamIo(IoSession, java.io.InputStream, java.io.OutputStream)"><B>processStreamIo(IoSession, InputStream, OutputStream)</B></A> - 
Method in class org.apache.mina.examples.httpserver.<A HREF="./org/apache/mina/examples/httpserver/HttpProtocolHandler.html" title="class in org.apache.mina.examples.httpserver">HttpProtocolHandler</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_R_"><!-- --></A><H2>
<B>R</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/sumup/codec/Constants.html#RESULT"><B>RESULT</B></A> - 
Static variable in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/Constants.html" title="class in org.apache.mina.examples.sumup.codec">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/Constants.html#RESULT_CODE_LEN"><B>RESULT_CODE_LEN</B></A> - 
Static variable in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/Constants.html" title="class in org.apache.mina.examples.sumup.codec">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/Constants.html#RESULT_ERROR"><B>RESULT_ERROR</B></A> - 
Static variable in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/Constants.html" title="class in org.apache.mina.examples.sumup.codec">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/Constants.html#RESULT_OK"><B>RESULT_OK</B></A> - 
Static variable in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/Constants.html" title="class in org.apache.mina.examples.sumup.codec">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/Constants.html#RESULT_VALUE_LEN"><B>RESULT_VALUE_LEN</B></A> - 
Static variable in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/Constants.html" title="class in org.apache.mina.examples.sumup.codec">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html" title="class in org.apache.mina.examples.sumup.message"><B>ResultMessage</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/message/package-summary.html">org.apache.mina.examples.sumup.message</A><DD><code>RESULT</code> message in SumUp protocol.<DT><A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html#ResultMessage()"><B>ResultMessage()</B></A> - 
Constructor for class org.apache.mina.examples.sumup.message.<A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html" title="class in org.apache.mina.examples.sumup.message">ResultMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/ResultMessageDecoder.html" title="class in org.apache.mina.examples.sumup.codec"><B>ResultMessageDecoder</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/codec/package-summary.html">org.apache.mina.examples.sumup.codec</A><DD>A <CODE>MessageDecoder</CODE> that decodes <A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html" title="class in org.apache.mina.examples.sumup.message"><CODE>ResultMessage</CODE></A>.<DT><A HREF="./org/apache/mina/examples/sumup/codec/ResultMessageDecoder.html#ResultMessageDecoder()"><B>ResultMessageDecoder()</B></A> - 
Constructor for class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/ResultMessageDecoder.html" title="class in org.apache.mina.examples.sumup.codec">ResultMessageDecoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/codec/ResultMessageEncoder.html" title="class in org.apache.mina.examples.sumup.codec"><B>ResultMessageEncoder</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/codec/package-summary.html">org.apache.mina.examples.sumup.codec</A><DD>A <CODE>MessageEncoder</CODE> that encodes <A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html" title="class in org.apache.mina.examples.sumup.message"><CODE>ResultMessage</CODE></A>.<DT><A HREF="./org/apache/mina/examples/sumup/codec/ResultMessageEncoder.html#ResultMessageEncoder()"><B>ResultMessageEncoder()</B></A> - 
Constructor for class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/ResultMessageEncoder.html" title="class in org.apache.mina.examples.sumup.codec">ResultMessageEncoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/reverser/ReverseProtocolHandler.html" title="class in org.apache.mina.examples.reverser"><B>ReverseProtocolHandler</B></A> - Class in <A HREF="./org/apache/mina/examples/reverser/package-summary.html">org.apache.mina.examples.reverser</A><DD><CODE>ProtocolHandler</CODE> implementation of reverser server protocol.<DT><A HREF="./org/apache/mina/examples/reverser/ReverseProtocolHandler.html#ReverseProtocolHandler()"><B>ReverseProtocolHandler()</B></A> - 
Constructor for class org.apache.mina.examples.reverser.<A HREF="./org/apache/mina/examples/reverser/ReverseProtocolHandler.html" title="class in org.apache.mina.examples.reverser">ReverseProtocolHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/reverser/ReverseProtocolProvider.html" title="class in org.apache.mina.examples.reverser"><B>ReverseProtocolProvider</B></A> - Class in <A HREF="./org/apache/mina/examples/reverser/package-summary.html">org.apache.mina.examples.reverser</A><DD><CODE>ProtocolProvider</CODE> implementation for reverser server protocol.<DT><A HREF="./org/apache/mina/examples/reverser/ReverseProtocolProvider.html#ReverseProtocolProvider()"><B>ReverseProtocolProvider()</B></A> - 
Constructor for class org.apache.mina.examples.reverser.<A HREF="./org/apache/mina/examples/reverser/ReverseProtocolProvider.html" title="class in org.apache.mina.examples.reverser">ReverseProtocolProvider</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_S_"><!-- --></A><H2>
<B>S</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/sumup/codec/Constants.html#SEQUENCE_LEN"><B>SEQUENCE_LEN</B></A> - 
Static variable in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/Constants.html" title="class in org.apache.mina.examples.sumup.codec">Constants</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/Server.html" title="class in org.apache.mina.examples.sumup"><B>Server</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/package-summary.html">org.apache.mina.examples.sumup</A><DD>(<strong>Entry Point</strong>) Starts SumUp server.<DT><A HREF="./org/apache/mina/examples/sumup/Server.html#Server()"><B>Server()</B></A> - 
Constructor for class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/Server.html" title="class in org.apache.mina.examples.sumup">Server</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ServerProtocolProvider.html" title="class in org.apache.mina.examples.sumup"><B>ServerProtocolProvider</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/package-summary.html">org.apache.mina.examples.sumup</A><DD><CODE>ProtocolProvider</CODE> for SumUp server.<DT><A HREF="./org/apache/mina/examples/sumup/ServerProtocolProvider.html#ServerProtocolProvider()"><B>ServerProtocolProvider()</B></A> - 
Constructor for class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ServerProtocolProvider.html" title="class in org.apache.mina.examples.sumup">ServerProtocolProvider</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html" title="class in org.apache.mina.examples.sumup"><B>ServerSessionHandler</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/package-summary.html">org.apache.mina.examples.sumup</A><DD><CODE>ProtocolHandler</CODE> for SumUp server.<DT><A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html#ServerSessionHandler()"><B>ServerSessionHandler()</B></A> - 
Constructor for class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html" title="class in org.apache.mina.examples.sumup">ServerSessionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/netcat/NetCatProtocolHandler.html#sessionClosed(IoSession)"><B>sessionClosed(IoSession)</B></A> - 
Method in class org.apache.mina.examples.netcat.<A HREF="./org/apache/mina/examples/netcat/NetCatProtocolHandler.html" title="class in org.apache.mina.examples.netcat">NetCatProtocolHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html#sessionClosed(ProtocolSession)"><B>sessionClosed(ProtocolSession)</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html" title="class in org.apache.mina.examples.sumup">ServerSessionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/EchoProtocolHandler.html#sessionCreated(IoSession)"><B>sessionCreated(IoSession)</B></A> - 
Method in class org.apache.mina.examples.echoserver.<A HREF="./org/apache/mina/examples/echoserver/EchoProtocolHandler.html" title="class in org.apache.mina.examples.echoserver">EchoProtocolHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ClientSessionHandler.html#sessionCreated(ProtocolSession)"><B>sessionCreated(ProtocolSession)</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ClientSessionHandler.html" title="class in org.apache.mina.examples.sumup">ClientSessionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html#sessionCreated(ProtocolSession)"><B>sessionCreated(ProtocolSession)</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html" title="class in org.apache.mina.examples.sumup">ServerSessionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/netcat/NetCatProtocolHandler.html#sessionIdle(IoSession, IdleStatus)"><B>sessionIdle(IoSession, IdleStatus)</B></A> - 
Method in class org.apache.mina.examples.netcat.<A HREF="./org/apache/mina/examples/netcat/NetCatProtocolHandler.html" title="class in org.apache.mina.examples.netcat">NetCatProtocolHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html#sessionIdle(ProtocolSession, IdleStatus)"><B>sessionIdle(ProtocolSession, IdleStatus)</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html" title="class in org.apache.mina.examples.sumup">ServerSessionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/netcat/NetCatProtocolHandler.html#sessionOpened(IoSession)"><B>sessionOpened(IoSession)</B></A> - 
Method in class org.apache.mina.examples.netcat.<A HREF="./org/apache/mina/examples/netcat/NetCatProtocolHandler.html" title="class in org.apache.mina.examples.netcat">NetCatProtocolHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ClientSessionHandler.html#sessionOpened(ProtocolSession)"><B>sessionOpened(ProtocolSession)</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ClientSessionHandler.html" title="class in org.apache.mina.examples.sumup">ClientSessionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html#sessionOpened(ProtocolSession)"><B>sessionOpened(ProtocolSession)</B></A> - 
Method in class org.apache.mina.examples.sumup.<A HREF="./org/apache/mina/examples/sumup/ServerSessionHandler.html" title="class in org.apache.mina.examples.sumup">ServerSessionHandler</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html#setOk(boolean)"><B>setOk(boolean)</B></A> - 
Method in class org.apache.mina.examples.sumup.message.<A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html" title="class in org.apache.mina.examples.sumup.message">ResultMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/message/AbstractMessage.html#setSequence(int)"><B>setSequence(int)</B></A> - 
Method in class org.apache.mina.examples.sumup.message.<A HREF="./org/apache/mina/examples/sumup/message/AbstractMessage.html" title="class in org.apache.mina.examples.sumup.message">AbstractMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html#setSslEnabled(boolean)"><B>setSslEnabled(boolean)</B></A> - 
Static method in class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLServerSocketFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html#setSslEnabled(boolean)"><B>setSslEnabled(boolean)</B></A> - 
Static method in class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLSocketFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/message/AddMessage.html#setValue(int)"><B>setValue(int)</B></A> - 
Method in class org.apache.mina.examples.sumup.message.<A HREF="./org/apache/mina/examples/sumup/message/AddMessage.html" title="class in org.apache.mina.examples.sumup.message">AddMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html#setValue(int)"><B>setValue(int)</B></A> - 
Method in class org.apache.mina.examples.sumup.message.<A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html" title="class in org.apache.mina.examples.sumup.message">ResultMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl"><B>SSLServerSocketFactory</B></A> - Class in <A HREF="./org/apache/mina/examples/echoserver/ssl/package-summary.html">org.apache.mina.examples.echoserver.ssl</A><DD>Simple Server Socket factory to create sockets with or without SSL enabled.<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html#SSLServerSocketFactory()"><B>SSLServerSocketFactory()</B></A> - 
Constructor for class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLServerSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLServerSocketFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl"><B>SSLSocketFactory</B></A> - Class in <A HREF="./org/apache/mina/examples/echoserver/ssl/package-summary.html">org.apache.mina.examples.echoserver.ssl</A><DD>Simple Socket factory to create sockets with or without SSL enabled.<DT><A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html#SSLSocketFactory()"><B>SSLSocketFactory()</B></A> - 
Constructor for class org.apache.mina.examples.echoserver.ssl.<A HREF="./org/apache/mina/examples/echoserver/ssl/SSLSocketFactory.html" title="class in org.apache.mina.examples.echoserver.ssl">SSLSocketFactory</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/tennis/TennisBall.html#stroke()"><B>stroke()</B></A> - 
Method in class org.apache.mina.examples.tennis.<A HREF="./org/apache/mina/examples/tennis/TennisBall.html" title="class in org.apache.mina.examples.tennis">TennisBall</A>
<DD>Returns the ball after <A HREF="./org/apache/mina/examples/tennis/TennisPlayer.html" title="class in org.apache.mina.examples.tennis"><CODE>TennisPlayer</CODE></A>'s stroke.
<DT><A HREF="./org/apache/mina/examples/sumup/codec/SumUpProtocolCodecFactory.html" title="class in org.apache.mina.examples.sumup.codec"><B>SumUpProtocolCodecFactory</B></A> - Class in <A HREF="./org/apache/mina/examples/sumup/codec/package-summary.html">org.apache.mina.examples.sumup.codec</A><DD>A <CODE>ProtocolCodecFactory</CODE> that provides a protocol codec for
 SumUp protocol.<DT><A HREF="./org/apache/mina/examples/sumup/codec/SumUpProtocolCodecFactory.html#SumUpProtocolCodecFactory(boolean)"><B>SumUpProtocolCodecFactory(boolean)</B></A> - 
Constructor for class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/SumUpProtocolCodecFactory.html" title="class in org.apache.mina.examples.sumup.codec">SumUpProtocolCodecFactory</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_T_"><!-- --></A><H2>
<B>T</B></H2>
<DL>
<DT><A HREF="./org/apache/mina/examples/tennis/TennisBall.html" title="class in org.apache.mina.examples.tennis"><B>TennisBall</B></A> - Class in <A HREF="./org/apache/mina/examples/tennis/package-summary.html">org.apache.mina.examples.tennis</A><DD>A tennis ball which has TTL value and state whose value is one of 'PING' and
 'PONG'.<DT><A HREF="./org/apache/mina/examples/tennis/TennisBall.html#TennisBall(int)"><B>TennisBall(int)</B></A> - 
Constructor for class org.apache.mina.examples.tennis.<A HREF="./org/apache/mina/examples/tennis/TennisBall.html" title="class in org.apache.mina.examples.tennis">TennisBall</A>
<DD>Creates a new ball with the specified TTL (Time To Live) value.
<DT><A HREF="./org/apache/mina/examples/tennis/TennisPlayer.html" title="class in org.apache.mina.examples.tennis"><B>TennisPlayer</B></A> - Class in <A HREF="./org/apache/mina/examples/tennis/package-summary.html">org.apache.mina.examples.tennis</A><DD>A <CODE>ProtocolHandler</CODE> implementation which plays a tennis game.<DT><A HREF="./org/apache/mina/examples/tennis/TennisPlayer.html#TennisPlayer()"><B>TennisPlayer()</B></A> - 
Constructor for class org.apache.mina.examples.tennis.<A HREF="./org/apache/mina/examples/tennis/TennisPlayer.html" title="class in org.apache.mina.examples.tennis">TennisPlayer</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/reverser/TextLineDecoder.html" title="class in org.apache.mina.examples.reverser"><B>TextLineDecoder</B></A> - Class in <A HREF="./org/apache/mina/examples/reverser/package-summary.html">org.apache.mina.examples.reverser</A><DD>Decodes a text line into a string.<DT><A HREF="./org/apache/mina/examples/reverser/TextLineDecoder.html#TextLineDecoder()"><B>TextLineDecoder()</B></A> - 
Constructor for class org.apache.mina.examples.reverser.<A HREF="./org/apache/mina/examples/reverser/TextLineDecoder.html" title="class in org.apache.mina.examples.reverser">TextLineDecoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/reverser/TextLineEncoder.html" title="class in org.apache.mina.examples.reverser"><B>TextLineEncoder</B></A> - Class in <A HREF="./org/apache/mina/examples/reverser/package-summary.html">org.apache.mina.examples.reverser</A><DD>Encodes a string into a text line which ends with <code>"\r\n"</code>.<DT><A HREF="./org/apache/mina/examples/reverser/TextLineEncoder.html#TextLineEncoder()"><B>TextLineEncoder()</B></A> - 
Constructor for class org.apache.mina.examples.reverser.<A HREF="./org/apache/mina/examples/reverser/TextLineEncoder.html" title="class in org.apache.mina.examples.reverser">TextLineEncoder</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/message/AddMessage.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.mina.examples.sumup.message.<A HREF="./org/apache/mina/examples/sumup/message/AddMessage.html" title="class in org.apache.mina.examples.sumup.message">AddMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.mina.examples.sumup.message.<A HREF="./org/apache/mina/examples/sumup/message/ResultMessage.html" title="class in org.apache.mina.examples.sumup.message">ResultMessage</A>
<DD>&nbsp;
<DT><A HREF="./org/apache/mina/examples/tennis/TennisBall.html#toString()"><B>toString()</B></A> - 
Method in class org.apache.mina.examples.tennis.<A HREF="./org/apache/mina/examples/tennis/TennisBall.html" title="class in org.apache.mina.examples.tennis">TennisBall</A>
<DD>Returns string representation of this message (<code>[PING|PONG]
 (TTL)</code>).
<DT><A HREF="./org/apache/mina/examples/sumup/codec/Constants.html#TYPE_LEN"><B>TYPE_LEN</B></A> - 
Static variable in class org.apache.mina.examples.sumup.codec.<A HREF="./org/apache/mina/examples/sumup/codec/Constants.html" title="class in org.apache.mina.examples.sumup.codec">Constants</A>
<DD>&nbsp;
</DL>
<HR>
<A HREF="#_A_">A</A> <A HREF="#_B_">B</A> <A HREF="#_C_">C</A> <A HREF="#_D_">D</A> <A HREF="#_E_">E</A> <A HREF="#_G_">G</A> <A HREF="#_H_">H</A> <A HREF="#_I_">I</A> <A HREF="#_M_">M</A> <A HREF="#_N_">N</A> <A HREF="#_O_">O</A> <A HREF="#_P_">P</A> <A HREF="#_R_">R</A> <A HREF="#_S_">S</A> <A HREF="#_T_">T</A> 

<!-- ======= 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">    <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="./overview-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="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&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&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="./index.html?index-all.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="index-all.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>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>

</BODY>
</HTML>
