Clover Coverage Report - KS Common 1.2-SNAPSHOT (Aggregated)
Coverage timestamp: Thu Mar 3 2011 04:36:44 EST
../../../../../img/srcFileCovDistChart10.png 0% of files have more coverage
2   58   3   0.67
0   15   1.5   3
3     1  
1    
 
  LRUMap       Line # 28 2 0% 3 0 100% 1.0
 
  (2)
 
1    /**
2    * Copyright 2010 The Kuali Foundation Licensed under the
3    * Educational Community License, Version 2.0 (the "License"); you may
4    * not use this file except in compliance with the License. You may
5    * obtain a copy of the License at
6    *
7    * http://www.osedu.org/licenses/ECL-2.0
8    *
9    * Unless required by applicable law or agreed to in writing,
10    * software distributed under the License is distributed on an "AS IS"
11    * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12    * or implied. See the License for the specific language governing
13    * permissions and limitations under the License.
14    */
15   
16    package org.kuali.student.common.util;
17   
18    import java.util.LinkedHashMap;
19    import java.util.Map;
20   
21    /**
22    * A <code>Map<code> implementation with a fixed maximum size of a
23    * least recently used (LRU) entry list using a <code>LinkedHashMap</code>.
24    *
25    * @param <K> Key
26    * @param <V> Value
27    */
 
28    public class LRUMap<K,V> extends LinkedHashMap<K,V> {
29    /** Class serial version uid */
30    private static final long serialVersionUID = 1L;
31   
32    /** Maximum size of map */
33    private int maxSize = 50;
34   
35    /**
36    * Constructs a new LRU Map with a default maximum size of 50 entries.
37    */
 
38  1 toggle public LRUMap() {
39    }
40   
41    /**
42    * Constructs a new LRU Map.
43    *
44    * @param maxSize Maximum size of LRU map.
45    */
 
46  2 toggle public LRUMap(int maxSize) {
47  2 this.maxSize = maxSize;
48    }
49   
50    /**
51    * Removed oldest entry in map.
52    *
53    * @param eldest Oldest entry to remove
54    */
 
55  67 toggle public boolean removeEldestEntry(Map.Entry<K,V> eldest) {
56  67 return size() > this.maxSize;
57    }
58    }