<!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>CloseFuture xref</title>
<link type="text/css" rel="stylesheet" href="../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../apidocs/org/apache/mina/common/CloseFuture.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: CloseFuture.java 355016 2005-12-08 07:00:30Z 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/common/package-summary.html">org.apache.mina.common</a>;
<a name="20" href="#20">20</a>  
<a name="21" href="#21">21</a>  <em>/**<em>*</em></em>
<a name="22" href="#22">22</a>  <em> * An {@link IoFuture} for asynchronous close requests.</em>
<a name="23" href="#23">23</a>  <em> *</em>
<a name="24" href="#24">24</a>  <em> * &lt;h3>Example&lt;/h3></em>
<a name="25" href="#25">25</a>  <em> * &lt;pre></em>
<a name="26" href="#26">26</a>  <em> * IoSession session = ...;</em>
<a name="27" href="#27">27</a>  <em> * CloseFuture future = session.close();</em>
<a name="28" href="#28">28</a>  <em> * // Wait until the connection is closed</em>
<a name="29" href="#29">29</a>  <em> * future.join();</em>
<a name="30" href="#30">30</a>  <em> * // Now connection should be closed.</em>
<a name="31" href="#31">31</a>  <em> * assert future.isClosed();</em>
<a name="32" href="#32">32</a>  <em> * &lt;/pre></em>
<a name="33" href="#33">33</a>  <em> * </em>
<a name="34" href="#34">34</a>  <em> * @author The Apache Directory Project</em>
<a name="35" href="#35">35</a>  <em> * @version $Rev: 355016 $, $Date: 2005-12-08 16:00:30 +0900 (Thu, 08 Dec 2005) $</em>
<a name="36" href="#36">36</a>  <em> */</em>
<a name="37" href="#37">37</a>  <strong>public</strong> <strong>class</strong> <a href="../../../../org/apache/mina/common/CloseFuture.html">CloseFuture</a> <strong>extends</strong> <a href="../../../../org/apache/mina/common/IoFuture.html">IoFuture</a>
<a name="38" href="#38">38</a>  {
<a name="39" href="#39">39</a>      <em>/**<em>*</em></em>
<a name="40" href="#40">40</a>  <em>     * Creates a new instance.</em>
<a name="41" href="#41">41</a>  <em>     */</em>
<a name="42" href="#42">42</a>      <strong>public</strong> <a href="../../../../org/apache/mina/common/CloseFuture.html">CloseFuture</a>()
<a name="43" href="#43">43</a>      {
<a name="44" href="#44">44</a>      }
<a name="45" href="#45">45</a>      
<a name="46" href="#46">46</a>      <em>/**<em>*</em></em>
<a name="47" href="#47">47</a>  <em>     * Creates a new instance which uses the specified object as a lock.</em>
<a name="48" href="#48">48</a>  <em>     */</em>
<a name="49" href="#49">49</a>      <strong>public</strong> <a href="../../../../org/apache/mina/common/CloseFuture.html">CloseFuture</a>( Object lock )
<a name="50" href="#50">50</a>      {
<a name="51" href="#51">51</a>          <strong>super</strong>( lock );
<a name="52" href="#52">52</a>      }
<a name="53" href="#53">53</a>      
<a name="54" href="#54">54</a>      <em>/**<em>*</em></em>
<a name="55" href="#55">55</a>  <em>     * Returns &lt;tt>true&lt;/tt> if the close request is finished and the session is closed.</em>
<a name="56" href="#56">56</a>  <em>     */</em>
<a name="57" href="#57">57</a>      <strong>public</strong> <strong>boolean</strong> isClosed()
<a name="58" href="#58">58</a>      {
<a name="59" href="#59">59</a>          <strong>if</strong>( isReady() )
<a name="60" href="#60">60</a>          {
<a name="61" href="#61">61</a>              <strong>return</strong> ( ( Boolean ) getValue() ).booleanValue();
<a name="62" href="#62">62</a>          }
<a name="63" href="#63">63</a>          <strong>else</strong>
<a name="64" href="#64">64</a>          {
<a name="65" href="#65">65</a>              <strong>return</strong> false;
<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>/**<em>*</em></em>
<a name="70" href="#70">70</a>  <em>     * This method is invoked by MINA internally.  Please do not call this method</em>
<a name="71" href="#71">71</a>  <em>     * directly.</em>
<a name="72" href="#72">72</a>  <em>     */</em>
<a name="73" href="#73">73</a>      <strong>public</strong> <strong>void</strong> setClosed()
<a name="74" href="#74">74</a>      {
<a name="75" href="#75">75</a>          setValue( Boolean.TRUE );
<a name="76" href="#76">76</a>      }
<a name="77" href="#77">77</a>  }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

