<!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>AbstractBindTest xref</title>
<link type="text/css" rel="stylesheet" href="../../../../stylesheet.css" />
</head>
<body>
<pre>

<a name="1" href="#1">1</a>   <em class="comment">/*</em>
<a name="2" href="#2">2</a>   <em class="comment"> *   @(#) $Id: AbstractBindTest.java 210062 2005-07-11 03:52:38Z 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.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.util.Date;
<a name="24" href="#24">24</a>  
<a name="25" href="#25">25</a>  <strong>import</strong> junit.framework.Assert;
<a name="26" href="#26">26</a>  <strong>import</strong> junit.framework.TestCase;
<a name="27" href="#27">27</a>  
<a name="28" href="#28">28</a>  <strong>import</strong> org.apache.mina.examples.echoserver.EchoProtocolHandler;
<a name="29" href="#29">29</a>  
<a name="30" href="#30">30</a>  <em>/**<em>*</em></em>
<a name="31" href="#31">31</a>  <em> * Tests {@link IoAcceptor} resource leakage by repeating bind and unbind.</em>
<a name="32" href="#32">32</a>  <em> * </em>
<a name="33" href="#33">33</a>  <em> * @author Trustin Lee (trustin@apache.org)</em>
<a name="34" href="#34">34</a>  <em> * @version $Rev: 210062 $, $Date: 2005-07-11 12:52:38 +0900 $ </em>
<a name="35" href="#35">35</a>  <em> */</em>
<a name="36" href="#36">36</a>  <strong>public</strong> <strong>class</strong> <a href="../../../../org/apache/mina/io/AbstractBindTest.html">AbstractBindTest</a> <strong>extends</strong> TestCase
<a name="37" href="#37">37</a>  {
<a name="38" href="#38">38</a>      <strong>protected</strong> <strong>final</strong> IoAcceptor acceptor;
<a name="39" href="#39">39</a>      <strong>protected</strong> <strong>int</strong> port;
<a name="40" href="#40">40</a>  
<a name="41" href="#41">41</a>      <strong>public</strong> <a href="../../../../org/apache/mina/io/AbstractBindTest.html">AbstractBindTest</a>( IoAcceptor acceptor )
<a name="42" href="#42">42</a>      {
<a name="43" href="#43">43</a>          <strong>this</strong>.acceptor = acceptor;
<a name="44" href="#44">44</a>      }
<a name="45" href="#45">45</a>      
<a name="46" href="#46">46</a>      <strong>public</strong> <strong>void</strong> setUp() throws IOException
<a name="47" href="#47">47</a>      {
<a name="48" href="#48">48</a>          <em class="comment">// Find an availble test port and bind to it.</em>
<a name="49" href="#49">49</a>          <strong>boolean</strong> socketBound = false;
<a name="50" href="#50">50</a>  
<a name="51" href="#51">51</a>          <em class="comment">// Let's start from port #1 to detect possible resource leak</em>
<a name="52" href="#52">52</a>          <em class="comment">// because test will fail in port 1-1023 if user run this test</em>
<a name="53" href="#53">53</a>          <em class="comment">// as a normal user.</em>
<a name="54" href="#54">54</a>          <strong>for</strong>( port = 1; port &lt;= 65535; port ++ )
<a name="55" href="#55">55</a>          {
<a name="56" href="#56">56</a>              socketBound = false;
<a name="57" href="#57">57</a>              <strong>try</strong>
<a name="58" href="#58">58</a>              {
<a name="59" href="#59">59</a>                  acceptor.bind( <strong>new</strong> InetSocketAddress( port ),
<a name="60" href="#60">60</a>                          <strong>new</strong> EchoProtocolHandler() );
<a name="61" href="#61">61</a>                  socketBound = <strong>true</strong>;
<a name="62" href="#62">62</a>                  <strong>break</strong>;
<a name="63" href="#63">63</a>              }
<a name="64" href="#64">64</a>              <strong>catch</strong>( IOException e )
<a name="65" href="#65">65</a>              {
<a name="66" href="#66">66</a>              }
<a name="67" href="#67">67</a>          }
<a name="68" href="#68">68</a>  
<a name="69" href="#69">69</a>          <em class="comment">// If there is no port available, test fails.</em>
<a name="70" href="#70">70</a>          <strong>if</strong>( !socketBound )
<a name="71" href="#71">71</a>          {
<a name="72" href="#72">72</a>              <strong>throw</strong> <strong>new</strong> IOException( <span class="string">"Cannot bind any test port."</span> );
<a name="73" href="#73">73</a>          }
<a name="74" href="#74">74</a>  
<a name="75" href="#75">75</a>          <em class="comment">//System.out.println( "Using port " + port + " for testing." );</em>
<a name="76" href="#76">76</a>      }
<a name="77" href="#77">77</a>      
<a name="78" href="#78">78</a>      <strong>public</strong> <strong>void</strong> tearDown()
<a name="79" href="#79">79</a>      {
<a name="80" href="#80">80</a>          <strong>try</strong>
<a name="81" href="#81">81</a>          {
<a name="82" href="#82">82</a>              acceptor.unbind( <strong>new</strong> InetSocketAddress( port ) );
<a name="83" href="#83">83</a>          }
<a name="84" href="#84">84</a>          <strong>catch</strong>( Exception e )
<a name="85" href="#85">85</a>          {
<a name="86" href="#86">86</a>              <em class="comment">// ignore</em>
<a name="87" href="#87">87</a>          }
<a name="88" href="#88">88</a>      }
<a name="89" href="#89">89</a>      
<a name="90" href="#90">90</a>      <strong>public</strong> <strong>void</strong> testDuplicateBind()
<a name="91" href="#91">91</a>      {
<a name="92" href="#92">92</a>          <strong>try</strong>
<a name="93" href="#93">93</a>          {
<a name="94" href="#94">94</a>              acceptor.bind( <strong>new</strong> InetSocketAddress( port ), <strong>new</strong> EchoProtocolHandler() );
<a name="95" href="#95">95</a>              Assert.fail( <span class="string">"IOException is not thrown"</span> );
<a name="96" href="#96">96</a>          }
<a name="97" href="#97">97</a>          <strong>catch</strong>( IOException e )
<a name="98" href="#98">98</a>          {
<a name="99" href="#99">99</a>          }
<a name="100" href="#100">100</a>     }
<a name="101" href="#101">101</a> 
<a name="102" href="#102">102</a>     <strong>public</strong> <strong>void</strong> testDuplicateUnbind()
<a name="103" href="#103">103</a>     {
<a name="104" href="#104">104</a>         <em class="comment">// this should succeed</em>
<a name="105" href="#105">105</a>         acceptor.unbind( <strong>new</strong> InetSocketAddress( port ) );
<a name="106" href="#106">106</a>         
<a name="107" href="#107">107</a>         <strong>try</strong>
<a name="108" href="#108">108</a>         {
<a name="109" href="#109">109</a>             <em class="comment">// this should fail</em>
<a name="110" href="#110">110</a>             acceptor.unbind( <strong>new</strong> InetSocketAddress( port ) );
<a name="111" href="#111">111</a>             Assert.fail( <span class="string">"Exception is not thrown"</span> );
<a name="112" href="#112">112</a>         }
<a name="113" href="#113">113</a>         <strong>catch</strong>( Exception e )
<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>     
<a name="118" href="#118">118</a>     <strong>public</strong> <strong>void</strong> testManyTimes() throws IOException
<a name="119" href="#119">119</a>     {
<a name="120" href="#120">120</a>         InetSocketAddress addr = <strong>new</strong> InetSocketAddress( port );
<a name="121" href="#121">121</a>         EchoProtocolHandler handler = <strong>new</strong> EchoProtocolHandler();
<a name="122" href="#122">122</a>         <strong>for</strong>( <strong>int</strong> i = 0; i &lt; 1024; i++ ) 
<a name="123" href="#123">123</a>         {
<a name="124" href="#124">124</a>             acceptor.unbind( addr );
<a name="125" href="#125">125</a>             acceptor.bind( addr, handler );
<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>     <strong>public</strong> <strong>void</strong> _testRegressively() throws IOException
<a name="130" href="#130">130</a>     {
<a name="131" href="#131">131</a>         tearDown();
<a name="132" href="#132">132</a> 
<a name="133" href="#133">133</a>         InetSocketAddress addr = <strong>new</strong> InetSocketAddress( port );
<a name="134" href="#134">134</a>         EchoProtocolHandler handler = <strong>new</strong> EchoProtocolHandler();
<a name="135" href="#135">135</a>         <strong>for</strong>( <strong>int</strong> i = 0; i &lt; 1048576; i++ )
<a name="136" href="#136">136</a>         {
<a name="137" href="#137">137</a>             acceptor.bind( addr, handler );
<a name="138" href="#138">138</a>             testDuplicateBind();
<a name="139" href="#139">139</a>             testDuplicateUnbind();
<a name="140" href="#140">140</a>             <strong>if</strong>( i % 100 == 0 )
<a name="141" href="#141">141</a>             {
<a name="142" href="#142">142</a>                 System.out.println( i + <span class="string">" ("</span> + <strong>new</strong> Date() + <span class="string">")"</span> );
<a name="143" href="#143">143</a>             }
<a name="144" href="#144">144</a>         }
<a name="145" href="#145">145</a>         setUp();
<a name="146" href="#146">146</a>     }
<a name="147" href="#147">147</a> 
<a name="148" href="#148">148</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

