fix autoinitializer bug in AdvancedBeanInitializer
authorAndreas Müller <a.mueller@bgbm.org>
Sat, 26 Oct 2013 12:04:11 +0000 (12:04 +0000)
committerAndreas Müller <a.mueller@bgbm.org>
Sat, 26 Oct 2013 12:04:11 +0000 (12:04 +0000)
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/initializer/AdvancedBeanInitializer.java
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/initializer/BeanInitNode.java

index 7dbf53a5f35087240638ccf5928d00ec913429a2..a246171f6793b83d6f5a9b8625254ae39e271231 100644 (file)
@@ -37,22 +37,6 @@ public class AdvancedBeanInitializer extends HibernateBeanInitializer {
            @Autowired\r
            IMethodCache methodCache;\r
 \r
-           private Map<Class<? extends CdmBase>, AutoPropertyInitializer<CdmBase>> beanAutoInitializers = null;\r
-\r
-           /**\r
-            * @param beanAutoInitializers the beanAutoInitializers to set\r
-            */\r
-           public void setBeanAutoInitializers(Map<Class<? extends CdmBase>, AutoPropertyInitializer<CdmBase>> beanAutoInitializers) {\r
-               this.beanAutoInitializers = beanAutoInitializers;\r
-           }\r
-\r
-           /**\r
-            * @return the beanAutoInitializers\r
-            */\r
-           public Map<Class<? extends CdmBase>, AutoPropertyInitializer<CdmBase>> getBeanAutoInitializers() {\r
-               return beanAutoInitializers;\r
-           }\r
-\r
        \r
            /* (non-Javadoc)\r
             * @see eu.etaxonomy.cdm.persistence.dao.BeanInitializer#load(eu.etaxonomy.cdm.model.common.CdmBase)\r
@@ -224,7 +208,9 @@ public class AdvancedBeanInitializer extends HibernateBeanInitializer {
                            if (logger.isDebugEnabled()){logger.debug("invokeInitialization "+node+" ... ");}\r
                            Object unwrappedPropertyBean = invokeInitialization(bean, propertyDescriptor);\r
                            if (logger.isDebugEnabled()){logger.debug("invokeInitialization "+node+" - DONE ");}\r
-                               \r
+                               //TODO continue\r
+//                         node.addBean(unwrappedPropertyBean);\r
+                           \r
                            // [2.b]\r
                            // recurse into nested properties\r
                            if(unwrappedPropertyBean != null ){\r
index eaa750e7712ee55d3cb8b957484e68e359acd9f4..926cc75d3fae98549bd49559a21ad487b344dbe0 100644 (file)
@@ -32,7 +32,17 @@ public class BeanInitNode implements Comparable<BeanInitNode>{
                this.path = CdmUtils.Nz(part);\r
                this.parent = parent;\r
                if (parent != null){\r
-                       parent.children.put(part, this);\r
+                       addChild(part, this);\r
+               }\r
+       }\r
+\r
+       private void addChild(String part, BeanInitNode child) {\r
+               children.put(part, child);\r
+               if (child.isWildcard()){\r
+                       if (part.equals(AbstractBeanInitializer.LOAD_2ONE_2MANY_WILDCARD)){\r
+                               this.isToManyInitialized = true;\r
+                       }\r
+                       this.isToOneInitialized = true;\r
                }\r
        }\r
 \r