<!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_04) on Sat Nov 12 08:39:02 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/echoserver/EchoProtocolHandler.html#sessionIdle(IoSession, IdleStatus)"><B>sessionIdle(IoSession, IdleStatus)</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#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>
