<!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>VmPipeIdleStatusChecker xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../apidocs/org/apache/mina/protocol/vmpipe/VmPipeIdleStatusChecker.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: VmPipeIdleStatusChecker.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>   <strong>package</strong> <a href="../../../../../org/apache/mina/protocol/vmpipe/package-summary.html">org.apache.mina.protocol.vmpipe</a>;
<a name="5" href="#5">5</a>   
<a name="6" href="#6">6</a>   <strong>import</strong> java.util.IdentityHashMap;
<a name="7" href="#7">7</a>   <strong>import</strong> java.util.Iterator;
<a name="8" href="#8">8</a>   <strong>import</strong> java.util.Map;
<a name="9" href="#9">9</a>   
<a name="10" href="#10">10</a>  <strong>import</strong> org.apache.mina.common.IdleStatus;
<a name="11" href="#11">11</a>  <strong>import</strong> org.apache.mina.common.SessionConfig;
<a name="12" href="#12">12</a>  
<a name="13" href="#13">13</a>  <em>/**<em>*</em></em>
<a name="14" href="#14">14</a>  <em> * Dectects idle sessions and fires &lt;tt>sessionIdle&lt;/tt> events to them. </em>
<a name="15" href="#15">15</a>  <em> * </em>
<a name="16" href="#16">16</a>  <em> * @author Trustin Lee (trustin@apache.org)</em>
<a name="17" href="#17">17</a>  <em> * @version $Rev: 210062 $, $Date: 2005-07-11 12:52:38 +0900 $</em>
<a name="18" href="#18">18</a>  <em> */</em>
<a name="19" href="#19">19</a>  <strong>class</strong> <a href="../../../../../org/apache/mina/protocol/vmpipe/VmPipeIdleStatusChecker.html">VmPipeIdleStatusChecker</a>
<a name="20" href="#20">20</a>  {
<a name="21" href="#21">21</a>      <strong>static</strong> <strong>final</strong> <a href="../../../../../org/apache/mina/protocol/vmpipe/VmPipeIdleStatusChecker.html">VmPipeIdleStatusChecker</a> INSTANCE = <strong>new</strong> <a href="../../../../../org/apache/mina/protocol/vmpipe/VmPipeIdleStatusChecker.html">VmPipeIdleStatusChecker</a>();
<a name="22" href="#22">22</a>  
<a name="23" href="#23">23</a>      <strong>private</strong> <strong>final</strong> Map sessions = <strong>new</strong> IdentityHashMap(); <em class="comment">// will use as a set</em>
<a name="24" href="#24">24</a>  
<a name="25" href="#25">25</a>      <strong>private</strong> <strong>final</strong> Worker worker = <strong>new</strong> Worker();
<a name="26" href="#26">26</a>  
<a name="27" href="#27">27</a>      <strong>private</strong> <a href="../../../../../org/apache/mina/protocol/vmpipe/VmPipeIdleStatusChecker.html">VmPipeIdleStatusChecker</a>()
<a name="28" href="#28">28</a>      {
<a name="29" href="#29">29</a>          worker.start();
<a name="30" href="#30">30</a>      }
<a name="31" href="#31">31</a>  
<a name="32" href="#32">32</a>      <strong>void</strong> addSession( VmPipeSession session )
<a name="33" href="#33">33</a>      {
<a name="34" href="#34">34</a>          <strong>synchronized</strong>( sessions )
<a name="35" href="#35">35</a>          {
<a name="36" href="#36">36</a>              sessions.put( session, session );
<a name="37" href="#37">37</a>          }
<a name="38" href="#38">38</a>      }
<a name="39" href="#39">39</a>  
<a name="40" href="#40">40</a>      <strong>private</strong> <strong>class</strong> Worker <strong>extends</strong> Thread
<a name="41" href="#41">41</a>      {
<a name="42" href="#42">42</a>          <strong>private</strong> Worker()
<a name="43" href="#43">43</a>          {
<a name="44" href="#44">44</a>              <strong>super</strong>( <span class="string">"VmPipeIdleStatusChecker"</span> );
<a name="45" href="#45">45</a>              setDaemon( <strong>true</strong> );
<a name="46" href="#46">46</a>          }
<a name="47" href="#47">47</a>  
<a name="48" href="#48">48</a>          <strong>public</strong> <strong>void</strong> run()
<a name="49" href="#49">49</a>          {
<a name="50" href="#50">50</a>              <strong>for</strong>( ;; )
<a name="51" href="#51">51</a>              {
<a name="52" href="#52">52</a>                  <strong>try</strong>
<a name="53" href="#53">53</a>                  {
<a name="54" href="#54">54</a>                      Thread.sleep( 1000 );
<a name="55" href="#55">55</a>                  }
<a name="56" href="#56">56</a>                  <strong>catch</strong>( InterruptedException e )
<a name="57" href="#57">57</a>                  {
<a name="58" href="#58">58</a>                  }
<a name="59" href="#59">59</a>  
<a name="60" href="#60">60</a>                  <strong>long</strong> currentTime = System.currentTimeMillis();
<a name="61" href="#61">61</a>  
<a name="62" href="#62">62</a>                  <strong>synchronized</strong>( sessions )
<a name="63" href="#63">63</a>                  {
<a name="64" href="#64">64</a>                      Iterator it = sessions.keySet().iterator();
<a name="65" href="#65">65</a>                      <strong>while</strong>( it.hasNext() )
<a name="66" href="#66">66</a>                      {
<a name="67" href="#67">67</a>                          <a href="../../../../../org/apache/mina/protocol/vmpipe/VmPipeSession.html">VmPipeSession</a> session = ( VmPipeSession ) it.next();
<a name="68" href="#68">68</a>                          <strong>if</strong>( !session.isConnected() )
<a name="69" href="#69">69</a>                          {
<a name="70" href="#70">70</a>                              it.remove();
<a name="71" href="#71">71</a>                          }
<a name="72" href="#72">72</a>                          <strong>else</strong>
<a name="73" href="#73">73</a>                          {
<a name="74" href="#74">74</a>                              <strong>long</strong> idleTime;
<a name="75" href="#75">75</a>                              <a href="../../../../../org/apache/mina/common/SessionConfig.html">SessionConfig</a> config = session.getConfig();
<a name="76" href="#76">76</a>  
<a name="77" href="#77">77</a>                              <strong>if</strong>( !session.isIdle( IdleStatus.BOTH_IDLE ) )
<a name="78" href="#78">78</a>                              {
<a name="79" href="#79">79</a>                                  idleTime = config
<a name="80" href="#80">80</a>                                          .getIdleTimeInMillis( IdleStatus.BOTH_IDLE );
<a name="81" href="#81">81</a>                                  session.setIdle( IdleStatus.BOTH_IDLE,
<a name="82" href="#82">82</a>                                                   idleTime > 0L
<a name="83" href="#83">83</a>                                                   &amp;&amp; ( currentTime - session.getLastIoTime() ) > idleTime );
<a name="84" href="#84">84</a>                                  <strong>if</strong>( session.isIdle( IdleStatus.BOTH_IDLE ) )
<a name="85" href="#85">85</a>                                      session.getManagerFilterChain()
<a name="86" href="#86">86</a>                                              .sessionIdle( session,
<a name="87" href="#87">87</a>                                                            IdleStatus.BOTH_IDLE );
<a name="88" href="#88">88</a>                              }
<a name="89" href="#89">89</a>  
<a name="90" href="#90">90</a>                              <strong>if</strong>( !session.isIdle( IdleStatus.READER_IDLE ) )
<a name="91" href="#91">91</a>                              {
<a name="92" href="#92">92</a>                                  idleTime = config
<a name="93" href="#93">93</a>                                          .getIdleTimeInMillis( IdleStatus.READER_IDLE );
<a name="94" href="#94">94</a>                                  session.setIdle( IdleStatus.READER_IDLE,
<a name="95" href="#95">95</a>                                                   idleTime > 0L
<a name="96" href="#96">96</a>                                                   &amp;&amp; ( currentTime - session.getLastReadTime() ) > idleTime );
<a name="97" href="#97">97</a>                                  <strong>if</strong>( session.isIdle( IdleStatus.READER_IDLE ) )
<a name="98" href="#98">98</a>                                      session.getManagerFilterChain()
<a name="99" href="#99">99</a>                                              .sessionIdle( session,
<a name="100" href="#100">100</a>                                                           IdleStatus.READER_IDLE );
<a name="101" href="#101">101</a>                             }
<a name="102" href="#102">102</a> 
<a name="103" href="#103">103</a>                             <strong>if</strong>( !session.isIdle( IdleStatus.WRITER_IDLE ) )
<a name="104" href="#104">104</a>                             {
<a name="105" href="#105">105</a>                                 idleTime = config
<a name="106" href="#106">106</a>                                         .getIdleTimeInMillis( IdleStatus.WRITER_IDLE );
<a name="107" href="#107">107</a>                                 session.setIdle( IdleStatus.WRITER_IDLE,
<a name="108" href="#108">108</a>                                                  idleTime > 0L
<a name="109" href="#109">109</a>                                                  &amp;&amp; ( currentTime - session.getLastWriteTime() ) > idleTime );
<a name="110" href="#110">110</a>                                 <strong>if</strong>( session.isIdle( IdleStatus.WRITER_IDLE ) )
<a name="111" href="#111">111</a>                                     session.getManagerFilterChain()
<a name="112" href="#112">112</a>                                             .sessionIdle( session,
<a name="113" href="#113">113</a>                                                           IdleStatus.WRITER_IDLE );
<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>             }
<a name="119" href="#119">119</a>         }
<a name="120" href="#120">120</a>     }
<a name="121" href="#121">121</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

