[infinispan-commits] Infinispan SVN: r814 - trunk/core/src/main/java/org/infinispan/config.

infinispan-commits at lists.jboss.org infinispan-commits at lists.jboss.org
Mon Sep 14 13:29:23 EDT 2009


Author: vblagojevic at jboss.com
Date: 2009-09-14 13:29:23 -0400 (Mon, 14 Sep 2009)
New Revision: 814

Modified:
   trunk/core/src/main/java/org/infinispan/config/AbstractNamedCacheConfigurationBean.java
   trunk/core/src/main/java/org/infinispan/config/OverrideConfigurationVisitor.java
Log:
ironing applyOverrides and inject

Modified: trunk/core/src/main/java/org/infinispan/config/AbstractNamedCacheConfigurationBean.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/config/AbstractNamedCacheConfigurationBean.java	2009-09-14 14:32:01 UTC (rev 813)
+++ trunk/core/src/main/java/org/infinispan/config/AbstractNamedCacheConfigurationBean.java	2009-09-14 17:29:23 UTC (rev 814)
@@ -42,7 +42,7 @@
 
       public void defaultVisit(AbstractConfigurationBean c) {
          if (c instanceof AbstractNamedCacheConfigurationBean) {
-            ((AbstractNamedCacheConfigurationBean) c).cr = cr;
+            ((AbstractNamedCacheConfigurationBean) c).cr = AbstractNamedCacheConfigurationBean.this.cr;
          }
       }
    }

Modified: trunk/core/src/main/java/org/infinispan/config/OverrideConfigurationVisitor.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/config/OverrideConfigurationVisitor.java	2009-09-14 14:32:01 UTC (rev 813)
+++ trunk/core/src/main/java/org/infinispan/config/OverrideConfigurationVisitor.java	2009-09-14 17:29:23 UTC (rev 814)
@@ -22,8 +22,6 @@
 package org.infinispan.config;
 
 import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
 import java.util.Map;
 import java.util.Set;
 import java.util.Map.Entry;
@@ -43,8 +41,6 @@
 import org.infinispan.config.Configuration.SyncType;
 import org.infinispan.config.Configuration.TransactionType;
 import org.infinispan.config.Configuration.UnsafeType;
-import org.infinispan.loaders.AbstractCacheStoreConfig;
-import org.infinispan.loaders.CacheLoaderConfig;
 import org.infinispan.util.ReflectionUtil;
 
 /**
@@ -57,7 +53,6 @@
 public class OverrideConfigurationVisitor extends AbstractConfigurationBeanVisitor {
 
    AsyncType asyncType = null;
-   CacheLoaderConfig cacheLoaderConfig = null;
    CacheLoaderManagerConfig cacheLoaderManagerConfig = null;
    ClusteringType clusteringType = null;
    Map <String,BooleanAttributeType> bats = new HashMap<String,BooleanAttributeType>();
@@ -81,38 +76,12 @@
       for (Entry<String, BooleanAttributeType> entry : entrySet) {
          BooleanAttributeType attributeType = bats.get(entry.getKey());
          if(attributeType != null) {
-            attributeType.setEnabled(entry.getValue().enabled);
+            attributeType.enabled = entry.getValue().enabled;
          }
       }
       
-      //special handling for cache loader manager
-      overrideFields(cacheLoaderManagerConfig, override.cacheLoaderManagerConfig);
-      CacheLoaderManagerConfig config = override.cacheLoaderManagerConfig;
-      List<CacheLoaderConfig> cll2 = config.getCacheLoaderConfigs();
-      List<CacheLoaderConfig> cll1 = cacheLoaderManagerConfig.getCacheLoaderConfigs();
-
-      if (cll1.isEmpty() && !cll2.isEmpty()) {
-         cll1.addAll(cll2);
-      } else if (!cll1.isEmpty() && !cll2.isEmpty()) {
-         Iterator<CacheLoaderConfig> i1 = cll1.iterator();
-         Iterator<CacheLoaderConfig> i2 = cll2.iterator();
-         for (; i1.hasNext() && i2.hasNext();) {
-            CacheLoaderConfig l1 = i1.next();
-            CacheLoaderConfig l2 = i2.next();
-            if (l1.getCacheLoaderClassName().equals(l2.getCacheLoaderClassName())) {
-               overrideFields((AbstractConfigurationBean) l1, (AbstractConfigurationBean) l2);
-               if(l1 instanceof AbstractCacheStoreConfig && l2 instanceof AbstractCacheStoreConfig) {
-                  overrideFields(((AbstractCacheStoreConfig) l1).getSingletonStoreConfig(),
-                           ((AbstractCacheStoreConfig) l2).getSingletonStoreConfig());
-                  overrideFields(((AbstractCacheStoreConfig) l1).getAsyncStoreConfig(),
-                           ((AbstractCacheStoreConfig) l2).getAsyncStoreConfig());
-               }
-            }
-         }
-         while (i2.hasNext()) {
-            cll1.add(i2.next());
-         }
-      }
+      //do we need to make clones of complex objects like list of cache loaders?
+      overrideFields(cacheLoaderManagerConfig, override.cacheLoaderManagerConfig);      
       
       //everything else...
       overrideFields(asyncType, override.asyncType);



More information about the infinispan-commits mailing list