[jboss-cvs] CacheBenchFwk/cache-products/ehcache-1.2.4/src/org/cachebench/cachewrappers ...
Manik Surtani
manik at jboss.org
Thu May 17 04:13:45 EDT 2007
User: msurtani
Date: 07/05/17 04:13:45
Added: cache-products/ehcache-1.2.4/src/org/cachebench/cachewrappers
EHCacheWrapper.java
Log:
fixed stuff
Revision Changes Path
1.1 date: 2007/05/17 08:13:45; author: msurtani; state: Exp;CacheBenchFwk/cache-products/ehcache-1.2.4/src/org/cachebench/cachewrappers/EHCacheWrapper.java
Index: EHCacheWrapper.java
===================================================================
package org.cachebench.cachewrappers;
import net.sf.ehcache.Cache;
import net.sf.ehcache.CacheManager;
import net.sf.ehcache.Element;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.cachebench.SerializableCacheWrapper;
import java.io.Serializable;
import java.net.URL;
import java.util.Properties;
/**
* An implementation of SerializableCacheWrapper that uses EHCache as an underlying implementation.
*
* @author Manik Surtani (manik at surtani.org)
* @version $Id: EHCacheWrapper.java,v 1.1 2007/05/17 08:13:45 msurtani Exp $
*/
public class EHCacheWrapper implements SerializableCacheWrapper
{
private CacheManager manager;
private Cache cache;
private Log logger = LogFactory.getLog("org.cachebench.cachewrappers.EHCacheWrapper");
/* (non-Javadoc)
* @see org.cachebench.CacheWrapper#init(java.util.Properties)
*/
public void init(Properties parameters) throws Exception
{
logger.debug("Initializing the cache");
URL url = getClass().getResource(parameters.getProperty("config"));
manager = CacheManager.create(url);
logger.debug("Finish Initializing the cache");
}
/* (non-Javadoc)
* @see org.cachebench.CacheWrapper#setUp()
*/
public void setUp() throws Exception
{
CacheManager manager = CacheManager.create();
manager.addCache("cache");
cache = manager.getCache("cache");
}
/* (non-Javadoc)
* @see org.cachebench.CacheWrapper#tearDown()
*/
public void tearDown() throws Exception
{
manager.shutdown();
}
/* (non-Javadoc)
* @see org.cachebench.SerializableCacheWrapper#putSerializable(java.io.Serializable, java.io.Serializable)
*/
public void putSerializable(Serializable key, Serializable value) throws Exception
{
Element element = new Element(key, value);
cache.put(element);
}
/* (non-Javadoc)
* @see org.cachebench.SerializableCacheWrapper#getSerializable(java.io.Serializable)
*/
public Object getSerializable(Serializable key) throws Exception
{
return cache.get(key);
}
public void empty() throws Exception
{
cache.removeAll();
}
/* (non-Javadoc)
* @see org.cachebench.CacheWrapper#put(java.lang.Object, java.lang.Object)
*/
public void put(Object key, Object value) throws Exception
{
logger.warn("Put: Does not deal with non-Serializables, should not be called.");
}
/* (non-Javadoc)
* @see org.cachebench.CacheWrapper#get(java.lang.Object)
*/
public Object get(Object key) throws Exception
{
logger.warn("Get: Does not deal with non-Serializables, should not be called.");
return null;
}
public int getNumMembers()
{
// EHCache does not expose a mechanism for providing the number of cluster members, as far as I can see ... !
return -1;
}
public String getInfo()
{
return cache.getKeys().toString();
}
}
More information about the jboss-cvs-commits
mailing list