You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juneau.apache.org by ja...@apache.org on 2017/03/29 18:22:21 UTC

incubator-juneau git commit: Fold XmlParser.doParseArgs() into parseAnything().

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 <ja...@apache.org>
Authored: Wed Mar 29 14:22:19 2017 -0400
Committer: JamesBognar <ja...@apache.org>
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);
 	}
 }