Subversion Repositories SmartDukaan

Rev

Rev 19048 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package in.shop2020.hotspot.dashbaord.server;
import net.sf.ehcache.CacheManager;
import net.sf.ehcache.Ehcache;
import net.sf.ehcache.Element;

public class EhcacheWrapper<K, V> 
{
    
    private final String cacheName;
    private final CacheManager cacheManager;

    public EhcacheWrapper(final String cacheName, final CacheManager cacheManager)
    {
        this.cacheName = cacheName;
        this.cacheManager = cacheManager;
    }

    public void put(final K key, final V value)
    {
        Element element = new Element(key, value);
        //element.setTimeToLive(86400);
        getCache().put(element);
    }

    @SuppressWarnings("unchecked")
    public V get(final K key) 
    {
        Element element = getCache().get(key);
        if (element != null) {
            return (V) element.getObjectValue();
        }
        return null;
    }

    public void removeAll() 
    {
        getCache().removeAll();
    }
    
    public void remove(final K key) 
    {
        getCache().remove(key);
    }
    
    public Ehcache getCache() 
    {
        return cacheManager.getEhcache(cacheName);
    }
}