[jboss-svn-commits] JBoss Common SVN: r2976 - in jbossxb/trunk/src: test/java/org/jboss/test/xb/builder/object/element/wrapper/test and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Feb 11 05:19:40 EST 2009
Author: alex.loubyansky at jboss.com
Date: 2009-02-11 05:19:40 -0500 (Wed, 11 Feb 2009)
New Revision: 2976
Modified:
jbossxb/trunk/src/main/java/org/jboss/xb/builder/JBossXBNoSchemaBuilder.java
jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/element/wrapper/test/WrapperUnitTestCase.java
jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/collection/test/AbstractCollectionTest.java
jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/collection/test/ArrayUnitTestCase.java
Log:
JBXB-177
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-08 17:38:09 UTC (rev 2975)
+++ jbossxb/trunk/src/main/java/org/jboss/xb/builder/JBossXBNoSchemaBuilder.java 2009-02-11 10:19:40 UTC (rev 2976)
@@ -1320,7 +1320,6 @@
{
if (trace)
log.trace("Property " + property.getName() + " is a collection");
- localModel = createCollection(localModel);
JBossXmlCollection xmlCol = property.getUnderlyingAnnotation(JBossXmlCollection.class);
if (xmlCol != null)
@@ -1403,7 +1402,7 @@
choice.setHandler(BuilderParticleHandler.INSTANCE);
ParticleBinding particleBinding = new ParticleBinding(choice);
particleBinding.setMinOccurs(0);
- particleBinding.setMaxOccurs(1);
+ particleBinding.setMaxOccursUnbounded(true);
localModel.addParticle(particleBinding);
localModel = choice;
if (trace)
@@ -1654,7 +1653,7 @@
targetGroup.addParticle(particle);
targetGroup = (ModelGroupBinding) wrapperType.getParticle().getTerm();
}
-
+
QName boundQName = bindMapProperty(property, (ClassInfo) localPropertyType, propertyQName, targetGroup);
if(boundQName != null)
{
@@ -1910,7 +1909,7 @@
ElementBinding wrapperElement = createElementBinding(propertyType, wrapperType, wrapperQName, false);
wrapperElement.setNillable(wrapperNillable);
wrapperElement.setSkip(Boolean.TRUE);
- particle = new ParticleBinding(wrapperElement, 1, 1, false);
+ particle = new ParticleBinding(wrapperElement, 1, 1, propertyType.isCollection());
parentModel.addParticle(particle);
return seq;
}
Modified: jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/element/wrapper/test/WrapperUnitTestCase.java
===================================================================
--- jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/element/wrapper/test/WrapperUnitTestCase.java 2009-02-08 17:38:09 UTC (rev 2975)
+++ jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/element/wrapper/test/WrapperUnitTestCase.java 2009-02-11 10:19:40 UTC (rev 2976)
@@ -20,7 +20,7 @@
public void testFooWrapper()
throws Exception
{
- enableTrace("org.jboss.xb");
+ //enableTrace("org.jboss.xb");
Foo foo = unmarshalObject(Foo.class);
List<Number> items = foo.getItems();
assertEquals(4, items.size());
Modified: jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/collection/test/AbstractCollectionTest.java
===================================================================
--- jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/collection/test/AbstractCollectionTest.java 2009-02-08 17:38:09 UTC (rev 2975)
+++ jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/collection/test/AbstractCollectionTest.java 2009-02-11 10:19:40 UTC (rev 2976)
@@ -30,6 +30,8 @@
import org.jboss.test.xb.builder.AbstractBuilderTest;
import org.jboss.test.xb.builder.object.type.collection.support.Root;
import org.jboss.xb.binding.sunday.unmarshalling.ElementBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.ModelGroupBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.ParticleBinding;
import org.jboss.xb.binding.sunday.unmarshalling.SchemaBinding;
import org.jboss.xb.builder.JBossXBBuilder;
@@ -76,6 +78,15 @@
ElementBinding elementBinding = schemaBinding.getElement(elementName);
assertNotNull(elementBinding);
- // TODO check the collection model
+ ModelGroupBinding group = (ModelGroupBinding) elementBinding.getType().getParticle().getTerm();
+ assertRepeatableElementBinding(group);
}
+
+ protected void assertRepeatableElementBinding(ModelGroupBinding group)
+ {
+ assertEquals(1, group.getParticles().size());
+ ParticleBinding p = group.getParticles().iterator().next();
+ assertTrue(p.getMaxOccursUnbounded());
+ assertTrue(p.getTerm().isElement());
+ }
}
Modified: jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/collection/test/ArrayUnitTestCase.java
===================================================================
--- jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/collection/test/ArrayUnitTestCase.java 2009-02-08 17:38:09 UTC (rev 2975)
+++ jbossxb/trunk/src/test/java/org/jboss/test/xb/builder/object/type/collection/test/ArrayUnitTestCase.java 2009-02-11 10:19:40 UTC (rev 2976)
@@ -29,6 +29,8 @@
import org.jboss.test.xb.builder.AbstractBuilderTest;
import org.jboss.test.xb.builder.object.type.collection.support.RootArray;
import org.jboss.xb.binding.sunday.unmarshalling.ElementBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.ModelGroupBinding;
+import org.jboss.xb.binding.sunday.unmarshalling.ParticleBinding;
import org.jboss.xb.binding.sunday.unmarshalling.SchemaBinding;
import org.jboss.xb.builder.JBossXBBuilder;
@@ -68,6 +70,16 @@
ElementBinding elementBinding = schemaBinding.getElement(elementName);
assertNotNull(elementBinding);
- // TODO check the collection model
+ // TODO
+ //ModelGroupBinding group = (ModelGroupBinding) elementBinding.getType().getParticle().getTerm();
+ //assertRepeatableElementBinding(group);
}
+
+ protected void assertRepeatableElementBinding(ModelGroupBinding group)
+ {
+ assertEquals(1, group.getParticles().size());
+ ParticleBinding p = group.getParticles().iterator().next();
+ assertTrue(p.getTerm().isElement());
+ assertTrue(p.getMaxOccursUnbounded());
+ }
}
More information about the jboss-svn-commits
mailing list