Author: olamy
Date: Thu Dec 20 23:13:14 2012
New Revision: 1424746

URL: http://svn.apache.org/viewvc?rev=1424746&view=rev
Log:
make Time To Idle and Time To Live configurable
can  be dynamic with ehcache

Modified:
    
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/Cache.java
    
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/impl/NoCacheCache.java
    
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-hashmap/src/main/java/org/apache/archiva/redback/components/cache/hashmap/HashMapCache.java
    
archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-oscache/src/main/java/org/apache/archiva/redback/components/cache/oscache/OsCacheCache.java

Modified: 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/Cache.java
URL: 
http://svn.apache.org/viewvc/archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/Cache.java?rev=1424746&r1=1424745&r2=1424746&view=diff
==============================================================================
--- 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/Cache.java
 (original)
+++ 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/Cache.java
 Thu Dec 20 23:13:14 2012
@@ -107,4 +107,12 @@ public interface Cache
      */
     CacheStatistics getStatistics();
 
+    void setTimeToIdleSeconds( int timeToIdleSeconds );
+
+    void setTimeToLiveSeconds( int timeToLiveSeconds );
+
+    int getTimeToIdleSeconds();
+
+    int getTimeToLiveSeconds();
+
 }

Modified: 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/impl/NoCacheCache.java
URL: 
http://svn.apache.org/viewvc/archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/impl/NoCacheCache.java?rev=1424746&r1=1424745&r2=1424746&view=diff
==============================================================================
--- 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/impl/NoCacheCache.java
 (original)
+++ 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/impl/NoCacheCache.java
 Thu Dec 20 23:13:14 2012
@@ -19,6 +19,7 @@ package org.apache.archiva.redback.compo
  * under the License.
  */
 
+import org.apache.archiva.redback.components.cache.AbstractCache;
 import org.apache.archiva.redback.components.cache.CacheStatistics;
 import org.apache.archiva.redback.components.cache.Cache;
 
@@ -32,6 +33,7 @@ import org.apache.archiva.redback.compon
  * @since 5 February, 2007
  */
 public class NoCacheCache
+    extends AbstractCache
     implements Cache
 {
     class NoStats

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=1424746&r1=1424745&r2=1424746&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
 Thu Dec 20 23:13:14 2012
@@ -237,6 +237,7 @@ public class EhcacheCache
         {
             return null;
         }
+
         Element elem = ehcache.get( key );
         if ( elem == null )
         {
@@ -396,11 +397,19 @@ public class EhcacheCache
 
     public void setTimeToIdleSeconds( int timeToIdleSeconds )
     {
+        if ( this.ehcache != null )
+        {
+            this.ehcache.getCacheConfiguration().setTimeToIdleSeconds( 
timeToIdleSeconds );
+        }
         this.timeToIdleSeconds = timeToIdleSeconds;
     }
 
     public void setTimeToLiveSeconds( int timeToLiveSeconds )
     {
+        if ( this.ehcache != null )
+        {
+            this.ehcache.getCacheConfiguration().setTimeToLiveSeconds( 
timeToIdleSeconds );
+        }
         this.timeToLiveSeconds = timeToLiveSeconds;
     }
 
@@ -453,4 +462,6 @@ public class EhcacheCache
     {
         this.maxBytesLocalOffHeap = maxBytesLocalOffHeap;
     }
+
+
 }

Modified: 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-hashmap/src/main/java/org/apache/archiva/redback/components/cache/hashmap/HashMapCache.java
URL: 
http://svn.apache.org/viewvc/archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-hashmap/src/main/java/org/apache/archiva/redback/components/cache/hashmap/HashMapCache.java?rev=1424746&r1=1424745&r2=1424746&view=diff
==============================================================================
--- 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-hashmap/src/main/java/org/apache/archiva/redback/components/cache/hashmap/HashMapCache.java
 (original)
+++ 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-hashmap/src/main/java/org/apache/archiva/redback/components/cache/hashmap/HashMapCache.java
 Thu Dec 20 23:13:14 2012
@@ -19,6 +19,7 @@ package org.apache.archiva.redback.compo
  * under the License.
  */
 
+import org.apache.archiva.redback.components.cache.AbstractCache;
 import org.apache.archiva.redback.components.cache.AbstractCacheStatistics;
 import org.apache.archiva.redback.components.cache.Cache;
 import org.apache.archiva.redback.components.cache.CacheStatistics;
@@ -57,6 +58,7 @@ import java.util.Map;
  */
 @Service("cache#hashmap")
 public class HashMapCache
+    extends AbstractCache
     implements Cache
 {
 

Modified: 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-oscache/src/main/java/org/apache/archiva/redback/components/cache/oscache/OsCacheCache.java
URL: 
http://svn.apache.org/viewvc/archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-oscache/src/main/java/org/apache/archiva/redback/components/cache/oscache/OsCacheCache.java?rev=1424746&r1=1424745&r2=1424746&view=diff
==============================================================================
--- 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-oscache/src/main/java/org/apache/archiva/redback/components/cache/oscache/OsCacheCache.java
 (original)
+++ 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-providers/spring-cache-oscache/src/main/java/org/apache/archiva/redback/components/cache/oscache/OsCacheCache.java
 Thu Dec 20 23:13:14 2012
@@ -22,6 +22,7 @@ package org.apache.archiva.redback.compo
 import com.opensymphony.oscache.base.CacheEntry;
 import com.opensymphony.oscache.base.NeedsRefreshException;
 import com.opensymphony.oscache.general.GeneralCacheAdministrator;
+import org.apache.archiva.redback.components.cache.AbstractCache;
 import org.apache.archiva.redback.components.cache.Cache;
 import org.apache.archiva.redback.components.cache.CacheStatistics;
 
@@ -37,6 +38,7 @@ import java.util.Properties;
  * @author @author Olivier Lamy
  */
 public class OsCacheCache
+    extends AbstractCache
     implements Cache
 {
 


Reply via email to