<!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>SocketAcceptor xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../apidocs/org/apache/mina/io/socket/SocketAcceptor.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: SocketAcceptor.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/socket/package-summary.html">org.apache.mina.io.socket</a>;
<a name="20" href="#20">20</a>  
<a name="21" href="#21">21</a>  <strong>import</strong> java.io.IOException;
<a name="22" href="#22">22</a>  <strong>import</strong> java.net.InetSocketAddress;
<a name="23" href="#23">23</a>  <strong>import</strong> java.net.SocketAddress;
<a name="24" href="#24">24</a>  <strong>import</strong> java.nio.channels.SelectionKey;
<a name="25" href="#25">25</a>  <strong>import</strong> java.nio.channels.Selector;
<a name="26" href="#26">26</a>  <strong>import</strong> java.nio.channels.ServerSocketChannel;
<a name="27" href="#27">27</a>  <strong>import</strong> java.nio.channels.SocketChannel;
<a name="28" href="#28">28</a>  <strong>import</strong> java.util.HashMap;
<a name="29" href="#29">29</a>  <strong>import</strong> java.util.Iterator;
<a name="30" href="#30">30</a>  <strong>import</strong> java.util.Map;
<a name="31" href="#31">31</a>  <strong>import</strong> java.util.Set;
<a name="32" href="#32">32</a>  
<a name="33" href="#33">33</a>  <strong>import</strong> org.apache.mina.common.BaseSessionManager;
<a name="34" href="#34">34</a>  <strong>import</strong> org.apache.mina.io.IoAcceptor;
<a name="35" href="#35">35</a>  <strong>import</strong> org.apache.mina.io.IoFilterChain;
<a name="36" href="#36">36</a>  <strong>import</strong> org.apache.mina.io.IoHandler;
<a name="37" href="#37">37</a>  <strong>import</strong> org.apache.mina.io.IoSessionManagerFilterChain;
<a name="38" href="#38">38</a>  <strong>import</strong> org.apache.mina.util.Queue;
<a name="39" href="#39">39</a>  
<a name="40" href="#40">40</a>  <em>/**<em>*</em></em>
<a name="41" href="#41">41</a>  <em> * {@link IoAcceptor} for socket transport (TCP/IP).</em>
<a name="42" href="#42">42</a>  <em> * </em>
<a name="43" href="#43">43</a>  <em> * @author &lt;a href="<a href="mailto:dev@directory.apache.org" target="alexandria_uri">mailto:dev@directory.apache.org</a>">Apache Directory Project&lt;/a></em>
<a name="44" href="#44">44</a>  <em> * @version $Rev: 264677 $, $Date: 2005-08-30 11:44:35 +0900 $</em>
<a name="45" href="#45">45</a>  <em> */</em>
<a name="46" href="#46">46</a>  <strong>public</strong> <strong>class</strong> <a href="../../../../../org/apache/mina/io/socket/SocketAcceptor.html">SocketAcceptor</a> <strong>extends</strong> <a href="../../../../../org/apache/mina/common/BaseSessionManager.html">BaseSessionManager</a> implements <a href="../../../../../org/apache/mina/io/IoAcceptor.html">IoAcceptor</a>
<a name="47" href="#47">47</a>  {
<a name="48" href="#48">48</a>      <strong>private</strong> <strong>static</strong> <strong>volatile</strong> <strong>int</strong> nextId = 0;
<a name="49" href="#49">49</a>  
<a name="50" href="#50">50</a>      <strong>private</strong> <strong>final</strong> <a href="../../../../../org/apache/mina/io/IoSessionManagerFilterChain.html">IoSessionManagerFilterChain</a> filters = <strong>new</strong> <a href="../../../../../org/apache/mina/io/socket/SocketSessionManagerFilterChain.html">SocketSessionManagerFilterChain</a>( <strong>this</strong> );
<a name="51" href="#51">51</a>  
<a name="52" href="#52">52</a>      <strong>private</strong> <strong>final</strong> <strong>int</strong> id = nextId ++ ;
<a name="53" href="#53">53</a>  
<a name="54" href="#54">54</a>      <strong>private</strong> Selector selector;
<a name="55" href="#55">55</a>  
<a name="56" href="#56">56</a>      <strong>private</strong> <strong>final</strong> Map channels = <strong>new</strong> HashMap();
<a name="57" href="#57">57</a>  
<a name="58" href="#58">58</a>      <strong>private</strong> <strong>final</strong> <a href="../../../../../org/apache/mina/util/Queue.html">Queue</a> registerQueue = <strong>new</strong> <a href="../../../../../org/apache/mina/util/Queue.html">Queue</a>();
<a name="59" href="#59">59</a>  
<a name="60" href="#60">60</a>      <strong>private</strong> <strong>final</strong> <a href="../../../../../org/apache/mina/util/Queue.html">Queue</a> cancelQueue = <strong>new</strong> <a href="../../../../../org/apache/mina/util/Queue.html">Queue</a>();
<a name="61" href="#61">61</a>      
<a name="62" href="#62">62</a>      <strong>private</strong> <strong>int</strong> backlog = 50;
<a name="63" href="#63">63</a>  
<a name="64" href="#64">64</a>      <strong>private</strong> Worker worker;
<a name="65" href="#65">65</a>  
<a name="66" href="#66">66</a>  
<a name="67" href="#67">67</a>      <em>/**<em>*</em></em>
<a name="68" href="#68">68</a>  <em>     * Creates a new instance.</em>
<a name="69" href="#69">69</a>  <em>     */</em>
<a name="70" href="#70">70</a>      <strong>public</strong> <a href="../../../../../org/apache/mina/io/socket/SocketAcceptor.html">SocketAcceptor</a>()
<a name="71" href="#71">71</a>      {
<a name="72" href="#72">72</a>      }
<a name="73" href="#73">73</a>  
<a name="74" href="#74">74</a>      <em>/**<em>*</em></em>
<a name="75" href="#75">75</a>  <em>     * Binds to the specified &lt;code>address&lt;/code> and handles incoming</em>
<a name="76" href="#76">76</a>  <em>     * connections with the specified &lt;code>handler&lt;/code>.  Backlog value</em>
<a name="77" href="#77">77</a>  <em>     * is configured to the value of &lt;code>backlog&lt;/code> property.</em>
<a name="78" href="#78">78</a>  <em>     *</em>
<a name="79" href="#79">79</a>  <em>     * @throws IOException if failed to bind</em>
<a name="80" href="#80">80</a>  <em>     */</em>
<a name="81" href="#81">81</a>      <strong>public</strong> <strong>void</strong> bind( SocketAddress address, IoHandler handler ) throws IOException
<a name="82" href="#82">82</a>      {
<a name="83" href="#83">83</a>          <strong>if</strong>( address == <strong>null</strong> )
<a name="84" href="#84">84</a>          {
<a name="85" href="#85">85</a>              <strong>throw</strong> <strong>new</strong> NullPointerException( <span class="string">"address"</span> );
<a name="86" href="#86">86</a>          }
<a name="87" href="#87">87</a>  
<a name="88" href="#88">88</a>          <strong>if</strong>( handler == <strong>null</strong> )
<a name="89" href="#89">89</a>          {
<a name="90" href="#90">90</a>              <strong>throw</strong> <strong>new</strong> NullPointerException( <span class="string">"handler"</span> );
<a name="91" href="#91">91</a>          }
<a name="92" href="#92">92</a>  
<a name="93" href="#93">93</a>          <strong>if</strong>( !( address instanceof InetSocketAddress ) )
<a name="94" href="#94">94</a>          {
<a name="95" href="#95">95</a>              <strong>throw</strong> <strong>new</strong> IllegalArgumentException( <span class="string">"Unexpected address type: "</span> + address.getClass() );
<a name="96" href="#96">96</a>          }
<a name="97" href="#97">97</a>  
<a name="98" href="#98">98</a>          <strong>if</strong>( ( ( InetSocketAddress ) address ).getPort() == 0 )
<a name="99" href="#99">99</a>          {
<a name="100" href="#100">100</a>             <strong>throw</strong> <strong>new</strong> IllegalArgumentException( <span class="string">"Unsupported port number: 0"</span> );
<a name="101" href="#101">101</a>         }
<a name="102" href="#102">102</a>         
<a name="103" href="#103">103</a>         RegistrationRequest request = <strong>new</strong> RegistrationRequest( address, backlog, handler );
<a name="104" href="#104">104</a> 
<a name="105" href="#105">105</a>         <strong>synchronized</strong>( <strong>this</strong> )
<a name="106" href="#106">106</a>         {
<a name="107" href="#107">107</a>             <strong>synchronized</strong>( registerQueue )
<a name="108" href="#108">108</a>             {
<a name="109" href="#109">109</a>                 registerQueue.push( request );
<a name="110" href="#110">110</a>             }
<a name="111" href="#111">111</a>             startupWorker();
<a name="112" href="#112">112</a>         }
<a name="113" href="#113">113</a>         
<a name="114" href="#114">114</a>         selector.wakeup();
<a name="115" href="#115">115</a>         
<a name="116" href="#116">116</a>         <strong>synchronized</strong>( request )
<a name="117" href="#117">117</a>         {
<a name="118" href="#118">118</a>             <strong>while</strong>( !request.done )
<a name="119" href="#119">119</a>             {
<a name="120" href="#120">120</a>                 <strong>try</strong>
<a name="121" href="#121">121</a>                 {
<a name="122" href="#122">122</a>                     request.wait();
<a name="123" href="#123">123</a>                 }
<a name="124" href="#124">124</a>                 <strong>catch</strong>( InterruptedException e )
<a name="125" href="#125">125</a>                 {
<a name="126" href="#126">126</a>                 }
<a name="127" href="#127">127</a>             }
<a name="128" href="#128">128</a>         }
<a name="129" href="#129">129</a>         
<a name="130" href="#130">130</a>         <strong>if</strong>( request.exception != <strong>null</strong> )
<a name="131" href="#131">131</a>         {
<a name="132" href="#132">132</a>             <strong>throw</strong> request.exception;
<a name="133" href="#133">133</a>         }
<a name="134" href="#134">134</a>     }
<a name="135" href="#135">135</a> 
<a name="136" href="#136">136</a> 
<a name="137" href="#137">137</a>     <strong>private</strong> <strong>synchronized</strong> <strong>void</strong> startupWorker() throws IOException
<a name="138" href="#138">138</a>     {
<a name="139" href="#139">139</a>         <strong>if</strong>( worker == <strong>null</strong> )
<a name="140" href="#140">140</a>         {
<a name="141" href="#141">141</a>             selector = Selector.open();
<a name="142" href="#142">142</a>             worker = <strong>new</strong> Worker();
<a name="143" href="#143">143</a> 
<a name="144" href="#144">144</a>             worker.start();
<a name="145" href="#145">145</a>         }
<a name="146" href="#146">146</a>     }
<a name="147" href="#147">147</a> 
<a name="148" href="#148">148</a> 
<a name="149" href="#149">149</a>     <strong>public</strong> <strong>void</strong> unbind( SocketAddress address )
<a name="150" href="#150">150</a>     {
<a name="151" href="#151">151</a>         <strong>if</strong>( address == <strong>null</strong> )
<a name="152" href="#152">152</a>         {
<a name="153" href="#153">153</a>             <strong>throw</strong> <strong>new</strong> NullPointerException( <span class="string">"address"</span> );
<a name="154" href="#154">154</a>         }
<a name="155" href="#155">155</a> 
<a name="156" href="#156">156</a>         CancellationRequest request = <strong>new</strong> CancellationRequest( address );
<a name="157" href="#157">157</a>         <strong>synchronized</strong>( <strong>this</strong> )
<a name="158" href="#158">158</a>         {
<a name="159" href="#159">159</a>             <strong>try</strong>
<a name="160" href="#160">160</a>             {
<a name="161" href="#161">161</a>                 startupWorker();
<a name="162" href="#162">162</a>             }
<a name="163" href="#163">163</a>             <strong>catch</strong>( IOException e )
<a name="164" href="#164">164</a>             {
<a name="165" href="#165">165</a>                 <em class="comment">// IOException is thrown only when Worker thread is not</em>
<a name="166" href="#166">166</a>                 <em class="comment">// running and failed to open a selector.  We simply throw</em>
<a name="167" href="#167">167</a>                 <em class="comment">// IllegalArgumentException here because we can simply</em>
<a name="168" href="#168">168</a>                 <em class="comment">// conclude that nothing is bound to the selector.</em>
<a name="169" href="#169">169</a>                 <strong>throw</strong> <strong>new</strong> IllegalArgumentException( <span class="string">"Address not bound: "</span> + address );
<a name="170" href="#170">170</a>             }
<a name="171" href="#171">171</a> 
<a name="172" href="#172">172</a>             <strong>synchronized</strong>( cancelQueue )
<a name="173" href="#173">173</a>             {
<a name="174" href="#174">174</a>                 cancelQueue.push( request );
<a name="175" href="#175">175</a>             }
<a name="176" href="#176">176</a>         }
<a name="177" href="#177">177</a>         
<a name="178" href="#178">178</a>         selector.wakeup();
<a name="179" href="#179">179</a> 
<a name="180" href="#180">180</a>         <strong>synchronized</strong>( request )
<a name="181" href="#181">181</a>         {
<a name="182" href="#182">182</a>             <strong>while</strong>( !request.done )
<a name="183" href="#183">183</a>             {
<a name="184" href="#184">184</a>                 <strong>try</strong>
<a name="185" href="#185">185</a>                 {
<a name="186" href="#186">186</a>                     request.wait();
<a name="187" href="#187">187</a>                 }
<a name="188" href="#188">188</a>                 <strong>catch</strong>( InterruptedException e )
<a name="189" href="#189">189</a>                 {
<a name="190" href="#190">190</a>                 }
<a name="191" href="#191">191</a>             }
<a name="192" href="#192">192</a>         }
<a name="193" href="#193">193</a>         
<a name="194" href="#194">194</a>         <strong>if</strong>( request.exception != <strong>null</strong> )
<a name="195" href="#195">195</a>         {
<a name="196" href="#196">196</a>             request.exception.fillInStackTrace();
<a name="197" href="#197">197</a> 
<a name="198" href="#198">198</a>             <strong>throw</strong> request.exception;
<a name="199" href="#199">199</a>         }
<a name="200" href="#200">200</a>     }
<a name="201" href="#201">201</a>     
<a name="202" href="#202">202</a>     <em>/**<em>*</em></em>
<a name="203" href="#203">203</a> <em>     * Returns the default backlog value which is used when user binds. </em>
<a name="204" href="#204">204</a> <em>     */</em>
<a name="205" href="#205">205</a>     <strong>public</strong> <strong>int</strong> getBacklog()
<a name="206" href="#206">206</a>     {
<a name="207" href="#207">207</a>         <strong>return</strong> backlog;
<a name="208" href="#208">208</a>     }
<a name="209" href="#209">209</a>     
<a name="210" href="#210">210</a>     <em>/**<em>*</em></em>
<a name="211" href="#211">211</a> <em>     * Sets the default backlog value which is used when user binds. </em>
<a name="212" href="#212">212</a> <em>     */</em>
<a name="213" href="#213">213</a>     <strong>public</strong> <strong>void</strong> setBacklog( <strong>int</strong> defaultBacklog )
<a name="214" href="#214">214</a>     {
<a name="215" href="#215">215</a>         <strong>if</strong>( defaultBacklog &lt;= 0 )
<a name="216" href="#216">216</a>         {
<a name="217" href="#217">217</a>             <strong>throw</strong> <strong>new</strong> IllegalArgumentException( <span class="string">"defaultBacklog: "</span> + defaultBacklog );
<a name="218" href="#218">218</a>         }
<a name="219" href="#219">219</a>         <strong>this</strong>.backlog = defaultBacklog;
<a name="220" href="#220">220</a>     }
<a name="221" href="#221">221</a> 
<a name="222" href="#222">222</a> 
<a name="223" href="#223">223</a>     <strong>private</strong> <strong>class</strong> Worker <strong>extends</strong> Thread
<a name="224" href="#224">224</a>     {
<a name="225" href="#225">225</a>         <strong>public</strong> Worker()
<a name="226" href="#226">226</a>         {
<a name="227" href="#227">227</a>             <strong>super</strong>( <span class="string">"SocketAcceptor-"</span> + id );
<a name="228" href="#228">228</a>         }
<a name="229" href="#229">229</a> 
<a name="230" href="#230">230</a>         <strong>public</strong> <strong>void</strong> run()
<a name="231" href="#231">231</a>         {
<a name="232" href="#232">232</a>             <strong>for</strong>( ;; )
<a name="233" href="#233">233</a>             {
<a name="234" href="#234">234</a>                 <strong>try</strong>
<a name="235" href="#235">235</a>                 {
<a name="236" href="#236">236</a>                     <strong>int</strong> nKeys = selector.select();
<a name="237" href="#237">237</a> 
<a name="238" href="#238">238</a>                     registerNew();
<a name="239" href="#239">239</a>                     cancelKeys();
<a name="240" href="#240">240</a> 
<a name="241" href="#241">241</a>                     <strong>if</strong>( nKeys > 0 )
<a name="242" href="#242">242</a>                     {
<a name="243" href="#243">243</a>                         processSessions( selector.selectedKeys() );
<a name="244" href="#244">244</a>                     }
<a name="245" href="#245">245</a> 
<a name="246" href="#246">246</a>                     <strong>if</strong>( selector.keys().isEmpty() )
<a name="247" href="#247">247</a>                     {
<a name="248" href="#248">248</a>                         <strong>synchronized</strong>( SocketAcceptor.<strong>this</strong> )
<a name="249" href="#249">249</a>                         {
<a name="250" href="#250">250</a>                             <strong>if</strong>( selector.keys().isEmpty() &amp;&amp;
<a name="251" href="#251">251</a>                                 registerQueue.isEmpty() &amp;&amp;
<a name="252" href="#252">252</a>                                 cancelQueue.isEmpty() )
<a name="253" href="#253">253</a>                             {
<a name="254" href="#254">254</a>                                 worker = <strong>null</strong>;
<a name="255" href="#255">255</a>                                 <strong>try</strong>
<a name="256" href="#256">256</a>                                 {
<a name="257" href="#257">257</a>                                     selector.close();
<a name="258" href="#258">258</a>                                 }
<a name="259" href="#259">259</a>                                 <strong>catch</strong>( IOException e )
<a name="260" href="#260">260</a>                                 {
<a name="261" href="#261">261</a>                                     exceptionMonitor.exceptionCaught( SocketAcceptor.<strong>this</strong>, e );
<a name="262" href="#262">262</a>                                 }
<a name="263" href="#263">263</a>                                 <strong>finally</strong>
<a name="264" href="#264">264</a>                                 {
<a name="265" href="#265">265</a>                                     selector = <strong>null</strong>;
<a name="266" href="#266">266</a>                                 }
<a name="267" href="#267">267</a>                                 <strong>break</strong>;
<a name="268" href="#268">268</a>                             }
<a name="269" href="#269">269</a>                         }
<a name="270" href="#270">270</a>                     }
<a name="271" href="#271">271</a>                 }
<a name="272" href="#272">272</a>                 <strong>catch</strong>( IOException e )
<a name="273" href="#273">273</a>                 {
<a name="274" href="#274">274</a>                     exceptionMonitor.exceptionCaught( SocketAcceptor.<strong>this</strong>, e );
<a name="275" href="#275">275</a> 
<a name="276" href="#276">276</a>                     <strong>try</strong>
<a name="277" href="#277">277</a>                     {
<a name="278" href="#278">278</a>                         Thread.sleep( 1000 );
<a name="279" href="#279">279</a>                     }
<a name="280" href="#280">280</a>                     <strong>catch</strong>( InterruptedException e1 )
<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>             }
<a name="285" href="#285">285</a>         }
<a name="286" href="#286">286</a> 
<a name="287" href="#287">287</a>         <strong>private</strong> <strong>void</strong> processSessions( Set keys ) throws IOException
<a name="288" href="#288">288</a>         {
<a name="289" href="#289">289</a>             Iterator it = keys.iterator();
<a name="290" href="#290">290</a>             <strong>while</strong>( it.hasNext() )
<a name="291" href="#291">291</a>             {
<a name="292" href="#292">292</a>                 SelectionKey key = ( SelectionKey ) it.next();
<a name="293" href="#293">293</a>    
<a name="294" href="#294">294</a>                 it.remove();
<a name="295" href="#295">295</a>    
<a name="296" href="#296">296</a>                 <strong>if</strong>( !key.isAcceptable() )
<a name="297" href="#297">297</a>                 {
<a name="298" href="#298">298</a>                     <strong>continue</strong>;
<a name="299" href="#299">299</a>                 }
<a name="300" href="#300">300</a>    
<a name="301" href="#301">301</a>                 ServerSocketChannel ssc = ( ServerSocketChannel ) key.channel();
<a name="302" href="#302">302</a>    
<a name="303" href="#303">303</a>                 SocketChannel ch = ssc.accept();
<a name="304" href="#304">304</a>    
<a name="305" href="#305">305</a>                 <strong>if</strong>( ch == <strong>null</strong> )
<a name="306" href="#306">306</a>                 {
<a name="307" href="#307">307</a>                     <strong>continue</strong>;
<a name="308" href="#308">308</a>                 }
<a name="309" href="#309">309</a>    
<a name="310" href="#310">310</a>                 <strong>boolean</strong> success = false;
<a name="311" href="#311">311</a>                 <strong>try</strong>
<a name="312" href="#312">312</a>                 {
<a name="313" href="#313">313</a>                     RegistrationRequest req = ( RegistrationRequest ) key.attachment();
<a name="314" href="#314">314</a>                     <a href="../../../../../org/apache/mina/io/socket/SocketSession.html">SocketSession</a> session = <strong>new</strong> <a href="../../../../../org/apache/mina/io/socket/SocketSession.html">SocketSession</a>( filters, ch, req.handler );
<a name="315" href="#315">315</a>                     req.handler.sessionCreated( session );
<a name="316" href="#316">316</a>                     SocketIoProcessor.getInstance().addSession( session );
<a name="317" href="#317">317</a>                     success = <strong>true</strong>;
<a name="318" href="#318">318</a>                 }
<a name="319" href="#319">319</a>                 <strong>catch</strong>( Throwable t )
<a name="320" href="#320">320</a>                 {
<a name="321" href="#321">321</a>                     exceptionMonitor.exceptionCaught( SocketAcceptor.<strong>this</strong>, t );
<a name="322" href="#322">322</a>                 }
<a name="323" href="#323">323</a>                 <strong>finally</strong>
<a name="324" href="#324">324</a>                 {
<a name="325" href="#325">325</a>                     <strong>if</strong>( !success )
<a name="326" href="#326">326</a>                     {
<a name="327" href="#327">327</a>                         ch.close();
<a name="328" href="#328">328</a>                     }
<a name="329" href="#329">329</a>                 }
<a name="330" href="#330">330</a>             }
<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> 
<a name="335" href="#335">335</a>     <strong>private</strong> <strong>void</strong> registerNew()
<a name="336" href="#336">336</a>     {
<a name="337" href="#337">337</a>         <strong>if</strong>( registerQueue.isEmpty() )
<a name="338" href="#338">338</a>         {
<a name="339" href="#339">339</a>             <strong>return</strong>;
<a name="340" href="#340">340</a>         }
<a name="341" href="#341">341</a> 
<a name="342" href="#342">342</a>         <strong>for</strong>( ;; )
<a name="343" href="#343">343</a>         {
<a name="344" href="#344">344</a>             RegistrationRequest req;
<a name="345" href="#345">345</a> 
<a name="346" href="#346">346</a>             <strong>synchronized</strong>( registerQueue )
<a name="347" href="#347">347</a>             {
<a name="348" href="#348">348</a>                 req = ( RegistrationRequest ) registerQueue.pop();
<a name="349" href="#349">349</a>             }
<a name="350" href="#350">350</a> 
<a name="351" href="#351">351</a>             <strong>if</strong>( req == <strong>null</strong> )
<a name="352" href="#352">352</a>             {
<a name="353" href="#353">353</a>                 <strong>break</strong>;
<a name="354" href="#354">354</a>             }
<a name="355" href="#355">355</a> 
<a name="356" href="#356">356</a>             ServerSocketChannel ssc = <strong>null</strong>;
<a name="357" href="#357">357</a> 
<a name="358" href="#358">358</a>             <strong>try</strong>
<a name="359" href="#359">359</a>             {
<a name="360" href="#360">360</a>                 ssc = ServerSocketChannel.open();
<a name="361" href="#361">361</a>                 ssc.configureBlocking( false );
<a name="362" href="#362">362</a>                 ssc.socket().bind( req.address, req.backlog );
<a name="363" href="#363">363</a>                 ssc.register( selector, SelectionKey.OP_ACCEPT, req );
<a name="364" href="#364">364</a> 
<a name="365" href="#365">365</a>                 channels.put( req.address, ssc );
<a name="366" href="#366">366</a>             }
<a name="367" href="#367">367</a>             <strong>catch</strong>( IOException e )
<a name="368" href="#368">368</a>             {
<a name="369" href="#369">369</a>                 req.exception = e;
<a name="370" href="#370">370</a>             }
<a name="371" href="#371">371</a>             <strong>finally</strong>
<a name="372" href="#372">372</a>             {
<a name="373" href="#373">373</a>                 <strong>synchronized</strong>( req )
<a name="374" href="#374">374</a>                 {
<a name="375" href="#375">375</a>                     req.done = <strong>true</strong>;
<a name="376" href="#376">376</a> 
<a name="377" href="#377">377</a>                     req.notify();
<a name="378" href="#378">378</a>                 }
<a name="379" href="#379">379</a> 
<a name="380" href="#380">380</a>                 <strong>if</strong>( ssc != <strong>null</strong> &amp;&amp; req.exception != <strong>null</strong> )
<a name="381" href="#381">381</a>                 {
<a name="382" href="#382">382</a>                     <strong>try</strong>
<a name="383" href="#383">383</a>                     {
<a name="384" href="#384">384</a>                         ssc.close();
<a name="385" href="#385">385</a>                     }
<a name="386" href="#386">386</a>                     <strong>catch</strong>( IOException e )
<a name="387" href="#387">387</a>                     {
<a name="388" href="#388">388</a>                         exceptionMonitor.exceptionCaught( <strong>this</strong>, e );
<a name="389" href="#389">389</a>                     }
<a name="390" href="#390">390</a>                 }
<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> 
<a name="395" href="#395">395</a> 
<a name="396" href="#396">396</a>     <strong>private</strong> <strong>void</strong> cancelKeys()
<a name="397" href="#397">397</a>     {
<a name="398" href="#398">398</a>         <strong>if</strong>( cancelQueue.isEmpty() )
<a name="399" href="#399">399</a>         {
<a name="400" href="#400">400</a>             <strong>return</strong>;
<a name="401" href="#401">401</a>         }
<a name="402" href="#402">402</a> 
<a name="403" href="#403">403</a>         <strong>for</strong>( ;; )
<a name="404" href="#404">404</a>         {
<a name="405" href="#405">405</a>             CancellationRequest request;
<a name="406" href="#406">406</a> 
<a name="407" href="#407">407</a>             <strong>synchronized</strong>( cancelQueue )
<a name="408" href="#408">408</a>             {
<a name="409" href="#409">409</a>                 request = ( CancellationRequest ) cancelQueue.pop();
<a name="410" href="#410">410</a>             }
<a name="411" href="#411">411</a> 
<a name="412" href="#412">412</a>             <strong>if</strong>( request == <strong>null</strong> )
<a name="413" href="#413">413</a>             {
<a name="414" href="#414">414</a>                 <strong>break</strong>;
<a name="415" href="#415">415</a>             }
<a name="416" href="#416">416</a> 
<a name="417" href="#417">417</a>             ServerSocketChannel ssc = ( ServerSocketChannel ) channels.remove( request.address );
<a name="418" href="#418">418</a>             
<a name="419" href="#419">419</a>             <em class="comment">// close the channel</em>
<a name="420" href="#420">420</a>             <strong>try</strong>
<a name="421" href="#421">421</a>             {
<a name="422" href="#422">422</a>                 <strong>if</strong>( ssc == <strong>null</strong> )
<a name="423" href="#423">423</a>                 {
<a name="424" href="#424">424</a>                     request.exception = <strong>new</strong> IllegalArgumentException( <span class="string">"Address not bound: "</span> + request.address );
<a name="425" href="#425">425</a>                 }
<a name="426" href="#426">426</a>                 <strong>else</strong>
<a name="427" href="#427">427</a>                 {
<a name="428" href="#428">428</a>                     SelectionKey key = ssc.keyFor( selector );
<a name="429" href="#429">429</a> 
<a name="430" href="#430">430</a>                     key.cancel();
<a name="431" href="#431">431</a> 
<a name="432" href="#432">432</a>                     selector.wakeup(); <em class="comment">// wake up again to trigger thread death</em>
<a name="433" href="#433">433</a> 
<a name="434" href="#434">434</a>                     ssc.close();
<a name="435" href="#435">435</a>                 }
<a name="436" href="#436">436</a>             }
<a name="437" href="#437">437</a>             <strong>catch</strong>( IOException e )
<a name="438" href="#438">438</a>             {
<a name="439" href="#439">439</a>                 exceptionMonitor.exceptionCaught( <strong>this</strong>, e );
<a name="440" href="#440">440</a>             }
<a name="441" href="#441">441</a>             <strong>finally</strong>
<a name="442" href="#442">442</a>             {
<a name="443" href="#443">443</a>                 <strong>synchronized</strong>( request )
<a name="444" href="#444">444</a>                 {
<a name="445" href="#445">445</a>                     request.done = <strong>true</strong>;
<a name="446" href="#446">446</a> 
<a name="447" href="#447">447</a>                     request.notify();
<a name="448" href="#448">448</a>                 }
<a name="449" href="#449">449</a>             }
<a name="450" href="#450">450</a>         }
<a name="451" href="#451">451</a>     }
<a name="452" href="#452">452</a> 
<a name="453" href="#453">453</a>     <strong>public</strong> <a href="../../../../../org/apache/mina/io/IoFilterChain.html">IoFilterChain</a> getFilterChain()
<a name="454" href="#454">454</a>     {
<a name="455" href="#455">455</a>         <strong>return</strong> filters;
<a name="456" href="#456">456</a>     }
<a name="457" href="#457">457</a> 
<a name="458" href="#458">458</a>     <strong>private</strong> <strong>static</strong> <strong>class</strong> RegistrationRequest
<a name="459" href="#459">459</a>     {
<a name="460" href="#460">460</a>         <strong>private</strong> <strong>final</strong> SocketAddress address;
<a name="461" href="#461">461</a>         
<a name="462" href="#462">462</a>         <strong>private</strong> <strong>final</strong> <strong>int</strong> backlog;
<a name="463" href="#463">463</a> 
<a name="464" href="#464">464</a>         <strong>private</strong> <strong>final</strong> <a href="../../../../../org/apache/mina/io/IoHandler.html">IoHandler</a> handler;
<a name="465" href="#465">465</a>         
<a name="466" href="#466">466</a>         <strong>private</strong> IOException exception; 
<a name="467" href="#467">467</a>         
<a name="468" href="#468">468</a>         <strong>private</strong> <strong>boolean</strong> done;
<a name="469" href="#469">469</a>         
<a name="470" href="#470">470</a>         <strong>private</strong> RegistrationRequest( SocketAddress address, <strong>int</strong> backlog, IoHandler handler )
<a name="471" href="#471">471</a>         {
<a name="472" href="#472">472</a>             <strong>this</strong>.address = address;
<a name="473" href="#473">473</a>             <strong>this</strong>.backlog = backlog;
<a name="474" href="#474">474</a>             <strong>this</strong>.handler = handler;
<a name="475" href="#475">475</a>         }
<a name="476" href="#476">476</a>     }
<a name="477" href="#477">477</a> 
<a name="478" href="#478">478</a> 
<a name="479" href="#479">479</a>     <strong>private</strong> <strong>static</strong> <strong>class</strong> CancellationRequest
<a name="480" href="#480">480</a>     {
<a name="481" href="#481">481</a>         <strong>private</strong> <strong>final</strong> SocketAddress address;
<a name="482" href="#482">482</a> 
<a name="483" href="#483">483</a>         <strong>private</strong> <strong>boolean</strong> done;
<a name="484" href="#484">484</a> 
<a name="485" href="#485">485</a>         <strong>private</strong> RuntimeException exception;
<a name="486" href="#486">486</a>         
<a name="487" href="#487">487</a>         <strong>private</strong> CancellationRequest( SocketAddress address )
<a name="488" href="#488">488</a>         {
<a name="489" href="#489">489</a>             <strong>this</strong>.address = address;
<a name="490" href="#490">490</a>         }
<a name="491" href="#491">491</a>     }
<a name="492" href="#492">492</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

