Author: olamy
Date: Sat Jan  5 22:24:14 2013
New Revision: 1429405

URL: http://svn.apache.org/viewvc?rev=1429405&view=rev
Log:
generics for cache builder

Modified:
    
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/builder/CacheBuilder.java
    
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/builder/DefaultCacheBuilder.java
    
archiva/redback/redback-components/trunk/spring-cache/spring-cache-test/src/main/java/org/apache/archiva/redback/components/cache/test/examples/wine/DefaultWineService.java

Modified: 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/builder/CacheBuilder.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/builder/CacheBuilder.java?rev=1429405&r1=1429404&r2=1429405&view=diff
==============================================================================
--- 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/builder/CacheBuilder.java
 (original)
+++ 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/builder/CacheBuilder.java
 Sat Jan  5 22:24:14 2013
@@ -23,24 +23,24 @@ import org.apache.archiva.redback.compon
 
 
 /**
- * CacheBuilder Interface, for obtaining caches from plexus using hints or 
clazz names.
+ * CacheBuilder Interface, for obtaining caches from spring using beans names 
or clazz names.
  *
  * @author Olivier Lamy
  *
  * @since 3 February, 2007
  */
-public interface CacheBuilder
+public interface CacheBuilder<V,T>
 {
     /**
      * @param roleHint
      * @return
      */
-    Cache getCache( String roleHint );
+    Cache<V,T> getCache( String roleHint );
 
     /**
      * @param clazz
      * @return
      */
-    Cache getCache( Class clazz );
+    Cache<V,T> getCache( Class clazz );
 
 }

Modified: 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/builder/DefaultCacheBuilder.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/builder/DefaultCacheBuilder.java?rev=1429405&r1=1429404&r2=1429405&view=diff
==============================================================================
--- 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/builder/DefaultCacheBuilder.java
 (original)
+++ 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-api/src/main/java/org/apache/archiva/redback/components/cache/builder/DefaultCacheBuilder.java
 Sat Jan  5 22:24:14 2013
@@ -37,15 +37,15 @@ import javax.inject.Inject;
  *
  */
 @Service
-public class DefaultCacheBuilder
-    implements CacheBuilder
+public class DefaultCacheBuilder<V,T>
+    implements CacheBuilder<V,T>
 {
 
     private Logger log = LoggerFactory.getLogger( getClass() );
 
-    private Cache defaultCache;
+    private Cache<V,T> defaultCache;
 
-    private Cache noCache = new NoCacheCache();
+    private Cache<V,T> noCache = new NoCacheCache<V,T>();
 
     @Inject
     private ApplicationContext applicationContext;
@@ -65,7 +65,7 @@ public class DefaultCacheBuilder
         }
     }
 
-    public Cache getCache( String roleHint )
+    public Cache<V,T> getCache( String roleHint )
     {
         if ( this.applicationContext.containsBean( "cache#" + roleHint ) )
         {
@@ -75,7 +75,7 @@ public class DefaultCacheBuilder
         return this.getDefaultCache();
     }
 
-    public Cache getCache( Class clazz )
+    public Cache<V,T> getCache( Class clazz )
     {
         return this.getCache( clazz.getName() );
     }
@@ -86,7 +86,7 @@ public class DefaultCacheBuilder
         // TODO dispose default ?
     }
 
-    public Cache getDefaultCache()
+    public Cache<V,T> getDefaultCache()
     {
         return defaultCache == null ? this.noCache : this.defaultCache;
     }

Modified: 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-test/src/main/java/org/apache/archiva/redback/components/cache/test/examples/wine/DefaultWineService.java
URL: 
http://svn.apache.org/viewvc/archiva/redback/redback-components/trunk/spring-cache/spring-cache-test/src/main/java/org/apache/archiva/redback/components/cache/test/examples/wine/DefaultWineService.java?rev=1429405&r1=1429404&r2=1429405&view=diff
==============================================================================
--- 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-test/src/main/java/org/apache/archiva/redback/components/cache/test/examples/wine/DefaultWineService.java
 (original)
+++ 
archiva/redback/redback-components/trunk/spring-cache/spring-cache-test/src/main/java/org/apache/archiva/redback/components/cache/test/examples/wine/DefaultWineService.java
 Sat Jan  5 22:24:14 2013
@@ -25,23 +25,22 @@ import org.springframework.stereotype.Se
 import javax.inject.Inject;
 
 /**
- * @since 5 February, 2007
- *
  * @author Olivier Lamy
+ * @since 5 February, 2007
  */
 @Service
 public class DefaultWineService
     implements WineService
 {
     @Inject
-    private CacheBuilder cacheBuilder;
+    private CacheBuilder<String, Wine> cacheBuilder;
 
     @Inject
     private WineDao wineDao;
 
     public Wine getWine( String name )
     {
-        Wine wine = (Wine) cacheBuilder.getCache( Wine.class ).get( name );
+        Wine wine = cacheBuilder.getCache( Wine.class ).get( name );
         if ( wine == null )
         {
             wine = wineDao.getWine( name );


Reply via email to