<!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>IoProtocolAcceptor xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../apidocs/org/apache/mina/protocol/io/IoProtocolAcceptor.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: IoProtocolAcceptor.java 332218 2005-11-10 03:52:42Z trustin $</em>
<a name="3" href="#3">3</a>   <em class="comment"> */</em>
<a name="4" href="#4">4</a>   <strong>package</strong> <a href="../../../../../org/apache/mina/protocol/io/package-summary.html">org.apache.mina.protocol.io</a>;
<a name="5" href="#5">5</a>   
<a name="6" href="#6">6</a>   <strong>import</strong> java.io.IOException;
<a name="7" href="#7">7</a>   <strong>import</strong> java.net.SocketAddress;
<a name="8" href="#8">8</a>   
<a name="9" href="#9">9</a>   <strong>import</strong> org.apache.mina.common.ExceptionMonitor;
<a name="10" href="#10">10</a>  <strong>import</strong> org.apache.mina.io.IoAcceptor;
<a name="11" href="#11">11</a>  <strong>import</strong> org.apache.mina.io.IoSession;
<a name="12" href="#12">12</a>  <strong>import</strong> org.apache.mina.protocol.ProtocolAcceptor;
<a name="13" href="#13">13</a>  <strong>import</strong> org.apache.mina.protocol.ProtocolFilterChain;
<a name="14" href="#14">14</a>  <strong>import</strong> org.apache.mina.protocol.ProtocolProvider;
<a name="15" href="#15">15</a>  <strong>import</strong> org.apache.mina.protocol.ProtocolSession;
<a name="16" href="#16">16</a>  
<a name="17" href="#17">17</a>  <em>/**<em>*</em></em>
<a name="18" href="#18">18</a>  <em> * A {@link ProtocolAcceptor} which wraps {@link IoAcceptor} to provide</em>
<a name="19" href="#19">19</a>  <em> * low-level I/O.</em>
<a name="20" href="#20">20</a>  <em> * &lt;p></em>
<a name="21" href="#21">21</a>  <em> * Please note that the user-defined attributes of {@link ProtocolSession}</em>
<a name="22" href="#22">22</a>  <em> * and its wrapping {@link IoSession} are shared.</em>
<a name="23" href="#23">23</a>  <em> * </em>
<a name="24" href="#24">24</a>  <em> * @author The Apache Directory Project (dev@directory.apache.org)</em>
<a name="25" href="#25">25</a>  <em> * @version $Rev: 332218 $, $Date: 2005-11-10 12:52:42 +0900 $</em>
<a name="26" href="#26">26</a>  <em> */</em>
<a name="27" href="#27">27</a>  <strong>public</strong> <strong>class</strong> <a href="../../../../../org/apache/mina/protocol/io/IoProtocolAcceptor.html">IoProtocolAcceptor</a> implements <a href="../../../../../org/apache/mina/protocol/ProtocolAcceptor.html">ProtocolAcceptor</a>
<a name="28" href="#28">28</a>  {
<a name="29" href="#29">29</a>      <strong>private</strong> <strong>final</strong> <a href="../../../../../org/apache/mina/io/IoAcceptor.html">IoAcceptor</a> acceptor;
<a name="30" href="#30">30</a>  
<a name="31" href="#31">31</a>      <strong>private</strong> <strong>final</strong> <a href="../../../../../org/apache/mina/protocol/io/IoAdapter.html">IoAdapter</a> adapter = <strong>new</strong> <a href="../../../../../org/apache/mina/protocol/io/IoAdapter.html">IoAdapter</a>( <strong>new</strong> IoProtocolSessionManagerFilterChain( <strong>this</strong> ) );
<a name="32" href="#32">32</a>  
<a name="33" href="#33">33</a>      <em>/**<em>*</em></em>
<a name="34" href="#34">34</a>  <em>     * Creates a new instance with the specified {@link IoAcceptor}.</em>
<a name="35" href="#35">35</a>  <em>     */</em>
<a name="36" href="#36">36</a>      <strong>public</strong> <a href="../../../../../org/apache/mina/protocol/io/IoProtocolAcceptor.html">IoProtocolAcceptor</a>( IoAcceptor acceptor )
<a name="37" href="#37">37</a>      {
<a name="38" href="#38">38</a>          <strong>if</strong>( acceptor == <strong>null</strong> )
<a name="39" href="#39">39</a>              <strong>throw</strong> <strong>new</strong> NullPointerException( <span class="string">"acceptor"</span> );
<a name="40" href="#40">40</a>  
<a name="41" href="#41">41</a>          <strong>this</strong>.acceptor = acceptor;
<a name="42" href="#42">42</a>      }
<a name="43" href="#43">43</a>  
<a name="44" href="#44">44</a>      <em>/**<em>*</em></em>
<a name="45" href="#45">45</a>  <em>     * Returns the underlying {@link IoAcceptor} instance this acceptor is</em>
<a name="46" href="#46">46</a>  <em>     * wrapping.</em>
<a name="47" href="#47">47</a>  <em>     */</em>
<a name="48" href="#48">48</a>      <strong>public</strong> <a href="../../../../../org/apache/mina/io/IoAcceptor.html">IoAcceptor</a> getIoAcceptor()
<a name="49" href="#49">49</a>      {
<a name="50" href="#50">50</a>          <strong>return</strong> acceptor;
<a name="51" href="#51">51</a>      }
<a name="52" href="#52">52</a>  
<a name="53" href="#53">53</a>      <strong>public</strong> <strong>void</strong> bind( SocketAddress address, ProtocolProvider provider )
<a name="54" href="#54">54</a>              throws IOException
<a name="55" href="#55">55</a>      {
<a name="56" href="#56">56</a>          acceptor.bind( address, adapter.adapt( provider ) );
<a name="57" href="#57">57</a>      }
<a name="58" href="#58">58</a>      
<a name="59" href="#59">59</a>      <strong>public</strong> <strong>void</strong> unbind( SocketAddress address )
<a name="60" href="#60">60</a>      {
<a name="61" href="#61">61</a>          acceptor.unbind( address );
<a name="62" href="#62">62</a>      }
<a name="63" href="#63">63</a>      
<a name="64" href="#64">64</a>      <strong>public</strong> <a href="../../../../../org/apache/mina/protocol/ProtocolSession.html">ProtocolSession</a> newSession( SocketAddress remoteAddress, SocketAddress localAddress )
<a name="65" href="#65">65</a>      {
<a name="66" href="#66">66</a>          <strong>return</strong> adapter.toProtocolSession( acceptor.newSession( remoteAddress, localAddress ) );
<a name="67" href="#67">67</a>      }
<a name="68" href="#68">68</a>  
<a name="69" href="#69">69</a>      <strong>public</strong> <a href="../../../../../org/apache/mina/protocol/ProtocolFilterChain.html">ProtocolFilterChain</a> getFilterChain()
<a name="70" href="#70">70</a>      {
<a name="71" href="#71">71</a>          <strong>return</strong> adapter.getFilterChain();
<a name="72" href="#72">72</a>      }
<a name="73" href="#73">73</a>      
<a name="74" href="#74">74</a>      <strong>public</strong> <a href="../../../../../org/apache/mina/common/ExceptionMonitor.html">ExceptionMonitor</a> getExceptionMonitor()
<a name="75" href="#75">75</a>      {
<a name="76" href="#76">76</a>          <strong>return</strong> acceptor.getExceptionMonitor();
<a name="77" href="#77">77</a>      }
<a name="78" href="#78">78</a>  
<a name="79" href="#79">79</a>      <strong>public</strong> <strong>void</strong> setExceptionMonitor( ExceptionMonitor monitor )
<a name="80" href="#80">80</a>      {
<a name="81" href="#81">81</a>          acceptor.setExceptionMonitor( monitor );
<a name="82" href="#82">82</a>      }
<a name="83" href="#83">83</a>  }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

