[jboss-svn-commits] JBoss Common SVN: r1998 - jbossxb/trunk/src/main/java/org/jboss/xb/binding/sunday/unmarshalling
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Aug 30 03:30:16 EDT 2006
Author: alex.loubyansky at jboss.com
Date: 2006-08-30 03:30:15 -0400 (Wed, 30 Aug 2006)
New Revision: 1998
Modified:
jbossxb/trunk/src/main/java/org/jboss/xb/binding/sunday/unmarshalling/JBXB76ContentHandler.java
Log:
duplicate startRepeatableParticle for the same element particle
Modified: jbossxb/trunk/src/main/java/org/jboss/xb/binding/sunday/unmarshalling/JBXB76ContentHandler.java
===================================================================
--- jbossxb/trunk/src/main/java/org/jboss/xb/binding/sunday/unmarshalling/JBXB76ContentHandler.java 2006-08-29 18:45:01 UTC (rev 1997)
+++ jbossxb/trunk/src/main/java/org/jboss/xb/binding/sunday/unmarshalling/JBXB76ContentHandler.java 2006-08-30 07:30:15 UTC (rev 1998)
@@ -286,7 +286,7 @@
endRepeatableParticle(prevParticle);
}
- if(curParticle.isRepeatable())
+ if(newCursors.size() > 1 && curParticle.isRepeatable())
{
startRepeatableParticle(startName, curParticle);
}
@@ -574,20 +574,48 @@
/*
StackItem item = stack.peek();
+ TermBinding parentTerm = item.particle.getTerm();
+ WildcardBinding wc = null;
+ if(parentTerm.isWildcard())
+ {
+ wc = (WildcardBinding)parentTerm;
+ }
+ else if(!parentTerm.isModelGroup())
+ {
+ ElementBinding el = (ElementBinding)parentTerm;
+ wc = el.getType().getWildcard();
+ if(wc != null && el.getType().getElement(startName) != null)
+ {
+ wc = null;
+ }
+ }
+
+ TermBinding term = particle.getTerm();
+ if(term.getAddMethodMetaData() != null ||
+ wc != null && wc.getAddMethodMetaData() != null ||
+ term.getPutMethodMetaData() != null ||
+ term.getMapEntryMetaData() != null)
+ {
+ return;
+ }
+
item.tmp = item.o;
item.o = new ArrayList();
item.repeatbleParticleName = startName;
- //System.out.println(" parent: " + item);
+
*/
}
private void endRepeatableParticle(ParticleBinding particle)
{
//System.out.println(" end repeatable particle: " + particle.getTerm());
+
/*
StackItem item = stack.peek();
- System.out.println(" " + item.o);
- System.out.println(" " + item.tmp);
+ if(item.repeatbleParticleName == null)
+ {
+ return;
+ }
TermBinding term = particle.getTerm();
ParticleHandler handler = null;
More information about the jboss-svn-commits
mailing list