<!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>AbstractProtocolFilterChain xref</title>
<link type="text/css" rel="stylesheet" href="../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../apidocs/org/apache/mina/protocol/AbstractProtocolFilterChain.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: AbstractProtocolFilterChain.java 357871 2005-12-20 01:56:40Z 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/protocol/package-summary.html">org.apache.mina.protocol</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.IdleStatus;
<a name="29" href="#29">29</a>  <strong>import</strong> org.apache.mina.protocol.ProtocolFilter.NextFilter;
<a name="30" href="#30">30</a>  <strong>import</strong> org.apache.mina.util.SessionLog;
<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 ProtocolFilterChain} that provides</em>
<a name="34" href="#34">34</a>  <em> * common operations for developers to extend protocol layer.</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(ProtocolSession, 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 ProtocolFilter#filterWrite(NextFilter, ProtocolSession, Object)} and </em>
<a name="46" href="#46">46</a>  <em> * finally to be written out.</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: 357871 $, $Date: 2005-12-20 10:56:40 +0900 (Tue, 20 Dec 2005) $</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/protocol/AbstractProtocolFilterChain.html">AbstractProtocolFilterChain</a> implements <a href="../../../../org/apache/mina/protocol/ProtocolFilterChain.html">ProtocolFilterChain</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/protocol/AbstractProtocolFilterChain.html">AbstractProtocolFilterChain</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/protocol/ProtocolFilter.html">ProtocolFilter</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/protocol/ProtocolFilter.html">ProtocolFilter</a>()
<a name="74" href="#74">74</a>          {
<a name="75" href="#75">75</a>              <strong>public</strong> <strong>void</strong> sessionOpened( NextFilter nextFilter, ProtocolSession session )
<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, ProtocolSession session )
<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, ProtocolSession session,
<a name="86" href="#86">86</a>                                      <a href="../../../../org/apache/mina/common/IdleStatus.html">IdleStatus</a> status )
<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/protocol/ProtocolSession.html">ProtocolSession</a> session, Throwable cause )
<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> messageReceived( NextFilter nextFilter, ProtocolSession session,
<a name="98" href="#98">98</a>                                           Object message )
<a name="99" href="#99">99</a>              {
<a name="100" href="#100">100</a>                 nextFilter.messageReceived( session, message );
<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> messageSent( NextFilter nextFilter, ProtocolSession session,
<a name="104" href="#104">104</a>                                      Object message )
<a name="105" href="#105">105</a>             {
<a name="106" href="#106">106</a>                 nextFilter.messageSent( session, message );
<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, ProtocolSession session,
<a name="110" href="#110">110</a>                                      Object message )
<a name="111" href="#111">111</a>             {
<a name="112" href="#112">112</a>                 doWrite( session, message );
<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 head 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/protocol/ProtocolFilter.html">ProtocolFilter</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/protocol/ProtocolFilter.html">ProtocolFilter</a>()
<a name="123" href="#123">123</a>         {
<a name="124" href="#124">124</a>             <strong>public</strong> <strong>void</strong> sessionOpened( NextFilter nextFilter, ProtocolSession 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, ProtocolSession 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, ProtocolSession 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/protocol/ProtocolSession.html">ProtocolSession</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> messageReceived( NextFilter nextFilter, ProtocolSession session,
<a name="147" href="#147">147</a>                                          Object message ) throws Exception
<a name="148" href="#148">148</a>             {
<a name="149" href="#149">149</a>                 <a href="../../../../org/apache/mina/protocol/ProtocolHandler.html">ProtocolHandler</a> handler = session.getHandler();
<a name="150" href="#150">150</a>                 handler.messageReceived( session, message );
<a name="151" href="#151">151</a>             }
<a name="152" href="#152">152</a> 
<a name="153" href="#153">153</a>             <strong>public</strong> <strong>void</strong> messageSent( NextFilter nextFilter, ProtocolSession session,
<a name="154" href="#154">154</a>                                      Object message ) throws Exception
<a name="155" href="#155">155</a>             {
<a name="156" href="#156">156</a>                 session.getHandler().messageSent( session, message );
<a name="157" href="#157">157</a>             }
<a name="158" href="#158">158</a> 
<a name="159" href="#159">159</a>             <strong>public</strong> <strong>void</strong> filterWrite( NextFilter nextFilter,
<a name="160" href="#160">160</a>                                      <a href="../../../../org/apache/mina/protocol/ProtocolSession.html">ProtocolSession</a> session, Object message ) throws Exception
<a name="161" href="#161">161</a>             {
<a name="162" href="#162">162</a>                 nextFilter.filterWrite( session, message );
<a name="163" href="#163">163</a>             }
<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>     <strong>public</strong> <a href="../../../../org/apache/mina/protocol/ProtocolFilter.html">ProtocolFilter</a> getChild( String name )
<a name="168" href="#168">168</a>     {
<a name="169" href="#169">169</a>         Entry e = ( Entry ) name2entry.get( name );
<a name="170" href="#170">170</a>         <strong>if</strong> ( e == <strong>null</strong> )
<a name="171" href="#171">171</a>         {
<a name="172" href="#172">172</a>             <strong>return</strong> <strong>null</strong>;
<a name="173" href="#173">173</a>         }
<a name="174" href="#174">174</a>         <strong>return</strong> e.filter;
<a name="175" href="#175">175</a>     }
<a name="176" href="#176">176</a>     
<a name="177" href="#177">177</a>     <em>/**<em>*</em></em>
<a name="178" href="#178">178</a> <em>     * Adds the specified interceptor with the specified name at the beginning of this chain.</em>
<a name="179" href="#179">179</a> <em>     */</em>
<a name="180" href="#180">180</a>     <strong>public</strong> <strong>synchronized</strong> <strong>void</strong> addFirst( String name,
<a name="181" href="#181">181</a>                                        <a href="../../../../org/apache/mina/protocol/ProtocolFilter.html">ProtocolFilter</a> filter )
<a name="182" href="#182">182</a>     {
<a name="183" href="#183">183</a>         checkAddable( name );
<a name="184" href="#184">184</a>         register( head, name, filter );
<a name="185" href="#185">185</a>     }
<a name="186" href="#186">186</a> 
<a name="187" href="#187">187</a> 
<a name="188" href="#188">188</a>     <em>/**<em>*</em></em>
<a name="189" href="#189">189</a> <em>     * Adds the specified interceptor with the specified name at the end of this chain.</em>
<a name="190" href="#190">190</a> <em>     */</em>
<a name="191" href="#191">191</a>     <strong>public</strong> <strong>synchronized</strong> <strong>void</strong> addLast( String name,
<a name="192" href="#192">192</a>                                       <a href="../../../../org/apache/mina/protocol/ProtocolFilter.html">ProtocolFilter</a> filter )
<a name="193" href="#193">193</a>     {
<a name="194" href="#194">194</a>         checkAddable( name );
<a name="195" href="#195">195</a>         register( tail.prevEntry, name, filter );
<a name="196" href="#196">196</a>     }
<a name="197" href="#197">197</a> 
<a name="198" href="#198">198</a> 
<a name="199" href="#199">199</a>     <em>/**<em>*</em></em>
<a name="200" href="#200">200</a> <em>     * Adds the specified interceptor with the specified name just before the interceptor whose name is</em>
<a name="201" href="#201">201</a> <em>     * &lt;code>baseName&lt;/code> in this chain.</em>
<a name="202" href="#202">202</a> <em>     */</em>
<a name="203" href="#203">203</a>     <strong>public</strong> <strong>synchronized</strong> <strong>void</strong> addBefore( String baseName,
<a name="204" href="#204">204</a>                                         String name,
<a name="205" href="#205">205</a>                                         <a href="../../../../org/apache/mina/protocol/ProtocolFilter.html">ProtocolFilter</a> filter )
<a name="206" href="#206">206</a>     {
<a name="207" href="#207">207</a>         Entry baseEntry = checkOldName( baseName );
<a name="208" href="#208">208</a>         checkAddable( name );
<a name="209" href="#209">209</a>         register( baseEntry.prevEntry, name, filter );
<a name="210" href="#210">210</a>     }
<a name="211" href="#211">211</a> 
<a name="212" href="#212">212</a> 
<a name="213" href="#213">213</a>     <em>/**<em>*</em></em>
<a name="214" href="#214">214</a> <em>     * Adds the specified interceptor with the specified name just after the interceptor whose name is</em>
<a name="215" href="#215">215</a> <em>     * &lt;code>baseName&lt;/code> in this chain.</em>
<a name="216" href="#216">216</a> <em>     */</em>
<a name="217" href="#217">217</a>     <strong>public</strong> <strong>synchronized</strong> <strong>void</strong> addAfter( String baseName,
<a name="218" href="#218">218</a>                                        String name,
<a name="219" href="#219">219</a>                                        <a href="../../../../org/apache/mina/protocol/ProtocolFilter.html">ProtocolFilter</a> filter )
<a name="220" href="#220">220</a>     {
<a name="221" href="#221">221</a>         Entry baseEntry = checkOldName( baseName );
<a name="222" href="#222">222</a>         checkAddable( name );
<a name="223" href="#223">223</a>         register( baseEntry, name, filter );
<a name="224" href="#224">224</a>     }
<a name="225" href="#225">225</a> 
<a name="226" href="#226">226</a> 
<a name="227" href="#227">227</a>     <em>/**<em>*</em></em>
<a name="228" href="#228">228</a> <em>     * Removes the interceptor with the specified name from this chain.</em>
<a name="229" href="#229">229</a> <em>     */</em>
<a name="230" href="#230">230</a>     <strong>public</strong> <strong>synchronized</strong> <a href="../../../../org/apache/mina/protocol/ProtocolFilter.html">ProtocolFilter</a> remove( String name )
<a name="231" href="#231">231</a>     {
<a name="232" href="#232">232</a>         Entry entry = checkOldName( name );
<a name="233" href="#233">233</a>         Entry prevEntry = entry.prevEntry;
<a name="234" href="#234">234</a>         Entry nextEntry = entry.nextEntry;
<a name="235" href="#235">235</a>         prevEntry.nextEntry = nextEntry;
<a name="236" href="#236">236</a>         nextEntry.prevEntry = prevEntry;
<a name="237" href="#237">237</a> 
<a name="238" href="#238">238</a>         name2entry.remove( name );
<a name="239" href="#239">239</a>         <a href="../../../../org/apache/mina/protocol/ProtocolFilter.html">ProtocolFilter</a> filter = entry.filter;
<a name="240" href="#240">240</a>         filter2entry.remove( filter );
<a name="241" href="#241">241</a>         
<a name="242" href="#242">242</a>         <strong>return</strong> filter;
<a name="243" href="#243">243</a>     }
<a name="244" href="#244">244</a> 
<a name="245" href="#245">245</a> 
<a name="246" href="#246">246</a>     <em>/**<em>*</em></em>
<a name="247" href="#247">247</a> <em>     * Removes all interceptors added to this chain.</em>
<a name="248" href="#248">248</a> <em>     */</em>
<a name="249" href="#249">249</a>     <strong>public</strong> <strong>synchronized</strong> <strong>void</strong> clear()
<a name="250" href="#250">250</a>     {
<a name="251" href="#251">251</a>         Iterator it = <strong>new</strong> ArrayList( name2entry.keySet() ).iterator();
<a name="252" href="#252">252</a>         <strong>while</strong> ( it.hasNext() )
<a name="253" href="#253">253</a>         {
<a name="254" href="#254">254</a>             <strong>this</strong>.remove( ( String ) it.next() );
<a name="255" href="#255">255</a>         }
<a name="256" href="#256">256</a>     }
<a name="257" href="#257">257</a> 
<a name="258" href="#258">258</a>     <strong>private</strong> <strong>void</strong> register( Entry prevEntry, String name, ProtocolFilter filter )
<a name="259" href="#259">259</a>     {
<a name="260" href="#260">260</a>         Entry <strong>new</strong>Entry = <strong>new</strong> Entry( prevEntry, prevEntry.nextEntry, name, filter );
<a name="261" href="#261">261</a>         prevEntry.nextEntry.prevEntry = newEntry;
<a name="262" href="#262">262</a>         prevEntry.nextEntry = newEntry;
<a name="263" href="#263">263</a>         name2entry.put( name, newEntry );
<a name="264" href="#264">264</a>         filter2entry.put( filter, newEntry );
<a name="265" href="#265">265</a>     }
<a name="266" href="#266">266</a> 
<a name="267" href="#267">267</a>     <em>/**<em>*</em></em>
<a name="268" href="#268">268</a> <em>     * Throws an exception when the specified interceptor name is not registered in this chain.</em>
<a name="269" href="#269">269</a> <em>     *</em>
<a name="270" href="#270">270</a> <em>     * @return An interceptor entry with the specified name.</em>
<a name="271" href="#271">271</a> <em>     */</em>
<a name="272" href="#272">272</a>     <strong>private</strong> Entry checkOldName( String baseName )
<a name="273" href="#273">273</a>     {
<a name="274" href="#274">274</a>         Entry e = ( Entry ) name2entry.get( baseName );
<a name="275" href="#275">275</a>         <strong>if</strong> ( e == <strong>null</strong> )
<a name="276" href="#276">276</a>         {
<a name="277" href="#277">277</a>             <strong>throw</strong> <strong>new</strong> IllegalArgumentException( <span class="string">"Unknown interceptor name:"</span> +
<a name="278" href="#278">278</a>                     baseName );
<a name="279" href="#279">279</a>         }
<a name="280" href="#280">280</a>         <strong>return</strong> e;
<a name="281" href="#281">281</a>     }
<a name="282" href="#282">282</a> 
<a name="283" href="#283">283</a> 
<a name="284" href="#284">284</a>     <em>/**<em>*</em></em>
<a name="285" href="#285">285</a> <em>     * Checks the specified interceptor name is already taken and throws an exception if already taken.</em>
<a name="286" href="#286">286</a> <em>     */</em>
<a name="287" href="#287">287</a>     <strong>private</strong> <strong>void</strong> checkAddable( String name )
<a name="288" href="#288">288</a>     {
<a name="289" href="#289">289</a>         <strong>if</strong> ( name2entry.containsKey( name ) )
<a name="290" href="#290">290</a>         {
<a name="291" href="#291">291</a>             <strong>throw</strong> <strong>new</strong> IllegalArgumentException( <span class="string">"Other interceptor is using name '"</span> + name + <span class="string">"'"</span> );
<a name="292" href="#292">292</a>         }
<a name="293" href="#293">293</a>     }
<a name="294" href="#294">294</a> 
<a name="295" href="#295">295</a>     <strong>public</strong> <strong>void</strong> sessionOpened( ProtocolSession session )
<a name="296" href="#296">296</a>     {
<a name="297" href="#297">297</a>         Entry head = <strong>this</strong>.head;
<a name="298" href="#298">298</a>         callNextSessionOpened(head, session);
<a name="299" href="#299">299</a>     }
<a name="300" href="#300">300</a> 
<a name="301" href="#301">301</a>     <strong>private</strong> <strong>void</strong> callNextSessionOpened( Entry entry,
<a name="302" href="#302">302</a>                                         <a href="../../../../org/apache/mina/protocol/ProtocolSession.html">ProtocolSession</a> session)
<a name="303" href="#303">303</a>     {
<a name="304" href="#304">304</a>         <strong>try</strong>
<a name="305" href="#305">305</a>         {
<a name="306" href="#306">306</a>             entry.filter.sessionOpened( entry.nextFilter, session );
<a name="307" href="#307">307</a>         }
<a name="308" href="#308">308</a>         <strong>catch</strong>( Throwable e )
<a name="309" href="#309">309</a>         {
<a name="310" href="#310">310</a>             exceptionCaught( session, e );
<a name="311" href="#311">311</a>         }
<a name="312" href="#312">312</a>     }
<a name="313" href="#313">313</a> 
<a name="314" href="#314">314</a>     <strong>public</strong> <strong>void</strong> sessionClosed( ProtocolSession session )
<a name="315" href="#315">315</a>     {
<a name="316" href="#316">316</a>         Entry head = <strong>this</strong>.head;
<a name="317" href="#317">317</a>         callNextSessionClosed(head, session);
<a name="318" href="#318">318</a>     }
<a name="319" href="#319">319</a> 
<a name="320" href="#320">320</a>     <strong>private</strong> <strong>void</strong> callNextSessionClosed( Entry entry,
<a name="321" href="#321">321</a>                                         <a href="../../../../org/apache/mina/protocol/ProtocolSession.html">ProtocolSession</a> session )
<a name="322" href="#322">322</a>     {
<a name="323" href="#323">323</a>         <strong>try</strong>
<a name="324" href="#324">324</a>         {
<a name="325" href="#325">325</a>             entry.filter.sessionClosed( entry.nextFilter, session );
<a name="326" href="#326">326</a>                 
<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( ProtocolSession 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/protocol/ProtocolSession.html">ProtocolSession</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> messageReceived( ProtocolSession session, Object message )
<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>         callNextMessageReceived(head, session, message );
<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> callNextMessageReceived( Entry entry,
<a name="361" href="#361">361</a>                                           <a href="../../../../org/apache/mina/protocol/ProtocolSession.html">ProtocolSession</a> session,
<a name="362" href="#362">362</a>                                           Object message )
<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.messageReceived( entry.nextFilter, session, message );
<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> messageSent( ProtocolSession session, Object message )
<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>         callNextMessageSent(head, session, message);
<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> callNextMessageSent( Entry entry,
<a name="381" href="#381">381</a>                                       <a href="../../../../org/apache/mina/protocol/ProtocolSession.html">ProtocolSession</a> session,
<a name="382" href="#382">382</a>                                       Object message ) 
<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.messageSent( entry.nextFilter, session, message );
<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( ProtocolSession 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/protocol/ProtocolSession.html">ProtocolSession</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>             SessionLog.warn(
<a name="411" href="#411">411</a>                     session,
<a name="412" href="#412">412</a>                     <span class="string">"Unexpected exception from exceptionCaught handler."</span>, e );
<a name="413" href="#413">413</a>         }
<a name="414" href="#414">414</a>     }
<a name="415" href="#415">415</a>     
<a name="416" href="#416">416</a>     <strong>public</strong> <strong>void</strong> filterWrite( ProtocolSession session, Object message )
<a name="417" href="#417">417</a>     {
<a name="418" href="#418">418</a>         Entry tail = <strong>this</strong>.tail;
<a name="419" href="#419">419</a>         callPreviousFilterWrite( tail, session, message );
<a name="420" href="#420">420</a>     }
<a name="421" href="#421">421</a> 
<a name="422" href="#422">422</a>     <strong>private</strong> <strong>void</strong> callPreviousFilterWrite( Entry entry,
<a name="423" href="#423">423</a>                                           <a href="../../../../org/apache/mina/protocol/ProtocolSession.html">ProtocolSession</a> session,
<a name="424" href="#424">424</a>                                           Object message )
<a name="425" href="#425">425</a>     {
<a name="426" href="#426">426</a>         <strong>if</strong>( message == <strong>null</strong> )
<a name="427" href="#427">427</a>         {
<a name="428" href="#428">428</a>             <strong>return</strong>;
<a name="429" href="#429">429</a>         }
<a name="430" href="#430">430</a>         
<a name="431" href="#431">431</a>         <strong>try</strong>
<a name="432" href="#432">432</a>         {
<a name="433" href="#433">433</a>             entry.filter.filterWrite( entry.nextFilter, session, message );
<a name="434" href="#434">434</a>         }
<a name="435" href="#435">435</a>         <strong>catch</strong>( Throwable e )
<a name="436" href="#436">436</a>         {
<a name="437" href="#437">437</a>             exceptionCaught( session, e );
<a name="438" href="#438">438</a>         }
<a name="439" href="#439">439</a>     }
<a name="440" href="#440">440</a> 
<a name="441" href="#441">441</a>     <strong>public</strong> List getChildren()
<a name="442" href="#442">442</a>     {
<a name="443" href="#443">443</a>         List list = <strong>new</strong> ArrayList();
<a name="444" href="#444">444</a>         Entry e = head.nextEntry;
<a name="445" href="#445">445</a>         <strong>while</strong>( e != tail )
<a name="446" href="#446">446</a>         {
<a name="447" href="#447">447</a>             list.add( e.filter );
<a name="448" href="#448">448</a>             e = e.nextEntry;
<a name="449" href="#449">449</a>         }
<a name="450" href="#450">450</a> 
<a name="451" href="#451">451</a>         <strong>return</strong> list;
<a name="452" href="#452">452</a>     }
<a name="453" href="#453">453</a> 
<a name="454" href="#454">454</a>     <strong>public</strong> List getChildrenReversed()
<a name="455" href="#455">455</a>     {
<a name="456" href="#456">456</a>         List list = <strong>new</strong> ArrayList();
<a name="457" href="#457">457</a>         Entry e = tail.prevEntry;
<a name="458" href="#458">458</a>         <strong>while</strong>( e != head )
<a name="459" href="#459">459</a>         {
<a name="460" href="#460">460</a>             list.add( e.filter );
<a name="461" href="#461">461</a>             e = e.prevEntry;
<a name="462" href="#462">462</a>         }
<a name="463" href="#463">463</a>         <strong>return</strong> list;
<a name="464" href="#464">464</a>     }
<a name="465" href="#465">465</a>     
<a name="466" href="#466">466</a>     <strong>protected</strong> <strong>abstract</strong> <strong>void</strong> doWrite( ProtocolSession session, Object message );
<a name="467" href="#467">467</a> 
<a name="468" href="#468">468</a>     <strong>private</strong> <strong>class</strong> Entry
<a name="469" href="#469">469</a>     {
<a name="470" href="#470">470</a>         <strong>private</strong> Entry prevEntry;
<a name="471" href="#471">471</a> 
<a name="472" href="#472">472</a>         <strong>private</strong> Entry nextEntry;
<a name="473" href="#473">473</a> 
<a name="474" href="#474">474</a>         <strong>private</strong> <strong>final</strong> String name;
<a name="475" href="#475">475</a>         
<a name="476" href="#476">476</a>         <strong>private</strong> <strong>final</strong> <a href="../../../../org/apache/mina/protocol/ProtocolFilter.html">ProtocolFilter</a> filter;
<a name="477" href="#477">477</a> 
<a name="478" href="#478">478</a>         <strong>private</strong> <strong>final</strong> NextFilter nextFilter;
<a name="479" href="#479">479</a>         
<a name="480" href="#480">480</a>         <strong>private</strong> Entry( Entry prevEntry, Entry nextEntry,
<a name="481" href="#481">481</a>                        String name, <a href="../../../../org/apache/mina/protocol/ProtocolFilter.html">ProtocolFilter</a> filter )
<a name="482" href="#482">482</a>         {
<a name="483" href="#483">483</a>             <strong>if</strong>( filter == <strong>null</strong> )
<a name="484" href="#484">484</a>             {
<a name="485" href="#485">485</a>                 <strong>throw</strong> <strong>new</strong> NullPointerException( <span class="string">"filter"</span> );
<a name="486" href="#486">486</a>             }
<a name="487" href="#487">487</a>             <strong>if</strong>( name == <strong>null</strong> )
<a name="488" href="#488">488</a>             {
<a name="489" href="#489">489</a>                 <strong>throw</strong> <strong>new</strong> NullPointerException( <span class="string">"name"</span> );
<a name="490" href="#490">490</a>             }
<a name="491" href="#491">491</a>             
<a name="492" href="#492">492</a>             <strong>this</strong>.prevEntry = prevEntry;
<a name="493" href="#493">493</a>             <strong>this</strong>.nextEntry = nextEntry;
<a name="494" href="#494">494</a>             <strong>this</strong>.name = name;
<a name="495" href="#495">495</a>             <strong>this</strong>.filter = filter;
<a name="496" href="#496">496</a>             <strong>this</strong>.nextFilter = <strong>new</strong> NextFilter()
<a name="497" href="#497">497</a>             {
<a name="498" href="#498">498</a> 
<a name="499" href="#499">499</a>                 <strong>public</strong> <strong>void</strong> sessionOpened( ProtocolSession session )
<a name="500" href="#500">500</a>                 {
<a name="501" href="#501">501</a>                     Entry nextEntry = Entry.<strong>this</strong>.nextEntry;
<a name="502" href="#502">502</a>                     callNextSessionOpened( nextEntry, session );
<a name="503" href="#503">503</a>                 }
<a name="504" href="#504">504</a> 
<a name="505" href="#505">505</a>                 <strong>public</strong> <strong>void</strong> sessionClosed( ProtocolSession session )
<a name="506" href="#506">506</a>                 {
<a name="507" href="#507">507</a>                     Entry nextEntry = Entry.<strong>this</strong>.nextEntry;
<a name="508" href="#508">508</a>                     callNextSessionClosed( nextEntry, session );
<a name="509" href="#509">509</a>                 }
<a name="510" href="#510">510</a> 
<a name="511" href="#511">511</a>                 <strong>public</strong> <strong>void</strong> sessionIdle( ProtocolSession session, IdleStatus status )
<a name="512" href="#512">512</a>                 {
<a name="513" href="#513">513</a>                     Entry nextEntry = Entry.<strong>this</strong>.nextEntry;
<a name="514" href="#514">514</a>                     callNextSessionIdle( nextEntry, session, status );
<a name="515" href="#515">515</a>                 }
<a name="516" href="#516">516</a> 
<a name="517" href="#517">517</a>                 <strong>public</strong> <strong>void</strong> exceptionCaught( ProtocolSession session,
<a name="518" href="#518">518</a>                                             Throwable cause )
<a name="519" href="#519">519</a>                 {
<a name="520" href="#520">520</a>                     Entry nextEntry = Entry.<strong>this</strong>.nextEntry;
<a name="521" href="#521">521</a>                     callNextExceptionCaught( nextEntry, session, cause );
<a name="522" href="#522">522</a>                 }
<a name="523" href="#523">523</a> 
<a name="524" href="#524">524</a>                 <strong>public</strong> <strong>void</strong> messageReceived( ProtocolSession session, Object message )
<a name="525" href="#525">525</a>                 {
<a name="526" href="#526">526</a>                     Entry nextEntry = Entry.<strong>this</strong>.nextEntry;
<a name="527" href="#527">527</a>                     callNextMessageReceived( nextEntry, session, message );
<a name="528" href="#528">528</a>                 }
<a name="529" href="#529">529</a> 
<a name="530" href="#530">530</a>                 <strong>public</strong> <strong>void</strong> messageSent( ProtocolSession session, Object message )
<a name="531" href="#531">531</a>                 {
<a name="532" href="#532">532</a>                     Entry nextEntry = Entry.<strong>this</strong>.nextEntry;
<a name="533" href="#533">533</a>                     callNextMessageSent( nextEntry, session, message );
<a name="534" href="#534">534</a>                 }
<a name="535" href="#535">535</a>                 
<a name="536" href="#536">536</a>                 <strong>public</strong> <strong>void</strong> filterWrite( ProtocolSession session, Object message )
<a name="537" href="#537">537</a>                 {
<a name="538" href="#538">538</a>                     Entry nextEntry = Entry.<strong>this</strong>.prevEntry;
<a name="539" href="#539">539</a>                     callPreviousFilterWrite( nextEntry, session, message );
<a name="540" href="#540">540</a>                 }
<a name="541" href="#541">541</a>             };
<a name="542" href="#542">542</a>         }
<a name="543" href="#543">543</a>         
<a name="544" href="#544">544</a>         <strong>public</strong> String getName()
<a name="545" href="#545">545</a>         {
<a name="546" href="#546">546</a>             <strong>return</strong> name;
<a name="547" href="#547">547</a>         }
<a name="548" href="#548">548</a>         
<a name="549" href="#549">549</a>         <strong>public</strong> <a href="../../../../org/apache/mina/protocol/ProtocolFilter.html">ProtocolFilter</a> getFilter()
<a name="550" href="#550">550</a>         {
<a name="551" href="#551">551</a>             <strong>return</strong> filter;
<a name="552" href="#552">552</a>         }
<a name="553" href="#553">553</a>     }
<a name="554" href="#554">554</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

