package cn.bran.play; import java.util.concurrent.ConcurrentHashMap; /** * a CHM based simple cache for resultset. can also use the Google collection * which comes with concurrency control, expiration time, etc, which is a 500k * jar * * @author Bing Ran<bing_ran@hotmail.com> * */ public class AltCacheSimpleImpl implements AltCache { ConcurrentHashMap<String, CachedRenderResult> cache = new ConcurrentHashMap<String, CachedRenderResult>(); @Override public CachedRenderResult get(String key) { CachedRenderResult crr = cache.get(key); if (crr.isExpired()) { cache.remove(key); return null; } else { return crr; } } @Override public void set(String key, CachedRenderResult rr, String ttl) { cache.put(key, rr); } @Override public void delete(String key) { cache.remove(key); } }