blob: 59b141dcd60be260020d7fcd88c40b74da6de931 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_24) on Mon Apr 11 23:10:48 CEST 2011 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
AbstractIoService (Apache MINA 2.0.3 API)
</TITLE>
<META NAME="date" CONTENT="2011-04-11">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="AbstractIoService (Apache MINA 2.0.3 API)";
}
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<HR>
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AbstractIoService.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/mina/core/service/AbstractIoConnector.html" title="class in org.apache.mina.core.service"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.ServiceOperationFuture.html" title="class in org.apache.mina.core.service"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?org/apache/mina/core/service/AbstractIoService.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="AbstractIoService.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.mina.core.service</FONT>
<BR>
Class AbstractIoService</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.mina.core.service.AbstractIoService</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></DD>
</DL>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../../org/apache/mina/core/service/AbstractIoAcceptor.html" title="class in org.apache.mina.core.service">AbstractIoAcceptor</A>, <A HREF="../../../../../org/apache/mina/core/service/AbstractIoConnector.html" title="class in org.apache.mina.core.service">AbstractIoConnector</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public abstract class <B>AbstractIoService</B><DT>extends java.lang.Object<DT>implements <A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></DL>
</PRE>
<P>
Base implementation of <A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service"><CODE>IoService</CODE></A>s.
An instance of IoService contains an Executor which will handle the incoming
events.
<P>
<P>
<DL>
<DT><B>Author:</B></DT>
<DD><a href="http://mina.apache.org">Apache MINA Project</a></DD>
</DL>
<HR>
<P>
<!-- ======== NESTED CLASS SUMMARY ======== -->
<A NAME="nested_class_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Nested Class Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected static&nbsp;class</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.ServiceOperationFuture.html" title="class in org.apache.mina.core.service">AbstractIoService.ServiceOperationFuture</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.Object</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#disposalLock">disposalLock</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A lock object which must be acquired when related resources are
destroyed.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected </CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#AbstractIoService(org.apache.mina.core.session.IoSessionConfig, java.util.concurrent.Executor)">AbstractIoService</A></B>(<A HREF="../../../../../org/apache/mina/core/session/IoSessionConfig.html" title="interface in org.apache.mina.core.session">IoSessionConfig</A>&nbsp;sessionConfig,
java.util.concurrent.Executor&nbsp;executor)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructor for <A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html" title="class in org.apache.mina.core.service"><CODE>AbstractIoService</CODE></A>.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#addListener(org.apache.mina.core.service.IoServiceListener)">addListener</A></B>(<A HREF="../../../../../org/apache/mina/core/service/IoServiceListener.html" title="interface in org.apache.mina.core.service">IoServiceListener</A>&nbsp;listener)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds an <A HREF="../../../../../org/apache/mina/core/service/IoServiceListener.html" title="interface in org.apache.mina.core.service"><CODE>IoServiceListener</CODE></A> that listens any events related with
this service.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.util.Set&lt;<A HREF="../../../../../org/apache/mina/core/future/WriteFuture.html" title="interface in org.apache.mina.core.future">WriteFuture</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#broadcast(java.lang.Object)">broadcast</A></B>(java.lang.Object&nbsp;message)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Writes the specified <code>message</code> to all the <A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session"><CODE>IoSession</CODE></A>s
managed by this service.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#dispose()">dispose</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Releases any resources allocated by this service.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#dispose(boolean)">dispose</A></B>(boolean&nbsp;awaitTermination)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Releases any resources allocated by this service.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected abstract &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#dispose0()">dispose0</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Implement this method to release any acquired resources.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#executeWorker(java.lang.Runnable)">executeWorker</A></B>(java.lang.Runnable&nbsp;worker)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#executeWorker(java.lang.Runnable, java.lang.String)">executeWorker</A></B>(java.lang.Runnable&nbsp;worker,
java.lang.String&nbsp;suffix)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#finishSessionInitialization0(org.apache.mina.core.session.IoSession, org.apache.mina.core.future.IoFuture)">finishSessionInitialization0</A></B>(<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="../../../../../org/apache/mina/core/future/IoFuture.html" title="interface in org.apache.mina.core.future">IoFuture</A>&nbsp;future)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Implement this method to perform additional tasks required for session
initialization.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#getActivationTime()">getActivationTime</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the time when this service was activated.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/mina/core/filterchain/DefaultIoFilterChainBuilder.html" title="class in org.apache.mina.core.filterchain">DefaultIoFilterChainBuilder</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#getFilterChain()">getFilterChain</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A shortcut for <tt>( ( DefaultIoFilterChainBuilder ) </tt><A HREF="../../../../../org/apache/mina/core/service/IoService.html#getFilterChainBuilder()"><CODE>IoService.getFilterChainBuilder()</CODE></A><tt> )</tt>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChainBuilder.html" title="interface in org.apache.mina.core.filterchain">IoFilterChainBuilder</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#getFilterChainBuilder()">getFilterChainBuilder</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the <A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChainBuilder.html" title="interface in org.apache.mina.core.filterchain"><CODE>IoFilterChainBuilder</CODE></A> which will build the
<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChain.html" title="interface in org.apache.mina.core.filterchain"><CODE>IoFilterChain</CODE></A> of all <A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session"><CODE>IoSession</CODE></A>s which is created
by this service.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/mina/core/service/IoHandler.html" title="interface in org.apache.mina.core.service">IoHandler</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#getHandler()">getHandler</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the handler which will handle all connections managed by this service.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/mina/core/service/IoServiceListenerSupport.html" title="class in org.apache.mina.core.service">IoServiceListenerSupport</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#getListeners()">getListeners</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#getManagedSessionCount()">getManagedSessionCount</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the number of all sessions which are currently managed by this
service.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.util.Map&lt;java.lang.Long,<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#getManagedSessions()">getManagedSessions</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the map of all sessions which are currently managed by this
service.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#getScheduledWriteBytes()">getScheduledWriteBytes</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the number of bytes scheduled to be written</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#getScheduledWriteMessages()">getScheduledWriteMessages</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the number of messages scheduled to be written</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/mina/core/session/IoSessionConfig.html" title="interface in org.apache.mina.core.session">IoSessionConfig</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#getSessionConfig()">getSessionConfig</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the default configuration of the new <A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session"><CODE>IoSession</CODE></A>s
created by this service.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/mina/core/session/IoSessionDataStructureFactory.html" title="interface in org.apache.mina.core.session">IoSessionDataStructureFactory</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#getSessionDataStructureFactory()">getSessionDataStructureFactory</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the <A HREF="../../../../../org/apache/mina/core/session/IoSessionDataStructureFactory.html" title="interface in org.apache.mina.core.session"><CODE>IoSessionDataStructureFactory</CODE></A> that provides
related data structures for a new session created by this service.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../org/apache/mina/core/service/IoServiceStatistics.html" title="class in org.apache.mina.core.service">IoServiceStatistics</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#getStatistics()">getStatistics</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the IoServiceStatistics object for this service.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#initSession(org.apache.mina.core.session.IoSession, org.apache.mina.core.future.IoFuture, org.apache.mina.core.session.IoSessionInitializer)">initSession</A></B>(<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="../../../../../org/apache/mina/core/future/IoFuture.html" title="interface in org.apache.mina.core.future">IoFuture</A>&nbsp;future,
<A HREF="../../../../../org/apache/mina/core/session/IoSessionInitializer.html" title="interface in org.apache.mina.core.session">IoSessionInitializer</A>&nbsp;sessionInitializer)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#isActive()">isActive</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a value of whether or not this service is active</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#isDisposed()">isDisposed</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns <tt>true</tt> if and if only all resources of this processor
have been disposed.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#isDisposing()">isDisposing</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns <tt>true</tt> if and if only <A HREF="../../../../../org/apache/mina/core/service/IoService.html#dispose()"><CODE>IoService.dispose()</CODE></A> method has
been called.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#removeListener(org.apache.mina.core.service.IoServiceListener)">removeListener</A></B>(<A HREF="../../../../../org/apache/mina/core/service/IoServiceListener.html" title="interface in org.apache.mina.core.service">IoServiceListener</A>&nbsp;listener)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Removed an existing <A HREF="../../../../../org/apache/mina/core/service/IoServiceListener.html" title="interface in org.apache.mina.core.service"><CODE>IoServiceListener</CODE></A> that listens any events
related with this service.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#setFilterChainBuilder(org.apache.mina.core.filterchain.IoFilterChainBuilder)">setFilterChainBuilder</A></B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChainBuilder.html" title="interface in org.apache.mina.core.filterchain">IoFilterChainBuilder</A>&nbsp;builder)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the <A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChainBuilder.html" title="interface in org.apache.mina.core.filterchain"><CODE>IoFilterChainBuilder</CODE></A> which will build the
<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChain.html" title="interface in org.apache.mina.core.filterchain"><CODE>IoFilterChain</CODE></A> of all <A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session"><CODE>IoSession</CODE></A>s which is created
by this service.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#setHandler(org.apache.mina.core.service.IoHandler)">setHandler</A></B>(<A HREF="../../../../../org/apache/mina/core/service/IoHandler.html" title="interface in org.apache.mina.core.service">IoHandler</A>&nbsp;handler)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the handler which will handle all connections managed by this service.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#setSessionDataStructureFactory(org.apache.mina.core.session.IoSessionDataStructureFactory)">setSessionDataStructureFactory</A></B>(<A HREF="../../../../../org/apache/mina/core/session/IoSessionDataStructureFactory.html" title="interface in org.apache.mina.core.session">IoSessionDataStructureFactory</A>&nbsp;sessionDataStructureFactory)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the <A HREF="../../../../../org/apache/mina/core/session/IoSessionDataStructureFactory.html" title="interface in org.apache.mina.core.session"><CODE>IoSessionDataStructureFactory</CODE></A> that provides
related data structures for a new session created by this service.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.mina.core.service.IoService"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from interface org.apache.mina.core.service.<A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#getTransportMetadata()">getTransportMetadata</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="disposalLock"><!-- --></A><H3>
disposalLock</H3>
<PRE>
protected final java.lang.Object <B>disposalLock</B></PRE>
<DL>
<DD>A lock object which must be acquired when related resources are
destroyed.
<P>
<DL>
</DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="AbstractIoService(org.apache.mina.core.session.IoSessionConfig, java.util.concurrent.Executor)"><!-- --></A><H3>
AbstractIoService</H3>
<PRE>
protected <B>AbstractIoService</B>(<A HREF="../../../../../org/apache/mina/core/session/IoSessionConfig.html" title="interface in org.apache.mina.core.session">IoSessionConfig</A>&nbsp;sessionConfig,
java.util.concurrent.Executor&nbsp;executor)</PRE>
<DL>
<DD>Constructor for <A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html" title="class in org.apache.mina.core.service"><CODE>AbstractIoService</CODE></A>. You need to provide a default
session configuration and an <CODE>Executor</CODE> for handling I/O events. If
a null <CODE>Executor</CODE> is provided, a default one will be created using
<CODE>Executors.newCachedThreadPool()</CODE>.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>sessionConfig</CODE> - the default configuration for the managed <A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session"><CODE>IoSession</CODE></A><DD><CODE>executor</CODE> - the <CODE>Executor</CODE> used for handling execution of I/O
events. Can be <code>null</code>.</DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="getFilterChainBuilder()"><!-- --></A><H3>
getFilterChainBuilder</H3>
<PRE>
public final <A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChainBuilder.html" title="interface in org.apache.mina.core.filterchain">IoFilterChainBuilder</A> <B>getFilterChainBuilder</B>()</PRE>
<DL>
<DD>Returns the <A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChainBuilder.html" title="interface in org.apache.mina.core.filterchain"><CODE>IoFilterChainBuilder</CODE></A> which will build the
<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChain.html" title="interface in org.apache.mina.core.filterchain"><CODE>IoFilterChain</CODE></A> of all <A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session"><CODE>IoSession</CODE></A>s which is created
by this service.
The default value is an empty <A HREF="../../../../../org/apache/mina/core/filterchain/DefaultIoFilterChainBuilder.html" title="class in org.apache.mina.core.filterchain"><CODE>DefaultIoFilterChainBuilder</CODE></A>.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#getFilterChainBuilder()">getFilterChainBuilder</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setFilterChainBuilder(org.apache.mina.core.filterchain.IoFilterChainBuilder)"><!-- --></A><H3>
setFilterChainBuilder</H3>
<PRE>
public final void <B>setFilterChainBuilder</B>(<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChainBuilder.html" title="interface in org.apache.mina.core.filterchain">IoFilterChainBuilder</A>&nbsp;builder)</PRE>
<DL>
<DD>Sets the <A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChainBuilder.html" title="interface in org.apache.mina.core.filterchain"><CODE>IoFilterChainBuilder</CODE></A> which will build the
<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChain.html" title="interface in org.apache.mina.core.filterchain"><CODE>IoFilterChain</CODE></A> of all <A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session"><CODE>IoSession</CODE></A>s which is created
by this service.
If you specify <tt>null</tt> this property will be set to
an empty <A HREF="../../../../../org/apache/mina/core/filterchain/DefaultIoFilterChainBuilder.html" title="class in org.apache.mina.core.filterchain"><CODE>DefaultIoFilterChainBuilder</CODE></A>.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#setFilterChainBuilder(org.apache.mina.core.filterchain.IoFilterChainBuilder)">setFilterChainBuilder</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getFilterChain()"><!-- --></A><H3>
getFilterChain</H3>
<PRE>
public final <A HREF="../../../../../org/apache/mina/core/filterchain/DefaultIoFilterChainBuilder.html" title="class in org.apache.mina.core.filterchain">DefaultIoFilterChainBuilder</A> <B>getFilterChain</B>()</PRE>
<DL>
<DD>A shortcut for <tt>( ( DefaultIoFilterChainBuilder ) </tt><A HREF="../../../../../org/apache/mina/core/service/IoService.html#getFilterChainBuilder()"><CODE>IoService.getFilterChainBuilder()</CODE></A><tt> )</tt>.
Please note that the returned object is not a <b>real</b> <A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChain.html" title="interface in org.apache.mina.core.filterchain"><CODE>IoFilterChain</CODE></A>
but a <A HREF="../../../../../org/apache/mina/core/filterchain/DefaultIoFilterChainBuilder.html" title="class in org.apache.mina.core.filterchain"><CODE>DefaultIoFilterChainBuilder</CODE></A>. Modifying the returned builder
won't affect the existing <A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session"><CODE>IoSession</CODE></A>s at all, because
<A HREF="../../../../../org/apache/mina/core/filterchain/IoFilterChainBuilder.html" title="interface in org.apache.mina.core.filterchain"><CODE>IoFilterChainBuilder</CODE></A>s affect only newly created <A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session"><CODE>IoSession</CODE></A>s.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#getFilterChain()">getFilterChain</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="addListener(org.apache.mina.core.service.IoServiceListener)"><!-- --></A><H3>
addListener</H3>
<PRE>
public final void <B>addListener</B>(<A HREF="../../../../../org/apache/mina/core/service/IoServiceListener.html" title="interface in org.apache.mina.core.service">IoServiceListener</A>&nbsp;listener)</PRE>
<DL>
<DD>Adds an <A HREF="../../../../../org/apache/mina/core/service/IoServiceListener.html" title="interface in org.apache.mina.core.service"><CODE>IoServiceListener</CODE></A> that listens any events related with
this service.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#addListener(org.apache.mina.core.service.IoServiceListener)">addListener</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="removeListener(org.apache.mina.core.service.IoServiceListener)"><!-- --></A><H3>
removeListener</H3>
<PRE>
public final void <B>removeListener</B>(<A HREF="../../../../../org/apache/mina/core/service/IoServiceListener.html" title="interface in org.apache.mina.core.service">IoServiceListener</A>&nbsp;listener)</PRE>
<DL>
<DD>Removed an existing <A HREF="../../../../../org/apache/mina/core/service/IoServiceListener.html" title="interface in org.apache.mina.core.service"><CODE>IoServiceListener</CODE></A> that listens any events
related with this service.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#removeListener(org.apache.mina.core.service.IoServiceListener)">removeListener</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isActive()"><!-- --></A><H3>
isActive</H3>
<PRE>
public final boolean <B>isActive</B>()</PRE>
<DL>
<DD>Returns a value of whether or not this service is active
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#isActive()">isActive</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>whether of not the service is active.</DL>
</DD>
</DL>
<HR>
<A NAME="isDisposing()"><!-- --></A><H3>
isDisposing</H3>
<PRE>
public final boolean <B>isDisposing</B>()</PRE>
<DL>
<DD>Returns <tt>true</tt> if and if only <A HREF="../../../../../org/apache/mina/core/service/IoService.html#dispose()"><CODE>IoService.dispose()</CODE></A> method has
been called. Please note that this method will return <tt>true</tt>
even after all the related resources are released.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#isDisposing()">isDisposing</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isDisposed()"><!-- --></A><H3>
isDisposed</H3>
<PRE>
public final boolean <B>isDisposed</B>()</PRE>
<DL>
<DD>Returns <tt>true</tt> if and if only all resources of this processor
have been disposed.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#isDisposed()">isDisposed</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="dispose()"><!-- --></A><H3>
dispose</H3>
<PRE>
public final void <B>dispose</B>()</PRE>
<DL>
<DD>Releases any resources allocated by this service. Please note that
this method might block as long as there are any sessions managed by
this service.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#dispose()">dispose</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="dispose(boolean)"><!-- --></A><H3>
dispose</H3>
<PRE>
public final void <B>dispose</B>(boolean&nbsp;awaitTermination)</PRE>
<DL>
<DD>Releases any resources allocated by this service. Please note that
this method might block as long as there are any sessions managed by this service.
Warning : calling this method from a IoFutureListener with <code>awaitTermination</code> = true
will probably lead to a deadlock.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#dispose(boolean)">dispose</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>awaitTermination</CODE> - When true this method will block until the underlying ExecutorService is terminated</DL>
</DD>
</DL>
<HR>
<A NAME="dispose0()"><!-- --></A><H3>
dispose0</H3>
<PRE>
protected abstract void <B>dispose0</B>()
throws java.lang.Exception</PRE>
<DL>
<DD>Implement this method to release any acquired resources. This method
is invoked only once by <A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#dispose()"><CODE>dispose()</CODE></A>.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE>java.lang.Exception</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="getManagedSessions()"><!-- --></A><H3>
getManagedSessions</H3>
<PRE>
public final java.util.Map&lt;java.lang.Long,<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&gt; <B>getManagedSessions</B>()</PRE>
<DL>
<DD>Returns the map of all sessions which are currently managed by this
service. The key of map is the <A HREF="../../../../../org/apache/mina/core/session/IoSession.html#getId()"><CODE>ID</CODE></A> of the
session.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#getManagedSessions()">getManagedSessions</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>the sessions. An empty collection if there's no session.</DL>
</DD>
</DL>
<HR>
<A NAME="getManagedSessionCount()"><!-- --></A><H3>
getManagedSessionCount</H3>
<PRE>
public final int <B>getManagedSessionCount</B>()</PRE>
<DL>
<DD>Returns the number of all sessions which are currently managed by this
service.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#getManagedSessionCount()">getManagedSessionCount</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getHandler()"><!-- --></A><H3>
getHandler</H3>
<PRE>
public final <A HREF="../../../../../org/apache/mina/core/service/IoHandler.html" title="interface in org.apache.mina.core.service">IoHandler</A> <B>getHandler</B>()</PRE>
<DL>
<DD>Returns the handler which will handle all connections managed by this service.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#getHandler()">getHandler</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setHandler(org.apache.mina.core.service.IoHandler)"><!-- --></A><H3>
setHandler</H3>
<PRE>
public final void <B>setHandler</B>(<A HREF="../../../../../org/apache/mina/core/service/IoHandler.html" title="interface in org.apache.mina.core.service">IoHandler</A>&nbsp;handler)</PRE>
<DL>
<DD>Sets the handler which will handle all connections managed by this service.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#setHandler(org.apache.mina.core.service.IoHandler)">setHandler</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getSessionConfig()"><!-- --></A><H3>
getSessionConfig</H3>
<PRE>
public <A HREF="../../../../../org/apache/mina/core/session/IoSessionConfig.html" title="interface in org.apache.mina.core.session">IoSessionConfig</A> <B>getSessionConfig</B>()</PRE>
<DL>
<DD>Returns the default configuration of the new <A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session"><CODE>IoSession</CODE></A>s
created by this service.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#getSessionConfig()">getSessionConfig</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getSessionDataStructureFactory()"><!-- --></A><H3>
getSessionDataStructureFactory</H3>
<PRE>
public final <A HREF="../../../../../org/apache/mina/core/session/IoSessionDataStructureFactory.html" title="interface in org.apache.mina.core.session">IoSessionDataStructureFactory</A> <B>getSessionDataStructureFactory</B>()</PRE>
<DL>
<DD>Returns the <A HREF="../../../../../org/apache/mina/core/session/IoSessionDataStructureFactory.html" title="interface in org.apache.mina.core.session"><CODE>IoSessionDataStructureFactory</CODE></A> that provides
related data structures for a new session created by this service.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#getSessionDataStructureFactory()">getSessionDataStructureFactory</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setSessionDataStructureFactory(org.apache.mina.core.session.IoSessionDataStructureFactory)"><!-- --></A><H3>
setSessionDataStructureFactory</H3>
<PRE>
public final void <B>setSessionDataStructureFactory</B>(<A HREF="../../../../../org/apache/mina/core/session/IoSessionDataStructureFactory.html" title="interface in org.apache.mina.core.session">IoSessionDataStructureFactory</A>&nbsp;sessionDataStructureFactory)</PRE>
<DL>
<DD>Sets the <A HREF="../../../../../org/apache/mina/core/session/IoSessionDataStructureFactory.html" title="interface in org.apache.mina.core.session"><CODE>IoSessionDataStructureFactory</CODE></A> that provides
related data structures for a new session created by this service.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#setSessionDataStructureFactory(org.apache.mina.core.session.IoSessionDataStructureFactory)">setSessionDataStructureFactory</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getStatistics()"><!-- --></A><H3>
getStatistics</H3>
<PRE>
public <A HREF="../../../../../org/apache/mina/core/service/IoServiceStatistics.html" title="class in org.apache.mina.core.service">IoServiceStatistics</A> <B>getStatistics</B>()</PRE>
<DL>
<DD>Returns the IoServiceStatistics object for this service.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#getStatistics()">getStatistics</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>The statistics object for this service.</DL>
</DD>
</DL>
<HR>
<A NAME="getActivationTime()"><!-- --></A><H3>
getActivationTime</H3>
<PRE>
public final long <B>getActivationTime</B>()</PRE>
<DL>
<DD>Returns the time when this service was activated. It returns the last
time when this service was activated if the service is not active now.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#getActivationTime()">getActivationTime</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>The time by using <CODE>System.currentTimeMillis()</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="broadcast(java.lang.Object)"><!-- --></A><H3>
broadcast</H3>
<PRE>
public final java.util.Set&lt;<A HREF="../../../../../org/apache/mina/core/future/WriteFuture.html" title="interface in org.apache.mina.core.future">WriteFuture</A>&gt; <B>broadcast</B>(java.lang.Object&nbsp;message)</PRE>
<DL>
<DD>Writes the specified <code>message</code> to all the <A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session"><CODE>IoSession</CODE></A>s
managed by this service. This method is a convenience shortcut for
<A HREF="../../../../../org/apache/mina/core/IoUtil.html#broadcast(java.lang.Object, java.util.Collection)"><CODE>IoUtil.broadcast(Object, Collection)</CODE></A>.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#broadcast(java.lang.Object)">broadcast</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getListeners()"><!-- --></A><H3>
getListeners</H3>
<PRE>
public final <A HREF="../../../../../org/apache/mina/core/service/IoServiceListenerSupport.html" title="class in org.apache.mina.core.service">IoServiceListenerSupport</A> <B>getListeners</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="executeWorker(java.lang.Runnable)"><!-- --></A><H3>
executeWorker</H3>
<PRE>
protected final void <B>executeWorker</B>(java.lang.Runnable&nbsp;worker)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="executeWorker(java.lang.Runnable, java.lang.String)"><!-- --></A><H3>
executeWorker</H3>
<PRE>
protected final void <B>executeWorker</B>(java.lang.Runnable&nbsp;worker,
java.lang.String&nbsp;suffix)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="initSession(org.apache.mina.core.session.IoSession, org.apache.mina.core.future.IoFuture, org.apache.mina.core.session.IoSessionInitializer)"><!-- --></A><H3>
initSession</H3>
<PRE>
protected final void <B>initSession</B>(<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="../../../../../org/apache/mina/core/future/IoFuture.html" title="interface in org.apache.mina.core.future">IoFuture</A>&nbsp;future,
<A HREF="../../../../../org/apache/mina/core/session/IoSessionInitializer.html" title="interface in org.apache.mina.core.session">IoSessionInitializer</A>&nbsp;sessionInitializer)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="finishSessionInitialization0(org.apache.mina.core.session.IoSession, org.apache.mina.core.future.IoFuture)"><!-- --></A><H3>
finishSessionInitialization0</H3>
<PRE>
protected void <B>finishSessionInitialization0</B>(<A HREF="../../../../../org/apache/mina/core/session/IoSession.html" title="interface in org.apache.mina.core.session">IoSession</A>&nbsp;session,
<A HREF="../../../../../org/apache/mina/core/future/IoFuture.html" title="interface in org.apache.mina.core.future">IoFuture</A>&nbsp;future)</PRE>
<DL>
<DD>Implement this method to perform additional tasks required for session
initialization. Do not call this method directly;
<A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.html#initSession(org.apache.mina.core.session.IoSession, org.apache.mina.core.future.IoFuture, org.apache.mina.core.session.IoSessionInitializer)"><CODE>initSession(IoSession, IoFuture, IoSessionInitializer)</CODE></A> will call
this method instead.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getScheduledWriteBytes()"><!-- --></A><H3>
getScheduledWriteBytes</H3>
<PRE>
public int <B>getScheduledWriteBytes</B>()</PRE>
<DL>
<DD>Returns the number of bytes scheduled to be written
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#getScheduledWriteBytes()">getScheduledWriteBytes</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>The number of bytes scheduled to be written</DL>
</DD>
</DL>
<HR>
<A NAME="getScheduledWriteMessages()"><!-- --></A><H3>
getScheduledWriteMessages</H3>
<PRE>
public int <B>getScheduledWriteMessages</B>()</PRE>
<DL>
<DD>Returns the number of messages scheduled to be written
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html#getScheduledWriteMessages()">getScheduledWriteMessages</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/mina/core/service/IoService.html" title="interface in org.apache.mina.core.service">IoService</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>The number of messages scheduled to be written</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AbstractIoService.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/mina/core/service/AbstractIoConnector.html" title="class in org.apache.mina.core.service"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/mina/core/service/AbstractIoService.ServiceOperationFuture.html" title="class in org.apache.mina.core.service"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?org/apache/mina/core/service/AbstractIoService.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="AbstractIoService.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
Copyright &#169; 2004-2011 <a href="http://mina.apache.org/">Apache MINA Project</a>. All Rights Reserved.
</BODY>
</HTML>