<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" /><title>AbstractIoFilterChain xref</title>
<link type="text/css" rel="stylesheet" href="../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../apidocs/org/apache/mina/io/AbstractIoFilterChain.html">View Javadoc</a></div><pre>

<a name="1" href="#1">1</a>   <em class="comment">/*</em>
<a name="2" href="#2">2</a>   <em class="comment"> *   @(#) $Id: AbstractIoFilterChain.java 264677 2005-08-30 02:44:35Z trustin $</em>
<a name="3" href="#3">3</a>   <em class="comment"> *</em>
<a name="4" href="#4">4</a>   <em class="comment"> *   Copyright 2004 The Apache Software Foundation</em>
<a name="5" href="#5">5</a>   <em class="comment"> *</em>
<a name="6" href="#6">6</a>   <em class="comment"> *   Licensed under the Apache License, Version 2.0 (the "License");</em>
<a name="7" href="#7">7</a>   <em class="comment"> *   you may not use this file except in compliance with the License.</em>
<a name="8" href="#8">8</a>   <em class="comment"> *   You may obtain a copy of the License at</em>
<a name="9" href="#9">9</a>   <em class="comment"> *</em>
<a name="10" href="#10">10</a>  <em class="comment"> *       <a href="http://www.apache.org/licenses/LICENSE-2.0" target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.0</a></em>
<a name="11" href="#11">11</a>  <em class="comment"> *</em>
<a name="12" href="#12">12</a>  <em class="comment"> *   Unless required by applicable law or agreed to in writing, software</em>
<a name="13" href="#13">13</a>  <em class="comment"> *   distributed under the License is distributed on an "AS IS" BASIS,</em>
<a name="14" href="#14">14</a>  <em class="comment"> *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</em>
<a name="15" href="#15">15</a>  <em class="comment"> *   See the License for the specific language governing permissions and</em>
<a name="16" href="#16">16</a>  <em class="comment"> *   limitations under the License.</em>
<a name="17" href="#17">17</a>  <em class="comment"> *</em>
<a name="18" href="#18">18</a>  <em class="comment"> */</em>
<a name="19" href="#19">19</a>  <strong>package</strong> <a href="../../../../org/apache/mina/io/package-summary.html">org.apache.mina.io</a>;
<a name="20" href="#20">20</a>  
<a name="21" href="#21">21</a>  <strong>import</strong> java.util.ArrayList;
<a name="22" href="#22">22</a>  <strong>import</strong> java.util.HashMap;
<a name="23" href="#23">23</a>  <strong>import</strong> java.util.IdentityHashMap;
<a name="24" href="#24">24</a>  <strong>import</strong> java.util.Iterator;
<a name="25" href="#25">25</a>  <strong>import</strong> java.util.List;
<a name="26" href="#26">26</a>  <strong>import</strong> java.util.Map;
<a name="27" href="#27">27</a>  
<a name="28" href="#28">28</a>  <strong>import</strong> org.apache.mina.common.ByteBuffer;
<a name="29" href="#29">29</a>  <strong>import</strong> org.apache.mina.common.IdleStatus;
<a name="30" href="#30">30</a>  <strong>import</strong> org.apache.mina.io.IoFilter.NextFilter;
<a name="31" href="#31">31</a>  
<a name="32" href="#32">32</a>  <em>/**<em>*</em></em>
<a name="33" href="#33">33</a>  <em> * An abstract implementation of {@link IoFilterChain} that provides</em>
<a name="34" href="#34">34</a>  <em> * common operations for developers to support specific transport types.</em>
<a name="35" href="#35">35</a>  <em> * &lt;p></em>
<a name="36" href="#36">36</a>  <em> * All methods has been implemented.  The list of filters is maintained</em>
<a name="37" href="#37">37</a>  <em> * as a doublely linked list.  You can fire any MINA events which is filtered</em>
<a name="38" href="#38">38</a>  <em> * by this chain using these public methods:</em>
<a name="39" href="#39">39</a>  <em> * &lt;ul></em>
<a name="40" href="#40">40</a>  <em> *   &lt;li>&lt;/li></em>
<a name="41" href="#41">41</a>  <em> * &lt;/ul></em>
<a name="42" href="#42">42</a>  <em> * </em>
<a name="43" href="#43">43</a>  <em> * The only method a developer should implement is {@link #doWrite(IoSession, ByteBuffer, Object)}.</em>
<a name="44" href="#44">44</a>  <em> * This method is invoked when filter chain is evaluated for</em>
<a name="45" href="#45">45</a>  <em> * {@link IoFilter#filterWrite(NextFilter, IoSession, ByteBuffer, Object)} and </em>
<a name="46" href="#46">46</a>  <em> * finally to be written to the underlying transport layer (e.g. socket)</em>
<a name="47" href="#47">47</a>  <em> * </em>
<a name="48" href="#48">48</a>  <em> * @author The Apache Directory Project</em>
<a name="49" href="#49">49</a>  <em> * @version $Rev: 264677 $, $Date: 2005-08-30 11:44:35 +0900 $</em>
<a name="50" href="#50">50</a>  <em> */</em>
<a name="51" href="#51">51</a>  <strong>public</strong> <strong>abstract</strong> <strong>class</strong> <a href="../../../../org/apache/mina/io/AbstractIoFilterChain.html">AbstractIoFilterChain</a> implements <a href="../../../../org/apache/mina/io/IoFilterChain.html">IoFilterChain</a>
<a name="52" href="#52">52</a>  {
<a name="53" href="#53">53</a>      <strong>private</strong> <strong>final</strong> Map name2entry = <strong>new</strong> HashMap();
<a name="54" href="#54">54</a>  
<a name="55" href="#55">55</a>      <strong>private</strong> <strong>final</strong> Map filter2entry = <strong>new</strong> IdentityHashMap();
<a name="56" href="#56">56</a>  
<a name="57" href="#57">57</a>      <strong>private</strong> <strong>final</strong> Entry head;
<a name="58" href="#58">58</a>      
<a name="59" href="#59">59</a>      <strong>private</strong> <strong>final</strong> Entry tail;
<a name="60" href="#60">60</a>  
<a name="61" href="#61">61</a>      <strong>protected</strong> <a href="../../../../org/apache/mina/io/AbstractIoFilterChain.html">AbstractIoFilterChain</a>()
<a name="62" href="#62">62</a>      {
<a name="63" href="#63">63</a>          head = <strong>new</strong> Entry( <strong>null</strong>, <strong>null</strong>, <span class="string">"head"</span>, createHeadFilter() );
<a name="64" href="#64">64</a>          tail = <strong>new</strong> Entry( head, <strong>null</strong>, <span class="string">"tail"</span>, createTailFilter() );
<a name="65" href="#65">65</a>          head.nextEntry = tail;
<a name="66" href="#66">66</a>      }
<a name="67" href="#67">67</a>      
<a name="68" href="#68">68</a>      <em>/**<em>*</em></em>
<a name="69" href="#69">69</a>  <em>     * Override this method to create custom head of this filter chain.</em>
<a name="70" href="#70">70</a>  <em>     */</em>
<a name="71" href="#71">71</a>      <strong>protected</strong> <a href="../../../../org/apache/mina/io/IoFilter.html">IoFilter</a> createHeadFilter()
<a name="72" href="#72">72</a>      {
<a name="73" href="#73">73</a>          <strong>return</strong> <strong>new</strong> <a href="../../../../org/apache/mina/io/IoFilter.html">IoFilter</a>()
<a name="74" href="#74">74</a>          {
<a name="75" href="#75">75</a>              <strong>public</strong> <strong>void</strong> sessionOpened( NextFilter nextFilter, IoSession session ) throws Exception
<a name="76" href="#76">76</a>              {
<a name="77" href="#77">77</a>                  nextFilter.sessionOpened( session );
<a name="78" href="#78">78</a>              }
<a name="79" href="#79">79</a>  
<a name="80" href="#80">80</a>              <strong>public</strong> <strong>void</strong> sessionClosed( NextFilter nextFilter, IoSession session ) throws Exception
<a name="81" href="#81">81</a>              {
<a name="82" href="#82">82</a>                  nextFilter.sessionClosed( session );
<a name="83" href="#83">83</a>              }
<a name="84" href="#84">84</a>  
<a name="85" href="#85">85</a>              <strong>public</strong> <strong>void</strong> sessionIdle( NextFilter nextFilter, IoSession session,
<a name="86" href="#86">86</a>                                      <a href="../../../../org/apache/mina/common/IdleStatus.html">IdleStatus</a> status ) throws Exception
<a name="87" href="#87">87</a>              {
<a name="88" href="#88">88</a>                  nextFilter.sessionIdle( session, status );
<a name="89" href="#89">89</a>              }
<a name="90" href="#90">90</a>  
<a name="91" href="#91">91</a>              <strong>public</strong> <strong>void</strong> exceptionCaught( NextFilter nextFilter,
<a name="92" href="#92">92</a>                                          <a href="../../../../org/apache/mina/io/IoSession.html">IoSession</a> session, Throwable cause ) throws Exception
<a name="93" href="#93">93</a>              {
<a name="94" href="#94">94</a>                  nextFilter.exceptionCaught( session, cause );
<a name="95" href="#95">95</a>              }
<a name="96" href="#96">96</a>  
<a name="97" href="#97">97</a>              <strong>public</strong> <strong>void</strong> dataRead( NextFilter nextFilter, IoSession session,
<a name="98" href="#98">98</a>                                   <a href="../../../../org/apache/mina/common/ByteBuffer.html">ByteBuffer</a> buf ) throws Exception
<a name="99" href="#99">99</a>              {
<a name="100" href="#100">100</a>                 nextFilter.dataRead( session, buf );
<a name="101" href="#101">101</a>             }
<a name="102" href="#102">102</a> 
<a name="103" href="#103">103</a>             <strong>public</strong> <strong>void</strong> dataWritten( NextFilter nextFilter, IoSession session,
<a name="104" href="#104">104</a>                                     Object marker ) throws Exception
<a name="105" href="#105">105</a>             {
<a name="106" href="#106">106</a>                 nextFilter.dataWritten( session, marker );
<a name="107" href="#107">107</a>             }
<a name="108" href="#108">108</a>             
<a name="109" href="#109">109</a>             <strong>public</strong> <strong>void</strong> filterWrite( NextFilter nextFilter, IoSession session,
<a name="110" href="#110">110</a>                                      <a href="../../../../org/apache/mina/common/ByteBuffer.html">ByteBuffer</a> buf, Object marker ) throws Exception
<a name="111" href="#111">111</a>             {
<a name="112" href="#112">112</a>                 doWrite( session, buf, marker );
<a name="113" href="#113">113</a>             }
<a name="114" href="#114">114</a>         };
<a name="115" href="#115">115</a>     }
<a name="116" href="#116">116</a>     
<a name="117" href="#117">117</a>     <em>/**<em>*</em></em>
<a name="118" href="#118">118</a> <em>     * Override this method to create custom tail of this filter chain.</em>
<a name="119" href="#119">119</a> <em>     */</em>
<a name="120" href="#120">120</a>     <strong>protected</strong> <a href="../../../../org/apache/mina/io/IoFilter.html">IoFilter</a> createTailFilter()
<a name="121" href="#121">121</a>     {
<a name="122" href="#122">122</a>         <strong>return</strong> <strong>new</strong> <a href="../../../../org/apache/mina/io/IoFilter.html">IoFilter</a>()
<a name="123" href="#123">123</a>         {
<a name="124" href="#124">124</a>             <strong>public</strong> <strong>void</strong> sessionOpened( NextFilter nextFilter, IoSession session ) throws Exception
<a name="125" href="#125">125</a>             {
<a name="126" href="#126">126</a>                 session.getHandler().sessionOpened( session );
<a name="127" href="#127">127</a>             }
<a name="128" href="#128">128</a> 
<a name="129" href="#129">129</a>             <strong>public</strong> <strong>void</strong> sessionClosed( NextFilter nextFilter, IoSession session ) throws Exception
<a name="130" href="#130">130</a>             {
<a name="131" href="#131">131</a>                 session.getHandler().sessionClosed( session );
<a name="132" href="#132">132</a>             }
<a name="133" href="#133">133</a> 
<a name="134" href="#134">134</a>             <strong>public</strong> <strong>void</strong> sessionIdle( NextFilter nextFilter, IoSession session,
<a name="135" href="#135">135</a>                                     <a href="../../../../org/apache/mina/common/IdleStatus.html">IdleStatus</a> status ) throws Exception
<a name="136" href="#136">136</a>             {
<a name="137" href="#137">137</a>                 session.getHandler().sessionIdle( session, status );
<a name="138" href="#138">138</a>             }
<a name="139" href="#139">139</a> 
<a name="140" href="#140">140</a>             <strong>public</strong> <strong>void</strong> exceptionCaught( NextFilter nextFilter,
<a name="141" href="#141">141</a>                                         <a href="../../../../org/apache/mina/io/IoSession.html">IoSession</a> session, Throwable cause ) throws Exception
<a name="142" href="#142">142</a>             {
<a name="143" href="#143">143</a>                 session.getHandler().exceptionCaught( session, cause );
<a name="144" href="#144">144</a>             }
<a name="145" href="#145">145</a> 
<a name="146" href="#146">146</a>             <strong>public</strong> <strong>void</strong> dataRead( NextFilter nextFilter, IoSession session,
<a name="147" href="#147">147</a>                                  <a href="../../../../org/apache/mina/common/ByteBuffer.html">ByteBuffer</a> buf ) throws Exception
<a name="148" href="#148">148</a>             {
<a name="149" href="#149">149</a>                 <a href="../../../../org/apache/mina/io/IoHandler.html">IoHandler</a> handler = session.getHandler();
<a name="150" href="#150">150</a>                 handler.dataRead( session, buf );
<a name="151" href="#151">151</a>                 buf.release();
<a name="152" href="#152">152</a>             }
<a name="153" href="#153">153</a> 
<a name="154" href="#154">154</a>             <strong>public</strong> <strong>void</strong> dataWritten( NextFilter nextFilter, IoSession session,
<a name="155" href="#155">155</a>                                     Object marker ) throws Exception
<a name="156" href="#156">156</a>             {
<a name="157" href="#157">157</a>                 session.getHandler().dataWritten( session, marker );
<a name="158" href="#158">158</a>             }
<a name="159" href="#159">159</a> 
<a name="160" href="#160">160</a>             <strong>public</strong> <strong>void</strong> filterWrite( NextFilter nextFilter,
<a name="161" href="#161">161</a>                                      <a href="../../../../org/apache/mina/io/IoSession.html">IoSession</a> session, <a href="../../../../org/apache/mina/common/ByteBuffer.html">ByteBuffer</a> buf, Object marker ) throws Exception
<a name="162" href="#162">162</a>             {
<a name="163" href="#163">163</a>                 nextFilter.filterWrite( session, buf, marker );
<a name="164" href="#164">164</a>             }
<a name="165" href="#165">165</a>         };
<a name="166" href="#166">166</a>     }
<a name="167" href="#167">167</a>     
<a name="168" href="#168">168</a>     <strong>public</strong> <a href="../../../../org/apache/mina/io/IoFilter.html">IoFilter</a> getChild( String name )
<a name="169" href="#169">169</a>     {
<a name="170" href="#170">170</a>         Entry e = ( Entry ) name2entry.get( name );
<a name="171" href="#171">171</a>         <strong>if</strong> ( e == <strong>null</strong> )
<a name="172" href="#172">172</a>         {
<a name="173" href="#173">173</a>             <strong>return</strong> <strong>null</strong>;
<a name="174" href="#174">174</a>         }
<a name="175" href="#175">175</a>         <strong>return</strong> e.filter;
<a name="176" href="#176">176</a>     }
<a name="177" href="#177">177</a>     
<a name="178" href="#178">178</a>     <em>/**<em>*</em></em>
<a name="179" href="#179">179</a> <em>     * Adds the specified interceptor with the specified name at the beginning of this chain.</em>
<a name="180" href="#180">180</a> <em>     */</em>
<a name="181" href="#181">181</a>     <strong>public</strong> <strong>synchronized</strong> <strong>void</strong> addFirst( String name,
<a name="182" href="#182">182</a>                                        <a href="../../../../org/apache/mina/io/IoFilter.html">IoFilter</a> filter )
<a name="183" href="#183">183</a>     {
<a name="184" href="#184">184</a>         checkAddable( name );
<a name="185" href="#185">185</a>         register( head, name, filter );
<a name="186" href="#186">186</a>     }
<a name="187" href="#187">187</a> 
<a name="188" href="#188">188</a> 
<a name="189" href="#189">189</a>     <em>/**<em>*</em></em>
<a name="190" href="#190">190</a> <em>     * Adds the specified interceptor with the specified name at the end of this chain.</em>
<a name="191" href="#191">191</a> <em>     */</em>
<a name="192" href="#192">192</a>     <strong>public</strong> <strong>synchronized</strong> <strong>void</strong> addLast( String name,
<a name="193" href="#193">193</a>                                       <a href="../../../../org/apache/mina/io/IoFilter.html">IoFilter</a> filter )
<a name="194" href="#194">194</a>     {
<a name="195" href="#195">195</a>         checkAddable( name );
<a name="196" href="#196">196</a>         register( tail.prevEntry, name, filter );
<a name="197" href="#197">197</a>     }
<a name="198" href="#198">198</a> 
<a name="199" href="#199">199</a> 
<a name="200" href="#200">200</a>     <em>/**<em>*</em></em>
<a name="201" href="#201">201</a> <em>     * Adds the specified interceptor with the specified name just before the interceptor whose name is</em>
<a name="202" href="#202">202</a> <em>     * &lt;code>baseName&lt;/code> in this chain.</em>
<a name="203" href="#203">203</a> <em>     */</em>
<a name="204" href="#204">204</a>     <strong>public</strong> <strong>synchronized</strong> <strong>void</strong> addBefore( String baseName,
<a name="205" href="#205">205</a>                                         String name,
<a name="206" href="#206">206</a>                                         <a href="../../../../org/apache/mina/io/IoFilter.html">IoFilter</a> filter )
<a name="207" href="#207">207</a>     {
<a name="208" href="#208">208</a>         Entry baseEntry = checkOldName( baseName );
<a name="209" href="#209">209</a>         checkAddable( name );
<a name="210" href="#210">210</a>         register( baseEntry, name, filter );
<a name="211" href="#211">211</a>     }
<a name="212" href="#212">212</a> 
<a name="213" href="#213">213</a> 
<a name="214" href="#214">214</a>     <em>/**<em>*</em></em>
<a name="215" href="#215">215</a> <em>     * Adds the specified interceptor with the specified name just after the interceptor whose name is</em>
<a name="216" href="#216">216</a> <em>     * &lt;code>baseName&lt;/code> in this chain.</em>
<a name="217" href="#217">217</a> <em>     */</em>
<a name="218" href="#218">218</a>     <strong>public</strong> <strong>synchronized</strong> <strong>void</strong> addAfter( String baseName,
<a name="219" href="#219">219</a>                                        String name,
<a name="220" href="#220">220</a>                                        <a href="../../../../org/apache/mina/io/IoFilter.html">IoFilter</a> filter )
<a name="221" href="#221">221</a>     {
<a name="222" href="#222">222</a>         Entry baseEntry = checkOldName( baseName );
<a name="223" href="#223">223</a>         checkAddable( name );
<a name="224" href="#224">224</a>         register( baseEntry.prevEntry, name, filter );
<a name="225" href="#225">225</a>     }
<a name="226" href="#226">226</a> 
<a name="227" href="#227">227</a> 
<a name="228" href="#228">228</a>     <em>/**<em>*</em></em>
<a name="229" href="#229">229</a> <em>     * Removes the interceptor with the specified name from this chain.</em>
<a name="230" href="#230">230</a> <em>     */</em>
<a name="231" href="#231">231</a>     <strong>public</strong> <strong>synchronized</strong> <a href="../../../../org/apache/mina/io/IoFilter.html">IoFilter</a> remove( String name )
<a name="232" href="#232">232</a>     {
<a name="233" href="#233">233</a>         Entry entry = checkOldName( name );
<a name="234" href="#234">234</a>         Entry prevEntry = entry.prevEntry;
<a name="235" href="#235">235</a>         Entry nextEntry = entry.nextEntry;
<a name="236" href="#236">236</a>         prevEntry.nextEntry = nextEntry;
<a name="237" href="#237">237</a>         nextEntry.prevEntry = prevEntry;
<a name="238" href="#238">238</a> 
<a name="239" href="#239">239</a>         name2entry.remove( name );
<a name="240" href="#240">240</a>         <a href="../../../../org/apache/mina/io/IoFilter.html">IoFilter</a> filter = entry.filter;
<a name="241" href="#241">241</a>         filter2entry.remove( filter );
<a name="242" href="#242">242</a>         
<a name="243" href="#243">243</a>         <strong>return</strong> filter;
<a name="244" href="#244">244</a>     }
<a name="245" href="#245">245</a> 
<a name="246" href="#246">246</a> 
<a name="247" href="#247">247</a>     <em>/**<em>*</em></em>
<a name="248" href="#248">248</a> <em>     * Removes all interceptors added to this chain.</em>
<a name="249" href="#249">249</a> <em>     */</em>
<a name="250" href="#250">250</a>     <strong>public</strong> <strong>synchronized</strong> <strong>void</strong> clear()
<a name="251" href="#251">251</a>     {
<a name="252" href="#252">252</a>         Iterator it = <strong>new</strong> ArrayList( name2entry.keySet() ).iterator();
<a name="253" href="#253">253</a>         <strong>while</strong> ( it.hasNext() )
<a name="254" href="#254">254</a>         {
<a name="255" href="#255">255</a>             <strong>this</strong>.remove( ( String ) it.next() );
<a name="256" href="#256">256</a>         }
<a name="257" href="#257">257</a>     }
<a name="258" href="#258">258</a> 
<a name="259" href="#259">259</a>     <strong>private</strong> <strong>void</strong> register( Entry prevEntry, String name, IoFilter filter )
<a name="260" href="#260">260</a>     {
<a name="261" href="#261">261</a>         Entry <strong>new</strong>Entry = <strong>new</strong> Entry( prevEntry, prevEntry.nextEntry, name, filter );
<a name="262" href="#262">262</a>         prevEntry.nextEntry.prevEntry = newEntry;
<a name="263" href="#263">263</a>         prevEntry.nextEntry = newEntry;
<a name="264" href="#264">264</a>         name2entry.put( name, newEntry );
<a name="265" href="#265">265</a>         filter2entry.put( filter, newEntry );
<a name="266" href="#266">266</a>     }
<a name="267" href="#267">267</a> 
<a name="268" href="#268">268</a>     <em>/**<em>*</em></em>
<a name="269" href="#269">269</a> <em>     * Throws an exception when the specified interceptor name is not registered in this chain.</em>
<a name="270" href="#270">270</a> <em>     *</em>
<a name="271" href="#271">271</a> <em>     * @return An interceptor entry with the specified name.</em>
<a name="272" href="#272">272</a> <em>     */</em>
<a name="273" href="#273">273</a>     <strong>private</strong> Entry checkOldName( String baseName )
<a name="274" href="#274">274</a>     {
<a name="275" href="#275">275</a>         Entry e = ( Entry ) name2entry.get( baseName );
<a name="276" href="#276">276</a>         <strong>if</strong> ( e == <strong>null</strong> )
<a name="277" href="#277">277</a>         {
<a name="278" href="#278">278</a>             <strong>throw</strong> <strong>new</strong> IllegalArgumentException( <span class="string">"Unknown interceptor name:"</span> +
<a name="279" href="#279">279</a>                     baseName );
<a name="280" href="#280">280</a>         }
<a name="281" href="#281">281</a>         <strong>return</strong> e;
<a name="282" href="#282">282</a>     }
<a name="283" href="#283">283</a> 
<a name="284" href="#284">284</a> 
<a name="285" href="#285">285</a>     <em>/**<em>*</em></em>
<a name="286" href="#286">286</a> <em>     * Checks the specified interceptor name is already taken and throws an exception if already taken.</em>
<a name="287" href="#287">287</a> <em>     */</em>
<a name="288" href="#288">288</a>     <strong>private</strong> <strong>void</strong> checkAddable( String name )
<a name="289" href="#289">289</a>     {
<a name="290" href="#290">290</a>         <strong>if</strong> ( name2entry.containsKey( name ) )
<a name="291" href="#291">291</a>         {
<a name="292" href="#292">292</a>             <strong>throw</strong> <strong>new</strong> IllegalArgumentException( <span class="string">"Other interceptor is using name '"</span> + name + <span class="string">"'"</span> );
<a name="293" href="#293">293</a>         }
<a name="294" href="#294">294</a>     }
<a name="295" href="#295">295</a> 
<a name="296" href="#296">296</a>     <strong>public</strong> <strong>void</strong> sessionOpened( IoSession session )
<a name="297" href="#297">297</a>     {
<a name="298" href="#298">298</a>         Entry head = <strong>this</strong>.head;
<a name="299" href="#299">299</a>         callNextSessionOpened(head, session);
<a name="300" href="#300">300</a>     }
<a name="301" href="#301">301</a> 
<a name="302" href="#302">302</a>     <strong>private</strong> <strong>void</strong> callNextSessionOpened( Entry entry,
<a name="303" href="#303">303</a>                                         <a href="../../../../org/apache/mina/io/IoSession.html">IoSession</a> session)
<a name="304" href="#304">304</a>     {
<a name="305" href="#305">305</a>         <strong>try</strong>
<a name="306" href="#306">306</a>         {
<a name="307" href="#307">307</a>             entry.filter.sessionOpened( entry.nextFilter, session );
<a name="308" href="#308">308</a>         }
<a name="309" href="#309">309</a>         <strong>catch</strong>( Throwable e )
<a name="310" href="#310">310</a>         {
<a name="311" href="#311">311</a>             exceptionCaught( session, e );
<a name="312" href="#312">312</a>         }
<a name="313" href="#313">313</a>     }
<a name="314" href="#314">314</a> 
<a name="315" href="#315">315</a>     <strong>public</strong> <strong>void</strong> sessionClosed( IoSession session )
<a name="316" href="#316">316</a>     {
<a name="317" href="#317">317</a>         Entry head = <strong>this</strong>.head;
<a name="318" href="#318">318</a>         callNextSessionClosed(head, session);
<a name="319" href="#319">319</a>     }
<a name="320" href="#320">320</a> 
<a name="321" href="#321">321</a>     <strong>private</strong> <strong>void</strong> callNextSessionClosed( Entry entry,
<a name="322" href="#322">322</a>                                         <a href="../../../../org/apache/mina/io/IoSession.html">IoSession</a> session )
<a name="323" href="#323">323</a>     {
<a name="324" href="#324">324</a>         <strong>try</strong>
<a name="325" href="#325">325</a>         {
<a name="326" href="#326">326</a>             entry.filter.sessionClosed( entry.nextFilter, session );
<a name="327" href="#327">327</a>         }
<a name="328" href="#328">328</a>         <strong>catch</strong>( Throwable e )
<a name="329" href="#329">329</a>         {
<a name="330" href="#330">330</a>             exceptionCaught( session, e );
<a name="331" href="#331">331</a>         }
<a name="332" href="#332">332</a>     }
<a name="333" href="#333">333</a> 
<a name="334" href="#334">334</a>     <strong>public</strong> <strong>void</strong> sessionIdle( IoSession session, IdleStatus status )
<a name="335" href="#335">335</a>     {
<a name="336" href="#336">336</a>         Entry head = <strong>this</strong>.head;
<a name="337" href="#337">337</a>         callNextSessionIdle(head, session, status);
<a name="338" href="#338">338</a>     }
<a name="339" href="#339">339</a> 
<a name="340" href="#340">340</a>     <strong>private</strong> <strong>void</strong> callNextSessionIdle( Entry entry,
<a name="341" href="#341">341</a>                                       <a href="../../../../org/apache/mina/io/IoSession.html">IoSession</a> session,
<a name="342" href="#342">342</a>                                       <a href="../../../../org/apache/mina/common/IdleStatus.html">IdleStatus</a> status )
<a name="343" href="#343">343</a>     {
<a name="344" href="#344">344</a>         <strong>try</strong>
<a name="345" href="#345">345</a>         {
<a name="346" href="#346">346</a>             entry.filter.sessionIdle( entry.nextFilter, session, status );
<a name="347" href="#347">347</a>         }
<a name="348" href="#348">348</a>         <strong>catch</strong>( Throwable e )
<a name="349" href="#349">349</a>         {
<a name="350" href="#350">350</a>             exceptionCaught( session, e );
<a name="351" href="#351">351</a>         }
<a name="352" href="#352">352</a>     }
<a name="353" href="#353">353</a> 
<a name="354" href="#354">354</a>     <strong>public</strong> <strong>void</strong> dataRead( IoSession session, ByteBuffer buf )
<a name="355" href="#355">355</a>     {
<a name="356" href="#356">356</a>         Entry head = <strong>this</strong>.head;
<a name="357" href="#357">357</a>         callNextDataRead(head, session, buf);
<a name="358" href="#358">358</a>     }
<a name="359" href="#359">359</a> 
<a name="360" href="#360">360</a>     <strong>private</strong> <strong>void</strong> callNextDataRead( Entry entry,
<a name="361" href="#361">361</a>                                    <a href="../../../../org/apache/mina/io/IoSession.html">IoSession</a> session,
<a name="362" href="#362">362</a>                                    <a href="../../../../org/apache/mina/common/ByteBuffer.html">ByteBuffer</a> buf )
<a name="363" href="#363">363</a>     {
<a name="364" href="#364">364</a>         <strong>try</strong>
<a name="365" href="#365">365</a>         {
<a name="366" href="#366">366</a>             entry.filter.dataRead( entry.nextFilter, session, buf );
<a name="367" href="#367">367</a>         }
<a name="368" href="#368">368</a>         <strong>catch</strong>( Throwable e )
<a name="369" href="#369">369</a>         {
<a name="370" href="#370">370</a>             exceptionCaught( session, e );
<a name="371" href="#371">371</a>         }
<a name="372" href="#372">372</a>     }
<a name="373" href="#373">373</a> 
<a name="374" href="#374">374</a>     <strong>public</strong> <strong>void</strong> dataWritten( IoSession session, Object marker )
<a name="375" href="#375">375</a>     {
<a name="376" href="#376">376</a>         Entry head = <strong>this</strong>.head;
<a name="377" href="#377">377</a>         callNextDataWritten(head, session, marker);
<a name="378" href="#378">378</a>     }
<a name="379" href="#379">379</a> 
<a name="380" href="#380">380</a>     <strong>private</strong> <strong>void</strong> callNextDataWritten( Entry entry,
<a name="381" href="#381">381</a>                                       <a href="../../../../org/apache/mina/io/IoSession.html">IoSession</a> session,
<a name="382" href="#382">382</a>                                       Object marker ) 
<a name="383" href="#383">383</a>     {
<a name="384" href="#384">384</a>         <strong>try</strong>
<a name="385" href="#385">385</a>         {
<a name="386" href="#386">386</a>             entry.filter.dataWritten( entry.nextFilter, session, marker );
<a name="387" href="#387">387</a>         }
<a name="388" href="#388">388</a>         <strong>catch</strong>( Throwable e )
<a name="389" href="#389">389</a>         {
<a name="390" href="#390">390</a>             exceptionCaught( session, e );
<a name="391" href="#391">391</a>         }
<a name="392" href="#392">392</a>     }
<a name="393" href="#393">393</a> 
<a name="394" href="#394">394</a>     <strong>public</strong> <strong>void</strong> exceptionCaught( IoSession session, Throwable cause )
<a name="395" href="#395">395</a>     {
<a name="396" href="#396">396</a>         Entry head = <strong>this</strong>.head;
<a name="397" href="#397">397</a>         callNextExceptionCaught(head, session, cause);
<a name="398" href="#398">398</a>     }
<a name="399" href="#399">399</a> 
<a name="400" href="#400">400</a>     <strong>private</strong> <strong>void</strong> callNextExceptionCaught( Entry entry,
<a name="401" href="#401">401</a>                                           <a href="../../../../org/apache/mina/io/IoSession.html">IoSession</a> session,
<a name="402" href="#402">402</a>                                           Throwable cause )
<a name="403" href="#403">403</a>     {
<a name="404" href="#404">404</a>         <strong>try</strong>
<a name="405" href="#405">405</a>         {
<a name="406" href="#406">406</a>             entry.filter.exceptionCaught( entry.nextFilter, session, cause );
<a name="407" href="#407">407</a>         }
<a name="408" href="#408">408</a>         <strong>catch</strong>( Throwable e )
<a name="409" href="#409">409</a>         {
<a name="410" href="#410">410</a>             e.printStackTrace();
<a name="411" href="#411">411</a>         }
<a name="412" href="#412">412</a>     }
<a name="413" href="#413">413</a>     
<a name="414" href="#414">414</a>     <strong>public</strong> <strong>void</strong> filterWrite( IoSession session, ByteBuffer buf, Object marker )
<a name="415" href="#415">415</a>     {
<a name="416" href="#416">416</a>         Entry tail = <strong>this</strong>.tail;
<a name="417" href="#417">417</a>         callPreviousFilterWrite( tail, session, buf, marker );
<a name="418" href="#418">418</a>     }
<a name="419" href="#419">419</a> 
<a name="420" href="#420">420</a>     <strong>private</strong> <strong>void</strong> callPreviousFilterWrite( Entry entry,
<a name="421" href="#421">421</a>                                           <a href="../../../../org/apache/mina/io/IoSession.html">IoSession</a> session,
<a name="422" href="#422">422</a>                                           <a href="../../../../org/apache/mina/common/ByteBuffer.html">ByteBuffer</a> buf, Object marker )
<a name="423" href="#423">423</a>     {
<a name="424" href="#424">424</a>         <strong>if</strong>( buf == <strong>null</strong> )
<a name="425" href="#425">425</a>         {
<a name="426" href="#426">426</a>             <strong>return</strong>;
<a name="427" href="#427">427</a>         }
<a name="428" href="#428">428</a>         
<a name="429" href="#429">429</a>         <strong>try</strong>
<a name="430" href="#430">430</a>         {
<a name="431" href="#431">431</a>             entry.filter.filterWrite( entry.nextFilter, session, buf, marker );
<a name="432" href="#432">432</a>         }
<a name="433" href="#433">433</a>         <strong>catch</strong>( Throwable e )
<a name="434" href="#434">434</a>         {
<a name="435" href="#435">435</a>             exceptionCaught( session, e );
<a name="436" href="#436">436</a>         }
<a name="437" href="#437">437</a>     }
<a name="438" href="#438">438</a> 
<a name="439" href="#439">439</a>     <strong>public</strong> List getChildren()
<a name="440" href="#440">440</a>     {
<a name="441" href="#441">441</a>         List list = <strong>new</strong> ArrayList();
<a name="442" href="#442">442</a>         Entry e = head.nextEntry;
<a name="443" href="#443">443</a>         <strong>while</strong>( e != tail )
<a name="444" href="#444">444</a>         {
<a name="445" href="#445">445</a>             list.add( e.filter );
<a name="446" href="#446">446</a>             e = e.nextEntry;
<a name="447" href="#447">447</a>         }
<a name="448" href="#448">448</a> 
<a name="449" href="#449">449</a>         <strong>return</strong> list;
<a name="450" href="#450">450</a>     }
<a name="451" href="#451">451</a> 
<a name="452" href="#452">452</a>     <strong>public</strong> List getChildrenReversed()
<a name="453" href="#453">453</a>     {
<a name="454" href="#454">454</a>         List list = <strong>new</strong> ArrayList();
<a name="455" href="#455">455</a>         Entry e = tail.prevEntry;
<a name="456" href="#456">456</a>         <strong>while</strong>( e != head )
<a name="457" href="#457">457</a>         {
<a name="458" href="#458">458</a>             list.add( e.filter );
<a name="459" href="#459">459</a>             e = e.prevEntry;
<a name="460" href="#460">460</a>         }
<a name="461" href="#461">461</a>         <strong>return</strong> list;
<a name="462" href="#462">462</a>     }
<a name="463" href="#463">463</a>     
<a name="464" href="#464">464</a>     <strong>protected</strong> <strong>abstract</strong> <strong>void</strong> doWrite( IoSession session, ByteBuffer buffer, Object marker );
<a name="465" href="#465">465</a> 
<a name="466" href="#466">466</a>     <strong>private</strong> <strong>class</strong> Entry
<a name="467" href="#467">467</a>     {
<a name="468" href="#468">468</a>         <strong>private</strong> Entry prevEntry;
<a name="469" href="#469">469</a> 
<a name="470" href="#470">470</a>         <strong>private</strong> Entry nextEntry;
<a name="471" href="#471">471</a> 
<a name="472" href="#472">472</a>         <strong>private</strong> <strong>final</strong> String name;
<a name="473" href="#473">473</a>         
<a name="474" href="#474">474</a>         <strong>private</strong> <strong>final</strong> <a href="../../../../org/apache/mina/io/IoFilter.html">IoFilter</a> filter;
<a name="475" href="#475">475</a> 
<a name="476" href="#476">476</a>         <strong>private</strong> <strong>final</strong> NextFilter nextFilter;
<a name="477" href="#477">477</a>         
<a name="478" href="#478">478</a>         <strong>private</strong> Entry( Entry prevEntry, Entry nextEntry,
<a name="479" href="#479">479</a>                        String name, <a href="../../../../org/apache/mina/io/IoFilter.html">IoFilter</a> filter )
<a name="480" href="#480">480</a>         {
<a name="481" href="#481">481</a>             <strong>if</strong>( filter == <strong>null</strong> )
<a name="482" href="#482">482</a>             {
<a name="483" href="#483">483</a>                 <strong>throw</strong> <strong>new</strong> NullPointerException( <span class="string">"filter"</span> );
<a name="484" href="#484">484</a>             }
<a name="485" href="#485">485</a>             <strong>if</strong>( name == <strong>null</strong> )
<a name="486" href="#486">486</a>             {
<a name="487" href="#487">487</a>                 <strong>throw</strong> <strong>new</strong> NullPointerException( <span class="string">"name"</span> );
<a name="488" href="#488">488</a>             }
<a name="489" href="#489">489</a>             
<a name="490" href="#490">490</a>             <strong>this</strong>.prevEntry = prevEntry;
<a name="491" href="#491">491</a>             <strong>this</strong>.nextEntry = nextEntry;
<a name="492" href="#492">492</a>             <strong>this</strong>.name = name;
<a name="493" href="#493">493</a>             <strong>this</strong>.filter = filter;
<a name="494" href="#494">494</a>             <strong>this</strong>.nextFilter = <strong>new</strong> NextFilter()
<a name="495" href="#495">495</a>             {
<a name="496" href="#496">496</a> 
<a name="497" href="#497">497</a>                 <strong>public</strong> <strong>void</strong> sessionOpened( IoSession session )
<a name="498" href="#498">498</a>                 {
<a name="499" href="#499">499</a>                     Entry nextEntry = Entry.<strong>this</strong>.nextEntry;
<a name="500" href="#500">500</a>                     callNextSessionOpened( nextEntry, session );
<a name="501" href="#501">501</a>                 }
<a name="502" href="#502">502</a> 
<a name="503" href="#503">503</a>                 <strong>public</strong> <strong>void</strong> sessionClosed( IoSession session )
<a name="504" href="#504">504</a>                 {
<a name="505" href="#505">505</a>                     Entry nextEntry = Entry.<strong>this</strong>.nextEntry;
<a name="506" href="#506">506</a>                     callNextSessionClosed( nextEntry, session );
<a name="507" href="#507">507</a>                 }
<a name="508" href="#508">508</a> 
<a name="509" href="#509">509</a>                 <strong>public</strong> <strong>void</strong> sessionIdle( IoSession session, IdleStatus status )
<a name="510" href="#510">510</a>                 {
<a name="511" href="#511">511</a>                     Entry nextEntry = Entry.<strong>this</strong>.nextEntry;
<a name="512" href="#512">512</a>                     callNextSessionIdle( nextEntry, session, status );
<a name="513" href="#513">513</a>                 }
<a name="514" href="#514">514</a> 
<a name="515" href="#515">515</a>                 <strong>public</strong> <strong>void</strong> exceptionCaught( IoSession session,
<a name="516" href="#516">516</a>                                             Throwable cause )
<a name="517" href="#517">517</a>                 {
<a name="518" href="#518">518</a>                     Entry nextEntry = Entry.<strong>this</strong>.nextEntry;
<a name="519" href="#519">519</a>                     callNextExceptionCaught( nextEntry, session, cause );
<a name="520" href="#520">520</a>                 }
<a name="521" href="#521">521</a> 
<a name="522" href="#522">522</a>                 <strong>public</strong> <strong>void</strong> dataRead( IoSession session, ByteBuffer buf )
<a name="523" href="#523">523</a>                 {
<a name="524" href="#524">524</a>                     Entry nextEntry = Entry.<strong>this</strong>.nextEntry;
<a name="525" href="#525">525</a>                     callNextDataRead( nextEntry, session, buf );
<a name="526" href="#526">526</a>                 }
<a name="527" href="#527">527</a> 
<a name="528" href="#528">528</a>                 <strong>public</strong> <strong>void</strong> dataWritten( IoSession session, Object marker )
<a name="529" href="#529">529</a>                 {
<a name="530" href="#530">530</a>                     Entry nextEntry = Entry.<strong>this</strong>.nextEntry;
<a name="531" href="#531">531</a>                     callNextDataWritten( nextEntry, session, marker );
<a name="532" href="#532">532</a>                 }
<a name="533" href="#533">533</a>                 
<a name="534" href="#534">534</a>                 <strong>public</strong> <strong>void</strong> filterWrite( IoSession session, ByteBuffer buf, Object marker )
<a name="535" href="#535">535</a>                 {
<a name="536" href="#536">536</a>                     Entry nextEntry = Entry.<strong>this</strong>.prevEntry;
<a name="537" href="#537">537</a>                     callPreviousFilterWrite( nextEntry, session, buf, marker );
<a name="538" href="#538">538</a>                 }
<a name="539" href="#539">539</a>             };
<a name="540" href="#540">540</a>         }
<a name="541" href="#541">541</a>         
<a name="542" href="#542">542</a>         <strong>public</strong> String getName()
<a name="543" href="#543">543</a>         {
<a name="544" href="#544">544</a>             <strong>return</strong> name;
<a name="545" href="#545">545</a>         }
<a name="546" href="#546">546</a>         
<a name="547" href="#547">547</a>         <strong>public</strong> <a href="../../../../org/apache/mina/io/IoFilter.html">IoFilter</a> getFilter()
<a name="548" href="#548">548</a>         {
<a name="549" href="#549">549</a>             <strong>return</strong> filter;
<a name="550" href="#550">550</a>         }
<a name="551" href="#551">551</a>     }
<a name="552" href="#552">552</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

