Repository: incubator-juneau Updated Branches: refs/heads/master 89e052626 -> 657fb5e07
Fold XmlParser.doParseArgs() into parseAnything(). Project: http://git-wip-us.apache.org/repos/asf/incubator-juneau/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-juneau/commit/657fb5e0 Tree: http://git-wip-us.apache.org/repos/asf/incubator-juneau/tree/657fb5e0 Diff: http://git-wip-us.apache.org/repos/asf/incubator-juneau/diff/657fb5e0 Branch: refs/heads/master Commit: 657fb5e07863f0407e1372756eb9d37de21db07e Parents: 89e0526 Author: JamesBognar <[email protected]> Authored: Wed Mar 29 14:22:19 2017 -0400 Committer: JamesBognar <[email protected]> Committed: Wed Mar 29 14:22:19 2017 -0400 ---------------------------------------------------------------------- .../java/org/apache/juneau/xml/XmlParser.java | 29 ++++---------------- 1 file changed, 5 insertions(+), 24 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/657fb5e0/juneau-core/src/main/java/org/apache/juneau/xml/XmlParser.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/xml/XmlParser.java b/juneau-core/src/main/java/org/apache/juneau/xml/XmlParser.java index 69c5baf..1aba943 100644 --- a/juneau-core/src/main/java/org/apache/juneau/xml/XmlParser.java +++ b/juneau-core/src/main/java/org/apache/juneau/xml/XmlParser.java @@ -228,14 +228,15 @@ public class XmlParser extends ReaderParser { return m; } - private <E> Collection<E> parseIntoCollection(XmlParserSession session, XMLStreamReader r, Collection<E> l, ClassMeta<E> type, BeanPropertyMeta pMeta) throws Exception { + private <E> Collection<E> parseIntoCollection(XmlParserSession session, XMLStreamReader r, Collection<E> l, ClassMeta<?> type, BeanPropertyMeta pMeta) throws Exception { int depth = 0; + int argIndex = 0; do { - int argIndex = 0; int event = r.nextTag(); if (event == START_ELEMENT) { depth++; - E value = (E)parseAnything(session, type == null ? object() : type.isArgs() ? type.getArg(argIndex++) : type.getElementType(), null, r, l, false, pMeta); + ClassMeta<?> elementType = type == null ? object() : type.isArgs() ? type.getArg(argIndex++) : type.getElementType(); + E value = (E)parseAnything(session, elementType, null, r, l, false, pMeta); l.add(value); } else if (event == END_ELEMENT) { depth--; @@ -245,25 +246,6 @@ public class XmlParser extends ReaderParser { return l; } - private Object[] doParseArgs(XmlParserSession session, XMLStreamReader r, ClassMeta<Object[]> args) throws Exception { - int depth = 0; - ClassMeta<?>[] argTypes = args.getArgs(); - Object[] o = new Object[argTypes.length]; - int i = 0; - do { - int event = r.nextTag(); - if (event == START_ELEMENT) { - depth++; - o[i] = parseAnything(session, argTypes[i], null, r, null, false, null); - i++; - } else if (event == END_ELEMENT) { - depth--; - return o; - } - } while (depth > 0); - return o; - } - private static int getJsonType(String s) { if (s == null) return UNKNOWN; @@ -540,7 +522,6 @@ public class XmlParser extends ReaderParser { @Override /* ReaderParser */ protected Object[] doParseArgs(ParserSession session, ClassMeta<Object[]> args) throws Exception { XmlParserSession s = (XmlParserSession)session; - return doParseArgs(s, s.getXmlStreamReader(), args); - //return parseAnything(s, args, null, s.getXmlStreamReader(), session.getOuter(), true, null); + return parseAnything(s, args, null, s.getXmlStreamReader(), session.getOuter(), true, null); } }
