comparison artifacts-common/src/main/java/de/intevation/artifacts/common/utils/LRUCache.java @ 306:9dbeb88006e9

Added simple in-memory LRU cache artifacts/trunk@2414 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Thu, 28 Jul 2011 14:08:25 +0000
parents
children c40729bfe06d
comparison
equal deleted inserted replaced
305:f33401ea2a6c 306:9dbeb88006e9
1 package de.intevation.artifacts.common.utils;
2
3 import java.util.Map;
4 import java.util.LinkedHashMap;
5
6 public class LRUCache<K, V>
7 extends LinkedHashMap<K, V>
8 {
9 public static final int DEFAULT_MAX_CAPACITY = 25;
10
11 private int maxCapacity;
12
13 public LRUCache() {
14 this(DEFAULT_MAX_CAPACITY);
15 }
16
17 public LRUCache(int maxCapacity) {
18 this.maxCapacity = maxCapacity;
19 }
20
21 @Override
22 protected boolean removeEldestEntry(Map.Entry<K, V> eldest) {
23 return size() > maxCapacity;
24 }
25 }
26 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org