[jboss-svn-commits] JBoss Common SVN: r2644 - jbossxb/trunk/src/main/java/org/jboss/xb/builder/runtime.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Oct 18 10:43:47 EDT 2007


Author: alex.loubyansky at jboss.com
Date: 2007-10-18 10:43:47 -0400 (Thu, 18 Oct 2007)
New Revision: 2644

Modified:
   jbossxb/trunk/src/main/java/org/jboss/xb/builder/runtime/BeanHandler.java
Log:
apply valueHandler to collection items if the property handler is a CollectionPropertyHandler

Modified: jbossxb/trunk/src/main/java/org/jboss/xb/builder/runtime/BeanHandler.java
===================================================================
--- jbossxb/trunk/src/main/java/org/jboss/xb/builder/runtime/BeanHandler.java	2007-10-15 13:54:03 UTC (rev 2643)
+++ jbossxb/trunk/src/main/java/org/jboss/xb/builder/runtime/BeanHandler.java	2007-10-18 14:43:47 UTC (rev 2644)
@@ -184,23 +184,26 @@
          return;
       }
 
-      // TODO looks like value adapter should be used earlier in the stack
-      if(valueAdapter != null)
+      if(particle.isRepeatable() && propertyHandler instanceof CollectionPropertyHandler)
       {
-         o = valueAdapter.cast(o, null/*propertyHandler.getPropertyType().getType()*/);
-      }
-
-      if(particle.isRepeatable() && o instanceof java.util.Collection)
-      {
          // TODO this is not optimal!
          // repeatable particles are collected into java.util.Collection
          for(Object item : (java.util.Collection)o)
          {
+            if(valueAdapter != null)
+            {
+               o = valueAdapter.cast(item, null/*propertyHandler.getPropertyType().getType()*/);
+            }
             propertyHandler.doHandle(beanAdapter, item, qName);
          }
       }
       else
       {
+         // TODO looks like value adapter should be used earlier in the stack
+         if(valueAdapter != null)
+         {
+            o = valueAdapter.cast(o, null/*propertyHandler.getPropertyType().getType()*/);
+         }
          propertyHandler.doHandle(beanAdapter, o, qName);
       }
    }




More information about the jboss-svn-commits mailing list