[jboss-svn-commits] JBoss Common SVN: r2983 - in jbossxb/trunk/src: test/java/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/support and 2 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Feb 17 09:44:21 EST 2009


Author: alex.loubyansky at jboss.com
Date: 2009-02-17 09:44:21 -0500 (Tue, 17 Feb 2009)
New Revision: 2983

Modified:
   jbossxb/trunk/src/main/java/org/jboss/xb/builder/JBossXBNoSchemaBuilder.java
   jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/support/RootWithPropertiesAll.java
   jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/support/RootWithPropertiesAllCollection.java
   jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/test/JBossXmlModelGroupUnitTestCase.java
   jbossxb/trunk/src/test/resources/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/test/JBossXmlModelGroup_testPropertiesAllCollectionUnmarshalling.xml
   jbossxb/trunk/src/test/resources/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/test/JBossXmlModelGroup_testPropertiesAllUnmarshalling.xml
Log:
JBXB-180 (when the group has already been bound, add it to the parent group before returning from the method)

Modified: jbossxb/trunk/src/main/java/org/jboss/xb/builder/JBossXBNoSchemaBuilder.java
===================================================================
--- jbossxb/trunk/src/main/java/org/jboss/xb/builder/JBossXBNoSchemaBuilder.java	2009-02-17 13:56:53 UTC (rev 2982)
+++ jbossxb/trunk/src/main/java/org/jboss/xb/builder/JBossXBNoSchemaBuilder.java	2009-02-17 14:44:21 UTC (rev 2983)
@@ -1290,7 +1290,7 @@
                propertyHandler = new CollectionPropertyHandler(property, propertyType);
             else
                propertyHandler = new PropertyHandler(property, propertyType);
-            bindModelGroup(propertyXmlModelGroup, property, beanAdapterFactory, propertyHandler, null, parentModel);
+            bindModelGroup(propertyXmlModelGroup, property, beanAdapterFactory, propertyHandler, null, localModel);
             return;
          }
       }
@@ -1696,10 +1696,14 @@
 
       ModelGroupBinding group = null;
       if (groupName != null)
+      {
          group = schemaBinding.getGroup(groupName);
-
-      if(group != null)
-         return group;
+         if(group != null)
+         {
+            parentGroup.addParticle(new ParticleBinding(group, 0, 1, property.getType().isCollection()));
+            return group;
+         }
+      }
       
       String kind = annotation.kind();
       if (kind.equals(JBossXmlConstants.MODEL_GROUP_SEQUENCE))

Modified: jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/support/RootWithPropertiesAll.java
===================================================================
--- jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/support/RootWithPropertiesAll.java	2009-02-17 13:56:53 UTC (rev 2982)
+++ jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/support/RootWithPropertiesAll.java	2009-02-17 14:44:21 UTC (rev 2983)
@@ -22,6 +22,7 @@
 package org.jboss.test.xb.builder.object.type.jbossxmlmodelgroup.support;
 
 import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
 
 /**
  * A RootWithPropertiesSequence.
@@ -30,9 +31,11 @@
  * @version $Revision: 1.1 $
  */
 @XmlRootElement(name="root")
