<!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=UTF-8" />
<title>ExpiringMap xref</title>
<link type="text/css" rel="stylesheet" href="../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../apidocs/org/apache/mina/util/ExpiringMap.html">View Javadoc</a></div><pre>

<a name="1" href="#1">1</a>   <em class="jxr_comment">/*</em>
<a name="2" href="#2">2</a>   <em class="jxr_comment"> *  Licensed to the Apache Software Foundation (ASF) under one</em>
<a name="3" href="#3">3</a>   <em class="jxr_comment"> *  or more contributor license agreements.  See the NOTICE file</em>
<a name="4" href="#4">4</a>   <em class="jxr_comment"> *  distributed with this work for additional information</em>
<a name="5" href="#5">5</a>   <em class="jxr_comment"> *  regarding copyright ownership.  The ASF licenses this file</em>
<a name="6" href="#6">6</a>   <em class="jxr_comment"> *  to you under the Apache License, Version 2.0 (the</em>
<a name="7" href="#7">7</a>   <em class="jxr_comment"> *  "License"); you may not use this file except in compliance</em>
<a name="8" href="#8">8</a>   <em class="jxr_comment"> *  with the License.  You may obtain a copy of the License at</em>
<a name="9" href="#9">9</a>   <em class="jxr_comment"> *</em>
<a name="10" href="#10">10</a>  <em class="jxr_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="jxr_comment"> *</em>
<a name="12" href="#12">12</a>  <em class="jxr_comment"> *  Unless required by applicable law or agreed to in writing,</em>
<a name="13" href="#13">13</a>  <em class="jxr_comment"> *  software distributed under the License is distributed on an</em>
<a name="14" href="#14">14</a>  <em class="jxr_comment"> *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</em>
<a name="15" href="#15">15</a>  <em class="jxr_comment"> *  KIND, either express or implied.  See the License for the</em>
<a name="16" href="#16">16</a>  <em class="jxr_comment"> *  specific language governing permissions and limitations</em>
<a name="17" href="#17">17</a>  <em class="jxr_comment"> *  under the License.</em>
<a name="18" href="#18">18</a>  <em class="jxr_comment"> *</em>
<a name="19" href="#19">19</a>  <em class="jxr_comment"> */</em>
<a name="20" href="#20">20</a>  <strong class="jxr_keyword">package</strong> org.apache.mina.util;
<a name="21" href="#21">21</a>  
<a name="22" href="#22">22</a>  <strong class="jxr_keyword">import</strong> java.util.Collection;
<a name="23" href="#23">23</a>  <strong class="jxr_keyword">import</strong> java.util.Map;
<a name="24" href="#24">24</a>  <strong class="jxr_keyword">import</strong> java.util.Set;
<a name="25" href="#25">25</a>  <strong class="jxr_keyword">import</strong> java.util.concurrent.ConcurrentHashMap;
<a name="26" href="#26">26</a>  <strong class="jxr_keyword">import</strong> java.util.concurrent.CopyOnWriteArrayList;
<a name="27" href="#27">27</a>  <strong class="jxr_keyword">import</strong> java.util.concurrent.locks.ReadWriteLock;
<a name="28" href="#28">28</a>  <strong class="jxr_keyword">import</strong> java.util.concurrent.locks.ReentrantReadWriteLock;
<a name="29" href="#29">29</a>  
<a name="30" href="#30">30</a>  <em class="jxr_javadoccomment">/**</em>
<a name="31" href="#31">31</a>  <em class="jxr_javadoccomment"> * A map with expiration.  This class contains a worker thread that will </em>
<a name="32" href="#32">32</a>  <em class="jxr_javadoccomment"> * periodically check this class in order to determine if any objects </em>
<a name="33" href="#33">33</a>  <em class="jxr_javadoccomment"> * should be removed based on the provided time-to-live value.</em>
<a name="34" href="#34">34</a>  <em class="jxr_javadoccomment"> *</em>
<a name="35" href="#35">35</a>  <em class="jxr_javadoccomment"> * @author The Apache MINA Project (dev@mina.apache.org)</em>
<a name="36" href="#36">36</a>  <em class="jxr_javadoccomment"> * @version $Rev: 662890 $, $Date: 2008-06-03 23:14:21 +0200 (Tue, 03 Jun 2008) $</em>
<a name="37" href="#37">37</a>  <em class="jxr_javadoccomment"> */</em>
<a name="38" href="#38">38</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> ExpiringMap&lt;K, V&gt; implements Map&lt;K, V&gt; {
<a name="39" href="#39">39</a>      
<a name="40" href="#40">40</a>      <em class="jxr_javadoccomment">/**</em>
<a name="41" href="#41">41</a>  <em class="jxr_javadoccomment">     * The default value, 60</em>
<a name="42" href="#42">42</a>  <em class="jxr_javadoccomment">     */</em>
<a name="43" href="#43">43</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> DEFAULT_TIME_TO_LIVE = 60;
<a name="44" href="#44">44</a>  
<a name="45" href="#45">45</a>      <em class="jxr_javadoccomment">/**</em>
<a name="46" href="#46">46</a>  <em class="jxr_javadoccomment">     * The default value, 1</em>
<a name="47" href="#47">47</a>  <em class="jxr_javadoccomment">     */</em>
<a name="48" href="#48">48</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> DEFAULT_EXPIRATION_INTERVAL = 1;
<a name="49" href="#49">49</a>  
<a name="50" href="#50">50</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">volatile</strong> <strong class="jxr_keyword">int</strong> expirerCount = 1;
<a name="51" href="#51">51</a>  
<a name="52" href="#52">52</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> ConcurrentHashMap&lt;K, ExpiringObject&gt; delegate;
<a name="53" href="#53">53</a>  
<a name="54" href="#54">54</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> CopyOnWriteArrayList&lt;ExpirationListener&lt;V&gt;&gt; expirationListeners;
<a name="55" href="#55">55</a>  
<a name="56" href="#56">56</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <a href="../../../../org/apache/mina/util/ExpiringMap.html">Expirer</a> expirer;
<a name="57" href="#57">57</a>  
<a name="58" href="#58">58</a>      <em class="jxr_javadoccomment">/**</em>
<a name="59" href="#59">59</a>  <em class="jxr_javadoccomment">     * Creates a new instance of ExpiringMap using the default values </em>
<a name="60" href="#60">60</a>  <em class="jxr_javadoccomment">     * DEFAULT_TIME_TO_LIVE and DEFAULT_EXPIRATION_INTERVAL</em>
<a name="61" href="#61">61</a>  <em class="jxr_javadoccomment">     *</em>
<a name="62" href="#62">62</a>  <em class="jxr_javadoccomment">     */</em>
<a name="63" href="#63">63</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/mina/util/ExpiringMap.html">ExpiringMap</a>() {
<a name="64" href="#64">64</a>          <strong class="jxr_keyword">this</strong>(DEFAULT_TIME_TO_LIVE, DEFAULT_EXPIRATION_INTERVAL);
<a name="65" href="#65">65</a>      }
<a name="66" href="#66">66</a>  
<a name="67" href="#67">67</a>      <em class="jxr_javadoccomment">/**</em>
<a name="68" href="#68">68</a>  <em class="jxr_javadoccomment">     * Creates a new instance of ExpiringMap using the supplied </em>
<a name="69" href="#69">69</a>  <em class="jxr_javadoccomment">     * time-to-live value and the default value for DEFAULT_EXPIRATION_INTERVAL</em>
<a name="70" href="#70">70</a>  <em class="jxr_javadoccomment">     *</em>
<a name="71" href="#71">71</a>  <em class="jxr_javadoccomment">     * @param timeToLive</em>
<a name="72" href="#72">72</a>  <em class="jxr_javadoccomment">     *  The time-to-live value (seconds)</em>
<a name="73" href="#73">73</a>  <em class="jxr_javadoccomment">     */</em>
<a name="74" href="#74">74</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/mina/util/ExpiringMap.html">ExpiringMap</a>(<strong class="jxr_keyword">int</strong> timeToLive) {
<a name="75" href="#75">75</a>          <strong class="jxr_keyword">this</strong>(timeToLive, DEFAULT_EXPIRATION_INTERVAL);
<a name="76" href="#76">76</a>      }
<a name="77" href="#77">77</a>  
<a name="78" href="#78">78</a>      <em class="jxr_javadoccomment">/**</em>
<a name="79" href="#79">79</a>  <em class="jxr_javadoccomment">     * Creates a new instance of ExpiringMap using the supplied values and </em>
<a name="80" href="#80">80</a>  <em class="jxr_javadoccomment">     * a {@link ConcurrentHashMap} for the internal data structure.</em>
<a name="81" href="#81">81</a>  <em class="jxr_javadoccomment">     *</em>
<a name="82" href="#82">82</a>  <em class="jxr_javadoccomment">     * @param timeToLive</em>
<a name="83" href="#83">83</a>  <em class="jxr_javadoccomment">     *  The time-to-live value (seconds)</em>
<a name="84" href="#84">84</a>  <em class="jxr_javadoccomment">     * @param expirationInterval</em>
<a name="85" href="#85">85</a>  <em class="jxr_javadoccomment">     *  The time between checks to see if a value should be removed (seconds)</em>
<a name="86" href="#86">86</a>  <em class="jxr_javadoccomment">     */</em>
<a name="87" href="#87">87</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/mina/util/ExpiringMap.html">ExpiringMap</a>(<strong class="jxr_keyword">int</strong> timeToLive, <strong class="jxr_keyword">int</strong> expirationInterval) {
<a name="88" href="#88">88</a>          <strong class="jxr_keyword">this</strong>(<strong class="jxr_keyword">new</strong> ConcurrentHashMap&lt;K, ExpiringObject&gt;(),
<a name="89" href="#89">89</a>                  <strong class="jxr_keyword">new</strong> CopyOnWriteArrayList&lt;ExpirationListener&lt;V&gt;&gt;(), timeToLive,
<a name="90" href="#90">90</a>                  expirationInterval);
<a name="91" href="#91">91</a>      }
<a name="92" href="#92">92</a>  
<a name="93" href="#93">93</a>      <strong class="jxr_keyword">private</strong> <a href="../../../../org/apache/mina/util/ExpiringMap.html">ExpiringMap</a>(ConcurrentHashMap&lt;K, ExpiringObject&gt; delegate,
<a name="94" href="#94">94</a>              CopyOnWriteArrayList&lt;ExpirationListener&lt;V&gt;&gt; expirationListeners,
<a name="95" href="#95">95</a>              <strong class="jxr_keyword">int</strong> timeToLive, <strong class="jxr_keyword">int</strong> expirationInterval) {
<a name="96" href="#96">96</a>          <strong class="jxr_keyword">this</strong>.delegate = delegate;
<a name="97" href="#97">97</a>          <strong class="jxr_keyword">this</strong>.expirationListeners = expirationListeners;
<a name="98" href="#98">98</a>  
<a name="99" href="#99">99</a>          <strong class="jxr_keyword">this</strong>.expirer = <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/mina/util/ExpiringMap.html">Expirer</a>();
<a name="100" href="#100">100</a>         expirer.setTimeToLive(timeToLive);
<a name="101" href="#101">101</a>         expirer.setExpirationInterval(expirationInterval);
<a name="102" href="#102">102</a>     }
<a name="103" href="#103">103</a> 
<a name="104" href="#104">104</a>     <strong class="jxr_keyword">public</strong> V put(K key, V value) {
<a name="105" href="#105">105</a>         <a href="../../../../org/apache/mina/util/ExpiringMap.html">ExpiringObject</a> answer = delegate.put(key, <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/mina/util/ExpiringMap.html">ExpiringObject</a>(key,
<a name="106" href="#106">106</a>                 value, System.currentTimeMillis()));
<a name="107" href="#107">107</a>         <strong class="jxr_keyword">if</strong> (answer == <strong class="jxr_keyword">null</strong>) {
<a name="108" href="#108">108</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
<a name="109" href="#109">109</a>         }
<a name="110" href="#110">110</a> 
<a name="111" href="#111">111</a>         <strong class="jxr_keyword">return</strong> answer.getValue();
<a name="112" href="#112">112</a>     }
<a name="113" href="#113">113</a> 
<a name="114" href="#114">114</a>     <strong class="jxr_keyword">public</strong> V get(Object key) {
<a name="115" href="#115">115</a>         <a href="../../../../org/apache/mina/util/ExpiringMap.html">ExpiringObject</a> object = delegate.get(key);
<a name="116" href="#116">116</a> 
<a name="117" href="#117">117</a>         <strong class="jxr_keyword">if</strong> (object != <strong class="jxr_keyword">null</strong>) {
<a name="118" href="#118">118</a>             object.setLastAccessTime(System.currentTimeMillis());
<a name="119" href="#119">119</a> 
<a name="120" href="#120">120</a>             <strong class="jxr_keyword">return</strong> object.getValue();
<a name="121" href="#121">121</a>         }
<a name="122" href="#122">122</a> 
<a name="123" href="#123">123</a>         <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
<a name="124" href="#124">124</a>     }
<a name="125" href="#125">125</a> 
<a name="126" href="#126">126</a>     <strong class="jxr_keyword">public</strong> V remove(Object key) {
<a name="127" href="#127">127</a>         <a href="../../../../org/apache/mina/util/ExpiringMap.html">ExpiringObject</a> answer = delegate.remove(key);
<a name="128" href="#128">128</a>         <strong class="jxr_keyword">if</strong> (answer == <strong class="jxr_keyword">null</strong>) {
<a name="129" href="#129">129</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
<a name="130" href="#130">130</a>         }
<a name="131" href="#131">131</a> 
<a name="132" href="#132">132</a>         <strong class="jxr_keyword">return</strong> answer.getValue();
<a name="133" href="#133">133</a>     }
<a name="134" href="#134">134</a> 
<a name="135" href="#135">135</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> containsKey(Object key) {
<a name="136" href="#136">136</a>         <strong class="jxr_keyword">return</strong> delegate.containsKey(key);
<a name="137" href="#137">137</a>     }
<a name="138" href="#138">138</a> 
<a name="139" href="#139">139</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> containsValue(Object value) {
<a name="140" href="#140">140</a>         <strong class="jxr_keyword">return</strong> delegate.containsValue(value);
<a name="141" href="#141">141</a>     }
<a name="142" href="#142">142</a> 
<a name="143" href="#143">143</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> size() {
<a name="144" href="#144">144</a>         <strong class="jxr_keyword">return</strong> delegate.size();
<a name="145" href="#145">145</a>     }
<a name="146" href="#146">146</a> 
<a name="147" href="#147">147</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> isEmpty() {
<a name="148" href="#148">148</a>         <strong class="jxr_keyword">return</strong> delegate.isEmpty();
<a name="149" href="#149">149</a>     }
<a name="150" href="#150">150</a> 
<a name="151" href="#151">151</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> clear() {
<a name="152" href="#152">152</a>         delegate.clear();
<a name="153" href="#153">153</a>     }
<a name="154" href="#154">154</a> 
<a name="155" href="#155">155</a>     @Override
<a name="156" href="#156">156</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> hashCode() {
<a name="157" href="#157">157</a>         <strong class="jxr_keyword">return</strong> delegate.hashCode();
<a name="158" href="#158">158</a>     }
<a name="159" href="#159">159</a> 
<a name="160" href="#160">160</a>     <strong class="jxr_keyword">public</strong> Set&lt;K&gt; keySet() {
<a name="161" href="#161">161</a>         <strong class="jxr_keyword">return</strong> delegate.keySet();
<a name="162" href="#162">162</a>     }
<a name="163" href="#163">163</a> 
<a name="164" href="#164">164</a>     @Override
<a name="165" href="#165">165</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> equals(Object obj) {
<a name="166" href="#166">166</a>         <strong class="jxr_keyword">return</strong> delegate.equals(obj);
<a name="167" href="#167">167</a>     }
<a name="168" href="#168">168</a> 
<a name="169" href="#169">169</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> putAll(Map&lt;? <strong class="jxr_keyword">extends</strong> K, ? <strong class="jxr_keyword">extends</strong> V&gt; inMap) {
<a name="170" href="#170">170</a>         <strong class="jxr_keyword">for</strong> (Entry&lt;? <strong class="jxr_keyword">extends</strong> K, ? <strong class="jxr_keyword">extends</strong> V&gt; e : inMap.entrySet()) {
<a name="171" href="#171">171</a>             <strong class="jxr_keyword">this</strong>.put(e.getKey(), e.getValue());
<a name="172" href="#172">172</a>         }
<a name="173" href="#173">173</a>     }
<a name="174" href="#174">174</a> 
<a name="175" href="#175">175</a>     <strong class="jxr_keyword">public</strong> Collection&lt;V&gt; values() {
<a name="176" href="#176">176</a>         <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> UnsupportedOperationException();
<a name="177" href="#177">177</a>     }
<a name="178" href="#178">178</a> 
<a name="179" href="#179">179</a>     <strong class="jxr_keyword">public</strong> Set&lt;Map.Entry&lt;K, V&gt;&gt; entrySet() {
<a name="180" href="#180">180</a>         <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> UnsupportedOperationException();
<a name="181" href="#181">181</a>     }
<a name="182" href="#182">182</a> 
<a name="183" href="#183">183</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> addExpirationListener(ExpirationListener&lt;V&gt; listener) {
<a name="184" href="#184">184</a>         expirationListeners.add(listener);
<a name="185" href="#185">185</a>     }
<a name="186" href="#186">186</a> 
<a name="187" href="#187">187</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> removeExpirationListener(
<a name="188" href="#188">188</a>             ExpirationListener&lt;V&gt; listener) {
<a name="189" href="#189">189</a>         expirationListeners.remove(listener);
<a name="190" href="#190">190</a>     }
<a name="191" href="#191">191</a> 
<a name="192" href="#192">192</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/mina/util/ExpiringMap.html">Expirer</a> getExpirer() {
<a name="193" href="#193">193</a>         <strong class="jxr_keyword">return</strong> expirer;
<a name="194" href="#194">194</a>     }
<a name="195" href="#195">195</a> 
<a name="196" href="#196">196</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> getExpirationInterval() {
<a name="197" href="#197">197</a>         <strong class="jxr_keyword">return</strong> expirer.getExpirationInterval();
<a name="198" href="#198">198</a>     }
<a name="199" href="#199">199</a> 
<a name="200" href="#200">200</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> getTimeToLive() {
<a name="201" href="#201">201</a>         <strong class="jxr_keyword">return</strong> expirer.getTimeToLive();
<a name="202" href="#202">202</a>     }
<a name="203" href="#203">203</a> 
<a name="204" href="#204">204</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setExpirationInterval(<strong class="jxr_keyword">int</strong> expirationInterval) {
<a name="205" href="#205">205</a>         expirer.setExpirationInterval(expirationInterval);
<a name="206" href="#206">206</a>     }
<a name="207" href="#207">207</a> 
<a name="208" href="#208">208</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setTimeToLive(<strong class="jxr_keyword">int</strong> timeToLive) {
<a name="209" href="#209">209</a>         expirer.setTimeToLive(timeToLive);
<a name="210" href="#210">210</a>     }
<a name="211" href="#211">211</a> 
<a name="212" href="#212">212</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/mina/util/ExpiringMap.html">ExpiringObject</a> {
<a name="213" href="#213">213</a>         <strong class="jxr_keyword">private</strong> K key;
<a name="214" href="#214">214</a> 
<a name="215" href="#215">215</a>         <strong class="jxr_keyword">private</strong> V value;
<a name="216" href="#216">216</a> 
<a name="217" href="#217">217</a>         <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">long</strong> lastAccessTime;
<a name="218" href="#218">218</a> 
<a name="219" href="#219">219</a>         <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> ReadWriteLock lastAccessTimeLock = <strong class="jxr_keyword">new</strong> ReentrantReadWriteLock();
<a name="220" href="#220">220</a> 
<a name="221" href="#221">221</a>         <a href="../../../../org/apache/mina/util/ExpiringMap.html">ExpiringObject</a>(K key, V value, <strong class="jxr_keyword">long</strong> lastAccessTime) {
<a name="222" href="#222">222</a>             <strong class="jxr_keyword">if</strong> (value == <strong class="jxr_keyword">null</strong>) {
<a name="223" href="#223">223</a>                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> IllegalArgumentException(
<a name="224" href="#224">224</a>                         <span class="jxr_string">"An expiring object cannot be null."</span>);
<a name="225" href="#225">225</a>             }
<a name="226" href="#226">226</a> 
<a name="227" href="#227">227</a>             <strong class="jxr_keyword">this</strong>.key = key;
<a name="228" href="#228">228</a>             <strong class="jxr_keyword">this</strong>.value = value;
<a name="229" href="#229">229</a>             <strong class="jxr_keyword">this</strong>.lastAccessTime = lastAccessTime;
<a name="230" href="#230">230</a>         }
<a name="231" href="#231">231</a> 
<a name="232" href="#232">232</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">long</strong> getLastAccessTime() {
<a name="233" href="#233">233</a>             lastAccessTimeLock.readLock().lock();
<a name="234" href="#234">234</a> 
<a name="235" href="#235">235</a>             <strong class="jxr_keyword">try</strong> {
<a name="236" href="#236">236</a>                 <strong class="jxr_keyword">return</strong> lastAccessTime;
<a name="237" href="#237">237</a>             } <strong class="jxr_keyword">finally</strong> {
<a name="238" href="#238">238</a>                 lastAccessTimeLock.readLock().unlock();
<a name="239" href="#239">239</a>             }
<a name="240" href="#240">240</a>         }
<a name="241" href="#241">241</a> 
<a name="242" href="#242">242</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setLastAccessTime(<strong class="jxr_keyword">long</strong> lastAccessTime) {
<a name="243" href="#243">243</a>             lastAccessTimeLock.writeLock().lock();
<a name="244" href="#244">244</a> 
<a name="245" href="#245">245</a>             <strong class="jxr_keyword">try</strong> {
<a name="246" href="#246">246</a>                 <strong class="jxr_keyword">this</strong>.lastAccessTime = lastAccessTime;
<a name="247" href="#247">247</a>             } <strong class="jxr_keyword">finally</strong> {
<a name="248" href="#248">248</a>                 lastAccessTimeLock.writeLock().unlock();
<a name="249" href="#249">249</a>             }
<a name="250" href="#250">250</a>         }
<a name="251" href="#251">251</a> 
<a name="252" href="#252">252</a>         <strong class="jxr_keyword">public</strong> K getKey() {
<a name="253" href="#253">253</a>             <strong class="jxr_keyword">return</strong> key;
<a name="254" href="#254">254</a>         }
<a name="255" href="#255">255</a> 
<a name="256" href="#256">256</a>         <strong class="jxr_keyword">public</strong> V getValue() {
<a name="257" href="#257">257</a>             <strong class="jxr_keyword">return</strong> value;
<a name="258" href="#258">258</a>         }
<a name="259" href="#259">259</a> 
<a name="260" href="#260">260</a>         @Override
<a name="261" href="#261">261</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> equals(Object obj) {
<a name="262" href="#262">262</a>             <strong class="jxr_keyword">return</strong> value.equals(obj);
<a name="263" href="#263">263</a>         }
<a name="264" href="#264">264</a> 
<a name="265" href="#265">265</a>         @Override
<a name="266" href="#266">266</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> hashCode() {
<a name="267" href="#267">267</a>             <strong class="jxr_keyword">return</strong> value.hashCode();
<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>     <em class="jxr_javadoccomment">/**</em>
<a name="272" href="#272">272</a> <em class="jxr_javadoccomment">     * A Thread that monitors an {@link ExpiringMap} and will remove</em>
<a name="273" href="#273">273</a> <em class="jxr_javadoccomment">     * elements that have passed the threshold.</em>
<a name="274" href="#274">274</a> <em class="jxr_javadoccomment">     *</em>
<a name="275" href="#275">275</a> <em class="jxr_javadoccomment">     */</em> 
<a name="276" href="#276">276</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/mina/util/ExpiringMap.html">Expirer</a> implements Runnable {
<a name="277" href="#277">277</a>         <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> ReadWriteLock stateLock = <strong class="jxr_keyword">new</strong> ReentrantReadWriteLock();
<a name="278" href="#278">278</a> 
<a name="279" href="#279">279</a>         <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">long</strong> timeToLiveMillis;
<a name="280" href="#280">280</a> 
<a name="281" href="#281">281</a>         <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">long</strong> expirationIntervalMillis;
<a name="282" href="#282">282</a> 
<a name="283" href="#283">283</a>         <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">boolean</strong> running = false;
<a name="284" href="#284">284</a> 
<a name="285" href="#285">285</a>         <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> Thread expirerThread;
<a name="286" href="#286">286</a> 
<a name="287" href="#287">287</a>         <em class="jxr_javadoccomment">/**</em>
<a name="288" href="#288">288</a> <em class="jxr_javadoccomment">         * Creates a new instance of Expirer.  </em>
<a name="289" href="#289">289</a> <em class="jxr_javadoccomment">         *</em>
<a name="290" href="#290">290</a> <em class="jxr_javadoccomment">         */</em>
<a name="291" href="#291">291</a>         <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/mina/util/ExpiringMap.html">Expirer</a>() {
<a name="292" href="#292">292</a>             expirerThread = <strong class="jxr_keyword">new</strong> Thread(<strong class="jxr_keyword">this</strong>, <span class="jxr_string">"ExpiringMapExpirer-"</span>
<a name="293" href="#293">293</a>                     + expirerCount++);
<a name="294" href="#294">294</a>             expirerThread.setDaemon(<strong class="jxr_keyword">true</strong>);
<a name="295" href="#295">295</a>         }
<a name="296" href="#296">296</a> 
<a name="297" href="#297">297</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> run() {
<a name="298" href="#298">298</a>             <strong class="jxr_keyword">while</strong> (running) {
<a name="299" href="#299">299</a>                 processExpires();
<a name="300" href="#300">300</a> 
<a name="301" href="#301">301</a>                 <strong class="jxr_keyword">try</strong> {
<a name="302" href="#302">302</a>                     Thread.sleep(expirationIntervalMillis);
<a name="303" href="#303">303</a>                 } <strong class="jxr_keyword">catch</strong> (InterruptedException e) {
<a name="304" href="#304">304</a>                 }
<a name="305" href="#305">305</a>             }
<a name="306" href="#306">306</a>         }
<a name="307" href="#307">307</a> 
<a name="308" href="#308">308</a>         <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> processExpires() {
<a name="309" href="#309">309</a>             <strong class="jxr_keyword">long</strong> timeNow = System.currentTimeMillis();
<a name="310" href="#310">310</a> 
<a name="311" href="#311">311</a>             <strong class="jxr_keyword">for</strong> (ExpiringObject o : delegate.values()) {
<a name="312" href="#312">312</a> 
<a name="313" href="#313">313</a>                 <strong class="jxr_keyword">if</strong> (timeToLiveMillis &lt;= 0) {
<a name="314" href="#314">314</a>                     <strong class="jxr_keyword">continue</strong>;
<a name="315" href="#315">315</a>                 }
<a name="316" href="#316">316</a> 
<a name="317" href="#317">317</a>                 <strong class="jxr_keyword">long</strong> timeIdle = timeNow - o.getLastAccessTime();
<a name="318" href="#318">318</a> 
<a name="319" href="#319">319</a>                 <strong class="jxr_keyword">if</strong> (timeIdle &gt;= timeToLiveMillis) {
<a name="320" href="#320">320</a>                     delegate.remove(o.getKey());
<a name="321" href="#321">321</a> 
<a name="322" href="#322">322</a>                     <strong class="jxr_keyword">for</strong> (ExpirationListener&lt;V&gt; listener : expirationListeners) {
<a name="323" href="#323">323</a>                         listener.expired(o.getValue());
<a name="324" href="#324">324</a>                     }
<a name="325" href="#325">325</a>                 }
<a name="326" href="#326">326</a>             }
<a name="327" href="#327">327</a>         }
<a name="328" href="#328">328</a> 
<a name="329" href="#329">329</a>         <em class="jxr_javadoccomment">/**</em>
<a name="330" href="#330">330</a> <em class="jxr_javadoccomment">         * Kick off this thread which will look for old objects and remove them.</em>
<a name="331" href="#331">331</a> <em class="jxr_javadoccomment">         *</em>
<a name="332" href="#332">332</a> <em class="jxr_javadoccomment">         */</em>
<a name="333" href="#333">333</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> startExpiring() {
<a name="334" href="#334">334</a>             stateLock.writeLock().lock();
<a name="335" href="#335">335</a> 
<a name="336" href="#336">336</a>             <strong class="jxr_keyword">try</strong> {
<a name="337" href="#337">337</a>                 <strong class="jxr_keyword">if</strong> (!running) {
<a name="338" href="#338">338</a>                     running = <strong class="jxr_keyword">true</strong>;
<a name="339" href="#339">339</a>                     expirerThread.start();
<a name="340" href="#340">340</a>                 }
<a name="341" href="#341">341</a>             } <strong class="jxr_keyword">finally</strong> {
<a name="342" href="#342">342</a>                 stateLock.writeLock().unlock();
<a name="343" href="#343">343</a>             }
<a name="344" href="#344">344</a>         }
<a name="345" href="#345">345</a> 
<a name="346" href="#346">346</a>         <em class="jxr_javadoccomment">/**</em>
<a name="347" href="#347">347</a> <em class="jxr_javadoccomment">         * If this thread has not started, then start it.  </em>
<a name="348" href="#348">348</a> <em class="jxr_javadoccomment">         * Otherwise just return;</em>
<a name="349" href="#349">349</a> <em class="jxr_javadoccomment">         */</em>
<a name="350" href="#350">350</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> startExpiringIfNotStarted() {
<a name="351" href="#351">351</a>             stateLock.readLock().lock();
<a name="352" href="#352">352</a>             <strong class="jxr_keyword">try</strong> {
<a name="353" href="#353">353</a>                 <strong class="jxr_keyword">if</strong> (running) {
<a name="354" href="#354">354</a>                     <strong class="jxr_keyword">return</strong>;
<a name="355" href="#355">355</a>                 }
<a name="356" href="#356">356</a>             } <strong class="jxr_keyword">finally</strong> {
<a name="357" href="#357">357</a>                 stateLock.readLock().unlock();
<a name="358" href="#358">358</a>             }
<a name="359" href="#359">359</a> 
<a name="360" href="#360">360</a>             stateLock.writeLock().lock();
<a name="361" href="#361">361</a>             <strong class="jxr_keyword">try</strong> {
<a name="362" href="#362">362</a>                 <strong class="jxr_keyword">if</strong> (!running) {
<a name="363" href="#363">363</a>                     running = <strong class="jxr_keyword">true</strong>;
<a name="364" href="#364">364</a>                     expirerThread.start();
<a name="365" href="#365">365</a>                 }
<a name="366" href="#366">366</a>             } <strong class="jxr_keyword">finally</strong> {
<a name="367" href="#367">367</a>                 stateLock.writeLock().unlock();
<a name="368" href="#368">368</a>             }
<a name="369" href="#369">369</a>         }
<a name="370" href="#370">370</a> 
<a name="371" href="#371">371</a>         <em class="jxr_javadoccomment">/**</em>
<a name="372" href="#372">372</a> <em class="jxr_javadoccomment">         * Stop the thread from monitoring the map.</em>
<a name="373" href="#373">373</a> <em class="jxr_javadoccomment">         */</em>
<a name="374" href="#374">374</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> stopExpiring() {
<a name="375" href="#375">375</a>             stateLock.writeLock().lock();
<a name="376" href="#376">376</a> 
<a name="377" href="#377">377</a>             <strong class="jxr_keyword">try</strong> {
<a name="378" href="#378">378</a>                 <strong class="jxr_keyword">if</strong> (running) {
<a name="379" href="#379">379</a>                     running = false;
<a name="380" href="#380">380</a>                     expirerThread.interrupt();
<a name="381" href="#381">381</a>                 }
<a name="382" href="#382">382</a>             } <strong class="jxr_keyword">finally</strong> {
<a name="383" href="#383">383</a>                 stateLock.writeLock().unlock();
<a name="384" href="#384">384</a>             }
<a name="385" href="#385">385</a>         }
<a name="386" href="#386">386</a> 
<a name="387" href="#387">387</a>         <em class="jxr_javadoccomment">/**</em>
<a name="388" href="#388">388</a> <em class="jxr_javadoccomment">         * Checks to see if the thread is running</em>
<a name="389" href="#389">389</a> <em class="jxr_javadoccomment">         *</em>
<a name="390" href="#390">390</a> <em class="jxr_javadoccomment">         * @return</em>
<a name="391" href="#391">391</a> <em class="jxr_javadoccomment">         *  If the thread is running, true.  Otherwise false.</em>
<a name="392" href="#392">392</a> <em class="jxr_javadoccomment">         */</em>
<a name="393" href="#393">393</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> isRunning() {
<a name="394" href="#394">394</a>             stateLock.readLock().lock();
<a name="395" href="#395">395</a> 
<a name="396" href="#396">396</a>             <strong class="jxr_keyword">try</strong> {
<a name="397" href="#397">397</a>                 <strong class="jxr_keyword">return</strong> running;
<a name="398" href="#398">398</a>             } <strong class="jxr_keyword">finally</strong> {
<a name="399" href="#399">399</a>                 stateLock.readLock().unlock();
<a name="400" href="#400">400</a>             }
<a name="401" href="#401">401</a>         }
<a name="402" href="#402">402</a> 
<a name="403" href="#403">403</a>         <em class="jxr_javadoccomment">/**</em>
<a name="404" href="#404">404</a> <em class="jxr_javadoccomment">         * Returns the Time-to-live value.</em>
<a name="405" href="#405">405</a> <em class="jxr_javadoccomment">         *</em>
<a name="406" href="#406">406</a> <em class="jxr_javadoccomment">         * @return</em>
<a name="407" href="#407">407</a> <em class="jxr_javadoccomment">         *  The time-to-live (seconds)</em>
<a name="408" href="#408">408</a> <em class="jxr_javadoccomment">         */</em>
<a name="409" href="#409">409</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> getTimeToLive() {
<a name="410" href="#410">410</a>             stateLock.readLock().lock();
<a name="411" href="#411">411</a> 
<a name="412" href="#412">412</a>             <strong class="jxr_keyword">try</strong> {
<a name="413" href="#413">413</a>                 <strong class="jxr_keyword">return</strong> (<strong class="jxr_keyword">int</strong>) timeToLiveMillis / 1000;
<a name="414" href="#414">414</a>             } <strong class="jxr_keyword">finally</strong> {
<a name="415" href="#415">415</a>                 stateLock.readLock().unlock();
<a name="416" href="#416">416</a>             }
<a name="417" href="#417">417</a>         }
<a name="418" href="#418">418</a> 
<a name="419" href="#419">419</a>         <em class="jxr_javadoccomment">/**</em>
<a name="420" href="#420">420</a> <em class="jxr_javadoccomment">         * Update the value for the time-to-live</em>
<a name="421" href="#421">421</a> <em class="jxr_javadoccomment">         *</em>
<a name="422" href="#422">422</a> <em class="jxr_javadoccomment">         * @param timeToLive</em>
<a name="423" href="#423">423</a> <em class="jxr_javadoccomment">         *  The time-to-live (seconds)</em>
<a name="424" href="#424">424</a> <em class="jxr_javadoccomment">         */</em>
<a name="425" href="#425">425</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setTimeToLive(<strong class="jxr_keyword">long</strong> timeToLive) {
<a name="426" href="#426">426</a>             stateLock.writeLock().lock();
<a name="427" href="#427">427</a> 
<a name="428" href="#428">428</a>             <strong class="jxr_keyword">try</strong> {
<a name="429" href="#429">429</a>                 <strong class="jxr_keyword">this</strong>.timeToLiveMillis = timeToLive * 1000;
<a name="430" href="#430">430</a>             } <strong class="jxr_keyword">finally</strong> {
<a name="431" href="#431">431</a>                 stateLock.writeLock().unlock();
<a name="432" href="#432">432</a>             }
<a name="433" href="#433">433</a>         }
<a name="434" href="#434">434</a> 
<a name="435" href="#435">435</a>         <em class="jxr_javadoccomment">/**</em>
<a name="436" href="#436">436</a> <em class="jxr_javadoccomment">         * Get the interval in which an object will live in the map before</em>
<a name="437" href="#437">437</a> <em class="jxr_javadoccomment">         * it is removed.</em>
<a name="438" href="#438">438</a> <em class="jxr_javadoccomment">         *</em>
<a name="439" href="#439">439</a> <em class="jxr_javadoccomment">         * @return</em>
<a name="440" href="#440">440</a> <em class="jxr_javadoccomment">         *  The time in seconds.</em>
<a name="441" href="#441">441</a> <em class="jxr_javadoccomment">         */</em>
<a name="442" href="#442">442</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> getExpirationInterval() {
<a name="443" href="#443">443</a>             stateLock.readLock().lock();
<a name="444" href="#444">444</a> 
<a name="445" href="#445">445</a>             <strong class="jxr_keyword">try</strong> {
<a name="446" href="#446">446</a>                 <strong class="jxr_keyword">return</strong> (<strong class="jxr_keyword">int</strong>) expirationIntervalMillis / 1000;
<a name="447" href="#447">447</a>             } <strong class="jxr_keyword">finally</strong> {
<a name="448" href="#448">448</a>                 stateLock.readLock().unlock();
<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>         <em class="jxr_javadoccomment">/**</em>
<a name="453" href="#453">453</a> <em class="jxr_javadoccomment">         * Set the interval in which an object will live in the map before</em>
<a name="454" href="#454">454</a> <em class="jxr_javadoccomment">         * it is removed.</em>
<a name="455" href="#455">455</a> <em class="jxr_javadoccomment">         *</em>
<a name="456" href="#456">456</a> <em class="jxr_javadoccomment">         * @param expirationInterval</em>
<a name="457" href="#457">457</a> <em class="jxr_javadoccomment">         *  The time in seconds</em>
<a name="458" href="#458">458</a> <em class="jxr_javadoccomment">         */</em>
<a name="459" href="#459">459</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setExpirationInterval(<strong class="jxr_keyword">long</strong> expirationInterval) {
<a name="460" href="#460">460</a>             stateLock.writeLock().lock();
<a name="461" href="#461">461</a> 
<a name="462" href="#462">462</a>             <strong class="jxr_keyword">try</strong> {
<a name="463" href="#463">463</a>                 <strong class="jxr_keyword">this</strong>.expirationIntervalMillis = expirationInterval * 1000;
<a name="464" href="#464">464</a>             } <strong class="jxr_keyword">finally</strong> {
<a name="465" href="#465">465</a>                 stateLock.writeLock().unlock();
<a name="466" href="#466">466</a>             }
<a name="467" href="#467">467</a>         }
<a name="468" href="#468">468</a>     }
<a name="469" href="#469">469</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

