aboutsummaryrefslogtreecommitdiff
path: root/tests/src
diff options
context:
space:
mode:
authorGunhyeong Kim <gunhyeong@google.com>2018-08-16 14:30:29 +0900
committerGunhyeong Kim <gunhyeong@google.com>2018-08-16 15:48:41 +0900
commit9ec206652d5991a2122efcf497d2fa8954e8e7c7 (patch)
tree212b7a4f59093488638a4ab9fc3dd41e2c8c1581 /tests/src
parent9dd7e187ed98021ea9cae567772eda40f512e598 (diff)
downloadxsdc-9ec206652d5991a2122efcf497d2fa8954e8e7c7.tar.gz
use SAXParser instead of XMLPullParser in the host side
This removes dependency to libcore. Bug: 80453829 Test: execute 'm -j xsdc', 'm -j xsdc-tests' Change-Id: I062f6e9c6b7efac9fb987bb38ed4a723ef2cdefb
Diffstat (limited to 'tests/src')
-rw-r--r--tests/src/com/android/xsdc/tests/TestHelper.java16
1 files changed, 11 insertions, 5 deletions
diff --git a/tests/src/com/android/xsdc/tests/TestHelper.java b/tests/src/com/android/xsdc/tests/TestHelper.java
index 4a67b93..4dd48a7 100644
--- a/tests/src/com/android/xsdc/tests/TestHelper.java
+++ b/tests/src/com/android/xsdc/tests/TestHelper.java
@@ -1,13 +1,14 @@
package com.android.xsdc.tests;
import com.android.xsdc.XmlSchema;
-import com.android.xsdc.XsdParser;
-import com.android.xsdc.XsdParserException;
+import com.android.xsdc.XsdHandler;
import com.android.xsdc.descriptor.ClassDescriptor;
import com.android.xsdc.descriptor.SchemaDescriptor;
-import org.xmlpull.v1.XmlPullParserException;
import javax.tools.*;
+import javax.xml.parsers.SAXParser;
+import javax.xml.parsers.SAXParserFactory;
+
import java.io.*;
import java.net.URI;
import java.util.ArrayList;
@@ -77,8 +78,13 @@ class TestHelper {
final static String packageName = "test";
- static TestCompilationResult parseXsdAndCompile(InputStream in) throws IOException, XmlPullParserException, XsdParserException, ClassNotFoundException {
- XmlSchema schema = XsdParser.parse(in);
+ static TestCompilationResult parseXsdAndCompile(InputStream in) throws Exception {
+ SAXParserFactory factory = SAXParserFactory.newInstance();
+ factory.setNamespaceAware(true);
+ SAXParser parser = factory.newSAXParser();
+ XsdHandler xsdHandler = new XsdHandler();
+ parser.parse(in, xsdHandler);
+ XmlSchema schema = xsdHandler.getSchema();
List<JavaFileObject> javaFileObjects = new ArrayList<>();
SchemaDescriptor schemaDescriptor = schema.explain();
for (ClassDescriptor descriptor : schemaDescriptor.getClassDescriptorMap().values()) {