+ at XmlType(propOrder={"group", "prop"})
 public class RootWithPropertiesAll
 {
    private PropertiesAll group;
+   private String prop;
    
    public PropertiesAll getGroup()
    {
@@ -43,4 +46,14 @@
    {
       this.group = group;
    }
+   
+   public String getProp()
+   {
+      return prop;
+   }
+   
+   public void setProp(String prop)
+   {
+      this.prop = prop;
+   }
 }

Modified: jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/support/RootWithPropertiesAllCollection.java
===================================================================
--- jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/support/RootWithPropertiesAllCollection.java	2009-02-17 13:56:53 UTC (rev 2982)
+++ jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/support/RootWithPropertiesAllCollection.java	2009-02-17 14:44:21 UTC (rev 2983)
@@ -24,6 +24,7 @@
 import java.util.List;
 
 import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
 
 /**
  * A RootWithPropertiesSequenceCollection.
@@ -32,9 +33,11 @@
  * @version $Revision: 1.1 $
  */
 @XmlRootElement(name="root")
+ at XmlType(propOrder={"groups", "prop"})
 public class RootWithPropertiesAllCollection
 {
    private List<PropertiesAll> groups;
+   private String prop;
    
    public List<PropertiesAll> getGroups()
    {
@@ -45,4 +48,14 @@
    {
       this.groups = groups;
    }
+   
+   public String getProp()
+   {
+      return prop;
+   }
+   
+   public void setProp(String prop)
+   {
+      this.prop = prop;
+   }
 }

Modified: jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/test/JBossXmlModelGroupUnitTestCase.java
===================================================================
--- jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/test/JBossXmlModelGroupUnitTestCase.java	2009-02-17 13:56:53 UTC (rev 2982)
+++ jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/test/JBossXmlModelGroupUnitTestCase.java	2009-02-17 14:44:21 UTC (rev 2983)
@@ -134,6 +134,7 @@
       assertEquals("a", g.getA());
       assertEquals("b", g.getB());
       assertEquals("c", g.getC());
+      assertEquals("p", o.getProp());
    }
 
    public void testPropertiesAllCollectionUnmarshalling() throws Exception
@@ -417,8 +418,9 @@
       assertTrue(t instanceof SequenceBinding);
       SequenceBinding s = (SequenceBinding) t;
       Collection<ParticleBinding> particles = s.getParticles();
-      assertEquals(1, particles.size());
-      ParticleBinding p = particles.iterator().next();
+      assertEquals(2, particles.size());
+      Iterator<ParticleBinding> i = particles.iterator();
+      ParticleBinding p = i.next();
       t = p.getTerm();
       assertTrue(t instanceof AllBinding);
       //assertEquals(0, p.getMinOccurs());
@@ -439,5 +441,13 @@
          assertTrue(t.isElement());
          assertTrue(set.contains(((ElementBinding) t).getQName()));
       }
+      
+      p = i.next();
+      t = p.getTerm();
+      assertTrue(t.isElement());
+      assertEquals(0, p.getMinOccurs());
+      assertEquals(1, p.getMaxOccurs());
+      assertFalse(p.getMaxOccursUnbounded());
+      assertEquals(new QName("prop"), ((ElementBinding)t).getQName());
    }
 }

Modified: jbossxb/trunk/src/test/resources/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/test/JBossXmlModelGroup_testPropertiesAllCollectionUnmarshalling.xml
===================================================================
--- jbossxb/trunk/src/test/resources/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/test/JBossXmlModelGroup_testPropertiesAllCollectionUnmarshalling.xml	2009-02-17 13:56:53 UTC (rev 2982)
+++ jbossxb/trunk/src/test/resources/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/test/JBossXmlModelGroup_testPropertiesAllCollectionUnmarshalling.xml	2009-02-17 14:44:21 UTC (rev 2983)
@@ -2,4 +2,7 @@
 
 <root>
    <b>b</b>
+   <c>c</c>
+   <b>bb</b>
+   <a>aa</a>
 </root>

Modified: jbossxb/trunk/src/test/resources/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/test/JBossXmlModelGroup_testPropertiesAllUnmarshalling.xml
===================================================================
--- jbossxb/trunk/src/test/resources/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/test/JBossXmlModelGroup_testPropertiesAllUnmarshalling.xml	2009-02-17 13:56:53 UTC (rev 2982)
+++ jbossxb/trunk/src/test/resources/org/jboss/test/xb/builder/object/type/jbossxmlmodelgroup/test/JBossXmlModelGroup_testPropertiesAllUnmarshalling.xml	2009-02-17 14:44:21 UTC (rev 2983)
@@ -4,4 +4,5 @@
    <a>a</a>
    <c>c</c>
    <b>b</b>
+   <prop>p</prop>
 </root>




More information about the jboss-svn-commits mailing list