You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by ol...@apache.org on 2013/02/18 21:29:58 UTC
svn commit: r1447470 - in
/archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-ehcache/src:
main/java/org/apache/archiva/redback/components/cache/ehcache/
test/java/org/apache/archiva/redback/components/cache/ehcache/
Author: olamy
Date: Mon Feb 18 20:29:58 2013
New Revision: 1447470
URL: http://svn.apache.org/r1447470
Log:
add test checking file disk is created
Modified:
archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-ehcache/src/main/java/org/apache/archiva/redback/components/cache/ehcache/EhcacheCache.java
archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-ehcache/src/test/java/org/apache/archiva/redback/components/cache/ehcache/EhcacheCacheTest.java
Modified: archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-ehcache/src/main/java/org/apache/archiva/redback/components/cache/ehcache/EhcacheCache.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-ehcache/src/main/java/org/apache/archiva/redback/components/cache/ehcache/EhcacheCache.java?rev=1447470&r1=1447469&r2=1447470&view=diff
==============================================================================
--- archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-ehcache/src/main/java/org/apache/archiva/redback/components/cache/ehcache/EhcacheCache.java (original)
+++ archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-ehcache/src/main/java/org/apache/archiva/redback/components/cache/ehcache/EhcacheCache.java Mon Feb 18 20:29:58 2013
@@ -26,7 +26,7 @@ import net.sf.ehcache.Status;
import net.sf.ehcache.config.CacheConfiguration;
import net.sf.ehcache.config.Configuration;
import net.sf.ehcache.config.DiskStoreConfiguration;
-import net.sf.ehcache.config.PersistenceConfiguration;
+import net.sf.ehcache.config.MemoryUnit;
import net.sf.ehcache.store.MemoryStoreEvictionPolicy;
import org.apache.archiva.redback.components.cache.CacheStatistics;
import org.slf4j.Logger;
@@ -65,7 +65,7 @@ public class EhcacheCache<V, T>
return 0.0;
}
- return (double) hits / (double) ( hits + miss );
+ return hits / ( hits + miss );
}
public long getCacheHits()
@@ -112,7 +112,7 @@ public class EhcacheCache<V, T>
/**
*
*/
- private int maxElementsInMemory = 1000;
+ private int maxElementsInMemory = 0;
/**
*
@@ -164,6 +164,16 @@ public class EhcacheCache<V, T>
*/
private int maxElementsOnDisk;
+ /**
+ * @since 2.1
+ */
+ //private String persistenceStrategy = PersistenceConfiguration.Strategy.LOCALTEMPSWAP.name();
+
+ /**
+ * @since 2.1
+ */
+ //private boolean synchronousWrites = false;
+
private boolean statisticsEnabled = true;
private CacheManager cacheManager = null;//CacheManager.getInstance();
@@ -199,7 +209,8 @@ public class EhcacheCache<V, T>
}
else
{
- this.cacheManager = new CacheManager( new Configuration().name( getName() ) );
+ this.cacheManager = new CacheManager( new Configuration().name( getName() ).diskStore(
+ new DiskStoreConfiguration().path( getDiskStorePath() ) ) );
}
boolean cacheExists = cacheManager.cacheExists( getName() );
@@ -219,20 +230,28 @@ public class EhcacheCache<V, T>
if ( !cacheExists )
{
- CacheConfiguration cacheConfiguration = new CacheConfiguration().name( getName() ).maxEntriesLocalHeap(
- getMaxElementsInMemory() ).memoryStoreEvictionPolicy( getMemoryStoreEvictionPolicy() ).eternal(
- isEternal() ).timeToLiveSeconds( getTimeToLiveSeconds() ).timeToIdleSeconds(
- getTimeToIdleSeconds() ).diskExpiryThreadIntervalSeconds(
- getDiskExpiryThreadIntervalSeconds() ).overflowToOffHeap( isOverflowToOffHeap() ).maxEntriesLocalDisk(
- getMaxElementsOnDisk() ).overflowToDisk( isOverflowToDisk() ).diskPersistent( diskPersistent );
+ CacheConfiguration cacheConfiguration =
+ new CacheConfiguration().name( getName() ).memoryStoreEvictionPolicy(
+ getMemoryStoreEvictionPolicy() ).eternal( isEternal() ).timeToLiveSeconds(
+ getTimeToLiveSeconds() ).timeToIdleSeconds(
+ getTimeToIdleSeconds() ).diskExpiryThreadIntervalSeconds(
+ getDiskExpiryThreadIntervalSeconds() ).overflowToOffHeap(
+ isOverflowToOffHeap() ).maxEntriesLocalDisk( getMaxElementsOnDisk() ).diskPersistent(
+ isDiskPersistent() ).overflowToDisk( overflowToDisk );
+
+ if ( getMaxElementsInMemory() > 0 )
+ {
+ cacheConfiguration = cacheConfiguration.maxEntriesLocalHeap( getMaxElementsInMemory() );
+ }
if ( getMaxBytesLocalHeap() > 0 )
{
- cacheConfiguration.setMaxBytesLocalHeap( getMaxBytesLocalHeap() );
+ cacheConfiguration = cacheConfiguration.maxBytesLocalHeap( getMaxBytesLocalHeap(), MemoryUnit.BYTES );
}
if ( getMaxBytesLocalOffHeap() > 0 )
{
- cacheConfiguration.setMaxBytesLocalOffHeap( getMaxBytesLocalOffHeap() );
+ cacheConfiguration =
+ cacheConfiguration.maxBytesLocalOffHeap( getMaxBytesLocalOffHeap(), MemoryUnit.BYTES );
}
ehcache = new Cache( cacheConfiguration );
@@ -503,4 +522,24 @@ public class EhcacheCache<V, T>
this.ehcache.getCacheConfiguration().maxEntriesLocalDisk( this.maxElementsOnDisk );
}
}
+
+ /*public String getPersistenceStrategy()
+ {
+ return persistenceStrategy;
+ }
+
+ public void setPersistenceStrategy( String persistenceStrategy )
+ {
+ this.persistenceStrategy = persistenceStrategy;
+ }
+
+ public boolean isSynchronousWrites()
+ {
+ return synchronousWrites;
+ }
+
+ public void setSynchronousWrites( boolean synchronousWrites )
+ {
+ this.synchronousWrites = synchronousWrites;
+ }*/
}
Modified: archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-ehcache/src/test/java/org/apache/archiva/redback/components/cache/ehcache/EhcacheCacheTest.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-ehcache/src/test/java/org/apache/archiva/redback/components/cache/ehcache/EhcacheCacheTest.java?rev=1447470&r1=1447469&r2=1447470&view=diff
==============================================================================
--- archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-ehcache/src/test/java/org/apache/archiva/redback/components/cache/ehcache/EhcacheCacheTest.java (original)
+++ archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-ehcache/src/test/java/org/apache/archiva/redback/components/cache/ehcache/EhcacheCacheTest.java Mon Feb 18 20:29:58 2013
@@ -20,60 +20,66 @@ import org.apache.archiva.redback.compon
import org.apache.archiva.redback.components.cache.ehcache.EhcacheCache;
import org.apache.archiva.redback.components.cache.test.AbstractCacheTestCase;
import org.apache.archiva.redback.components.cache.test.examples.wine.Wine;
+import org.springframework.test.annotation.DirtiesContext;
import javax.inject.Inject;
import javax.inject.Named;
/**
- * EhcacheCacheTest
+ * EhcacheCacheTest
*
* @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a>
- *
*/
+@DirtiesContext( classMode = DirtiesContext.ClassMode.AFTER_CLASS )
public class EhcacheCacheTest
extends AbstractCacheTestCase
{
- @Inject @Named(value = "cache#ehcache")
- Cache<String,Integer> cache;
-
- @Inject @Named(value = "cache#alwaysrefresh")
- Cache<String,Wine> cachealwaysrefresh;
-
- @Inject @Named(value = "cache#onesecondrefresh")
- Cache<String,Wine> cacheonesecondrefresh;
-
- @Inject @Named(value = "cache#onesecondrefresh")
- Cache<String,Wine> cachetwosecondrefresh;
-
- @Inject @Named(value = "cache#neverrefresh")
- Cache<String,Wine> cacheneversecondrefresh;
+ @Inject
+ @Named(value = "cache#ehcache")
+ Cache<String, Integer> cache;
+
+ @Inject
+ @Named(value = "cache#alwaysrefresh")
+ Cache<String, Wine> cachealwaysrefresh;
+
+ @Inject
+ @Named(value = "cache#onesecondrefresh")
+ Cache<String, Wine> cacheonesecondrefresh;
+
+ @Inject
+ @Named(value = "cache#onesecondrefresh")
+ Cache<String, Wine> cachetwosecondrefresh;
+
+ @Inject
+ @Named(value = "cache#neverrefresh")
+ Cache<String, Wine> cacheneversecondrefresh;
@Override
- public Cache<String,Integer> getCache()
+ public Cache<String, Integer> getCache()
{
return cache;
}
- public Cache<String,Wine> getAlwaysRefresCache()
+ public Cache<String, Wine> getAlwaysRefresCache()
throws Exception
{
return cachealwaysrefresh;
}
- public Cache<String,Wine> getNeverRefresCache()
+ public Cache<String, Wine> getNeverRefresCache()
throws Exception
{
return cacheneversecondrefresh;
}
- public Cache<String,Wine> getOneSecondRefresCache()
+ public Cache<String, Wine> getOneSecondRefresCache()
throws Exception
{
return cacheonesecondrefresh;
}
- public Cache<String,Wine> getTwoSecondRefresCache()
+ public Cache<String, Wine> getTwoSecondRefresCache()
throws Exception
{
return cachetwosecondrefresh;