Author: veithen
Date: Mon Dec 16 17:08:03 2013
New Revision: 1551266
URL: http://svn.apache.org/r1551266
Log:
Deprecated SAXOMBuilder and OMResult. Instead, OMContainer#getSAXResult()
should be used.
Added:
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContentHandler.java
- copied, changed from r1551253,
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/OMContentHandler.java
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/factory/SAXOMBuilder.java
- copied, changed from r1551253,
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java
webservices/axiom/trunk/modules/axiom-compat/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java
(contents, props changed)
- copied, changed from r1460240,
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java
webservices/axiom/trunk/modules/axiom-compat/src/main/java/org/apache/axiom/om/impl/jaxp/OMResult.java
- copied, changed from r1551197,
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/jaxp/OMResult.java
webservices/axiom/trunk/modules/axiom-compat/src/test/java/org/apache/axiom/om/impl/jaxp/
webservices/axiom/trunk/modules/axiom-compat/src/test/java/org/apache/axiom/om/impl/jaxp/StreamSourceToOMResultTest.java
- copied, changed from r1551197,
webservices/axiom/trunk/modules/axiom-api/src/test/java/org/apache/axiom/om/impl/jaxp/StreamSourceToOMResultTestCase.java
Removed:
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/OMContentHandler.java
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/jaxp/
webservices/axiom/trunk/modules/axiom-api/src/test/java/org/apache/axiom/om/impl/jaxp/
webservices/axiom/trunk/modules/axiom-dom/src/test/java/org/apache/axiom/om/impl/jaxp/
webservices/axiom/trunk/modules/axiom-impl/src/test/java/org/apache/axiom/om/impl/jaxp/
Modified:
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/BuilderUtil.java
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/SAXResultContentHandler.java
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/factory/AbstractOMMetaFactory.java
webservices/axiom/trunk/modules/axiom-compat/pom.xml
Modified:
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/BuilderUtil.java
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/BuilderUtil.java?rev=1551266&r1=1551265&r2=1551266&view=diff
==============================================================================
---
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/BuilderUtil.java
(original)
+++
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/BuilderUtil.java
Mon Dec 16 17:08:03 2013
@@ -22,10 +22,13 @@ import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.om.impl.OMElementEx;
-class BuilderUtil {
+/**
+ * For internal use only.
+ */
+public class BuilderUtil {
private BuilderUtil() {}
- static void setNamespace(OMElement element, String namespaceURI, String
prefix, boolean namespaceURIInterning) {
+ public static void setNamespace(OMElement element, String namespaceURI,
String prefix, boolean namespaceURIInterning) {
if (prefix == null) {
prefix = "";
}
Copied:
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContentHandler.java
(from r1551253,
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/OMContentHandler.java)
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContentHandler.java?p2=webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContentHandler.java&p1=webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/OMContentHandler.java&r1=1551253&r2=1551266&rev=1551266&view=diff
==============================================================================
---
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/OMContentHandler.java
(original)
+++
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContentHandler.java
Mon Dec 16 17:08:03 2013
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.axiom.om.impl.builder;
+package org.apache.axiom.om.impl.common;
import org.apache.axiom.om.OMAttribute;
import org.apache.axiom.om.OMContainer;
Modified:
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/SAXResultContentHandler.java
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/SAXResultContentHandler.java?rev=1551266&r1=1551265&r2=1551266&view=diff
==============================================================================
---
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/SAXResultContentHandler.java
(original)
+++
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/SAXResultContentHandler.java
Mon Dec 16 17:08:03 2013
@@ -22,7 +22,6 @@ import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMDocument;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
-import org.apache.axiom.om.impl.builder.OMContentHandler;
public class SAXResultContentHandler extends OMContentHandler {
private final OMContainer root;
Modified:
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/factory/AbstractOMMetaFactory.java
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/factory/AbstractOMMetaFactory.java?rev=1551266&r1=1551265&r2=1551266&view=diff
==============================================================================
---
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/factory/AbstractOMMetaFactory.java
(original)
+++
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/factory/AbstractOMMetaFactory.java
Mon Dec 16 17:08:03 2013
@@ -31,7 +31,6 @@ import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMMetaFactory;
import org.apache.axiom.om.OMXMLParserWrapper;
-import org.apache.axiom.om.impl.builder.SAXOMBuilder;
import org.apache.axiom.om.impl.builder.StAXOMBuilder;
import org.apache.axiom.om.impl.builder.XOPAwareStAXOMBuilder;
import org.apache.axiom.om.util.StAXParserConfiguration;
Copied:
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/factory/SAXOMBuilder.java
(from r1551253,
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java)
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/factory/SAXOMBuilder.java?p2=webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/factory/SAXOMBuilder.java&p1=webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java&r1=1551253&r2=1551266&rev=1551266&view=diff
==============================================================================
---
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java
(original)
+++
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/factory/SAXOMBuilder.java
Mon Dec 16 17:08:03 2013
@@ -17,18 +17,19 @@
* under the License.
*/
-package org.apache.axiom.om.impl.builder;
+package org.apache.axiom.om.impl.common.factory;
-import org.apache.axiom.om.OMAbstractFactory;
import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMDocument;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
-import org.apache.axiom.om.OMXMLBuilderFactory;
import org.apache.axiom.om.OMXMLParserWrapper;
import org.apache.axiom.om.impl.OMContainerEx;
import org.apache.axiom.om.impl.OMElementEx;
+import org.apache.axiom.om.impl.builder.BuilderUtil;
+import org.apache.axiom.om.impl.builder.OMFactoryEx;
+import org.apache.axiom.om.impl.common.OMContentHandler;
import org.xml.sax.SAXException;
import org.xml.sax.XMLReader;
@@ -43,37 +44,12 @@ public class SAXOMBuilder extends OMCont
private final OMFactoryEx factory;
- /**
- * For internal use only.
- *
- * @param factory
- * @param source
- * @param expandEntityReferences
- */
public SAXOMBuilder(OMFactory factory, SAXSource source, boolean
expandEntityReferences) {
super(expandEntityReferences);
this.factory = (OMFactoryEx)factory;
this.source = source;
}
- /**
- * @deprecated Instead of creating an instance of this class directly,
create a
- * {@link SAXSource} and use
- * {@link OMXMLBuilderFactory#createOMBuilder(OMFactory,
SAXSource, boolean)}.
- */
- public SAXOMBuilder(OMFactory factory) {
- this(factory, null, true);
- }
-
- /**
- * @deprecated Instead of creating an instance of this class directly,
create a
- * {@link SAXSource} and use
- * {@link OMXMLBuilderFactory#createOMBuilder(SAXSource,
boolean)}.
- */
- public SAXOMBuilder() {
- this(OMAbstractFactory.getOMFactory());
- }
-
protected OMContainer doStartDocument() {
document = factory.createOMDocument(this);
return document;
@@ -113,22 +89,6 @@ public class SAXOMBuilder extends OMCont
}
}
- /**
- * Get the root element of the Axiom tree built by this content handler.
- *
- * @deprecated
- * @return the root element of the tree
- * @throws OMException if the tree is not complete
- */
- public OMElement getRootElement() {
- OMElement root = getDocumentElement();
- if (root != null && root.isComplete()) {
- return root;
- } else {
- throw new OMException("Tree not complete");
- }
- }
-
public int next() throws OMException {
throw new UnsupportedOperationException();
}
Modified: webservices/axiom/trunk/modules/axiom-compat/pom.xml
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-compat/pom.xml?rev=1551266&r1=1551265&r2=1551266&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-compat/pom.xml (original)
+++ webservices/axiom/trunk/modules/axiom-compat/pom.xml Mon Dec 16 17:08:03
2013
@@ -50,6 +50,12 @@
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
+ <artifactId>axiom-testutils</artifactId>
+ <version>${project.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
<artifactId>axiom-impl</artifactId>
<version>${project.version}</version>
<scope>test</scope>
@@ -77,6 +83,11 @@
<artifactId>xmlunit</artifactId>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>xalan</groupId>
+ <artifactId>xalan</artifactId>
+ <scope>test</scope>
+ </dependency>
</dependencies>
<build>
<plugins>
Copied:
webservices/axiom/trunk/modules/axiom-compat/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java
(from r1460240,
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java)
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-compat/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java?p2=webservices/axiom/trunk/modules/axiom-compat/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java&p1=webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java&r1=1460240&r2=1551266&rev=1551266&view=diff
==============================================================================
---
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java
(original)
+++
webservices/axiom/trunk/modules/axiom-compat/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java
Mon Dec 16 17:08:03 2013
@@ -21,6 +21,7 @@ package org.apache.axiom.om.impl.builder
import org.apache.axiom.om.OMAbstractFactory;
import org.apache.axiom.om.OMAttribute;
+import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMDocument;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMException;
@@ -32,6 +33,7 @@ import org.apache.axiom.om.OMXMLParserWr
import org.apache.axiom.om.impl.OMContainerEx;
import org.apache.axiom.om.impl.OMElementEx;
import org.xml.sax.Attributes;
+import org.xml.sax.ContentHandler;
import org.xml.sax.Locator;
import org.xml.sax.SAXException;
import org.xml.sax.XMLReader;
@@ -44,8 +46,21 @@ import java.util.HashMap;
import java.util.Map;
import javax.xml.XMLConstants;
+import javax.xml.transform.sax.SAXResult;
import javax.xml.transform.sax.SAXSource;
+/**
+ * @deprecated To build an Axiom tree from SAX events, either use
+ * {@link OMXMLBuilderFactory#createOMBuilder(SAXSource, boolean)}
(if a
+ * {@link SAXSource} is available or can be easily constructed),
or create an
+ * {@link OMDocument} (using {@link OMFactory#createOMDocument()})
and use
+ * {@link OMContainer#getSAXResult()} to create a {@link
SAXResult} for that document.
+ * After writing the SAX events to the {@link SAXResult}, the root
element of the
+ * resulting tree can be retrieved using {@link
OMDocument#getOMDocumentElement()}. If
+ * the application code doesn't support {@link SAXResult} and
needs to interface with a
+ * {@link ContentHandler} directly, use {@link
SAXResult#getHandler()} on the
+ * {@link SAXResult} returned by {@link
OMContainer#getSAXResult()}.
+ */
public class SAXOMBuilder extends DefaultHandler implements LexicalHandler,
DeclHandler, OMXMLParserWrapper {
private final SAXSource source;
private final boolean expandEntityReferences;
@@ -93,33 +108,16 @@ public class SAXOMBuilder extends Defaul
private boolean inEntityReference;
private int entityReferenceDepth;
- /**
- * For internal use only.
- *
- * @param factory
- * @param source
- * @param expandEntityReferences
- */
- public SAXOMBuilder(OMFactory factory, SAXSource source, boolean
expandEntityReferences) {
+ private SAXOMBuilder(OMFactory factory, SAXSource source, boolean
expandEntityReferences) {
this.factory = (OMFactoryEx)factory;
this.source = source;
this.expandEntityReferences = expandEntityReferences;
}
- /**
- * @deprecated Instead of creating an instance of this class directly,
create a
- * {@link SAXSource} and use
- * {@link OMXMLBuilderFactory#createOMBuilder(OMFactory,
SAXSource, boolean)}.
- */
public SAXOMBuilder(OMFactory factory) {
this(factory, null, true);
}
- /**
- * @deprecated Instead of creating an instance of this class directly,
create a
- * {@link SAXSource} and use
- * {@link OMXMLBuilderFactory#createOMBuilder(SAXSource,
boolean)}.
- */
public SAXOMBuilder() {
this(OMAbstractFactory.getOMFactory());
}
Propchange:
webservices/axiom/trunk/modules/axiom-compat/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
webservices/axiom/trunk/modules/axiom-compat/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Dec 16 17:08:03 2013
@@ -0,0 +1,12 @@
+/webservices/axiom/branches/AXIOM-201/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java:1183599-1433135
+/webservices/axiom/branches/AXIOM-399/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java:1329379-1331100
+/webservices/axiom/branches/AXIOM-412/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java:1311325-1325526
+/webservices/axiom/branches/AXIOM-420/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java:1334121-1336372
+/webservices/axiom/branches/AXIOM-435/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java:1361507-1366198
+/webservices/axiom/branches/AXIOM-437/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java:1364041-1364239
+/webservices/axiom/branches/CHECK_PARENT_BUG/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java:1338398-1338886
+/webservices/axiom/branches/CLONE/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java:1337822-1339011
+/webservices/axiom/branches/CLONE_NODE/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java:1346607-1353106
+/webservices/axiom/branches/JAXB2_DS/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java:1366463-1367737
+/webservices/axiom/branches/namespaceURIInterning/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java:1293148-1293587
+/webservices/axiom/branches/osgi-redesign/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/builder/SAXOMBuilder.java:1180368-1180596
Copied:
webservices/axiom/trunk/modules/axiom-compat/src/main/java/org/apache/axiom/om/impl/jaxp/OMResult.java
(from r1551197,
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/jaxp/OMResult.java)
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-compat/src/main/java/org/apache/axiom/om/impl/jaxp/OMResult.java?p2=webservices/axiom/trunk/modules/axiom-compat/src/main/java/org/apache/axiom/om/impl/jaxp/OMResult.java&p1=webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/jaxp/OMResult.java&r1=1551197&r2=1551266&rev=1551266&view=diff
==============================================================================
---
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/om/impl/jaxp/OMResult.java
(original)
+++
webservices/axiom/trunk/modules/axiom-compat/src/main/java/org/apache/axiom/om/impl/jaxp/OMResult.java
Mon Dec 16 17:08:03 2013
@@ -22,18 +22,15 @@ package org.apache.axiom.om.impl.jaxp;
import javax.xml.transform.sax.SAXResult;
import org.apache.axiom.om.OMAbstractFactory;
+import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMDocument;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.impl.builder.SAXOMBuilder;
/**
- * Implementation of {@link javax.xml.transform.Result} for AXIOM.
- * The implementation is based on {@link SAXResult} and transforms the stream
- * of SAX events to an AXIOM tree using {@link SAXOMBuilder}.
- * <p>
- * Note that building {@link org.apache.axiom.om.OMDocType} nodes from DTD
information is
- * not supported.
+ * @deprecated In order to create a {@link SAXResult} that builds an Axiom
tree, create an
+ * {@link OMDocument} instance and call {@link
OMContainer#getSAXResult()} on it.
*/
public class OMResult extends SAXResult {
private final SAXOMBuilder builder;
Copied:
webservices/axiom/trunk/modules/axiom-compat/src/test/java/org/apache/axiom/om/impl/jaxp/StreamSourceToOMResultTest.java
(from r1551197,
webservices/axiom/trunk/modules/axiom-api/src/test/java/org/apache/axiom/om/impl/jaxp/StreamSourceToOMResultTestCase.java)
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-compat/src/test/java/org/apache/axiom/om/impl/jaxp/StreamSourceToOMResultTest.java?p2=webservices/axiom/trunk/modules/axiom-compat/src/test/java/org/apache/axiom/om/impl/jaxp/StreamSourceToOMResultTest.java&p1=webservices/axiom/trunk/modules/axiom-api/src/test/java/org/apache/axiom/om/impl/jaxp/StreamSourceToOMResultTestCase.java&r1=1551197&r2=1551266&rev=1551266&view=diff
==============================================================================
---
webservices/axiom/trunk/modules/axiom-api/src/test/java/org/apache/axiom/om/impl/jaxp/StreamSourceToOMResultTestCase.java
(original)
+++
webservices/axiom/trunk/modules/axiom-compat/src/test/java/org/apache/axiom/om/impl/jaxp/StreamSourceToOMResultTest.java
Mon Dec 16 17:08:03 2013
@@ -21,47 +21,47 @@ package org.apache.axiom.om.impl.jaxp;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
-import javax.xml.transform.TransformerFactory;
import javax.xml.transform.stream.StreamSource;
import junit.framework.TestSuite;
-import org.apache.axiom.om.AbstractTestCase;
+import org.apache.axiom.om.OMAbstractFactory;
import org.apache.axiom.om.OMMetaFactory;
import org.apache.axiom.testutils.XMLAssertEx;
import org.apache.axiom.testutils.conformance.ConformanceTestFile;
+import org.apache.axiom.testutils.suite.MatrixTestCase;
+import org.apache.xalan.processor.TransformerFactoryImpl;
-public class StreamSourceToOMResultTestCase extends AbstractTestCase {
+public class StreamSourceToOMResultTest extends MatrixTestCase {
+ private static final String[] axiomImplementations = { "default", "dom" };
+
private final OMMetaFactory omMetaFactory;
- private final TransformerFactory transformerFactory;
private final ConformanceTestFile file;
- private StreamSourceToOMResultTestCase(OMMetaFactory omMetaFactory,
- TransformerFactory transformerFactory, String name,
ConformanceTestFile file) {
- super(name);
- this.omMetaFactory = omMetaFactory;
- this.transformerFactory = transformerFactory;
+ private StreamSourceToOMResultTest(String axiomImplementation,
ConformanceTestFile file) {
+ omMetaFactory = OMAbstractFactory.getMetaFactory(axiomImplementation);
this.file = file;
+ addTestParameter("axiomImplementation", axiomImplementation);
+ addTestParameter("file", file.getShortName());
}
protected void runTest() throws Throwable {
StreamSource source = new StreamSource(file.getUrl().toString());
OMResult result = new OMResult(omMetaFactory.getOMFactory());
- transformerFactory.newTransformer().transform(source, result);
+ new TransformerFactoryImpl().newTransformer().transform(source,
result);
ByteArrayOutputStream out = new ByteArrayOutputStream();
result.getDocument().serialize(out);
XMLAssertEx.assertXMLIdentical(file.getUrl(),
new ByteArrayInputStream(out.toByteArray()), true);
}
- public static TestSuite suite(OMMetaFactory omMetaFactory,
- TransformerFactory transformerFactory) throws Exception {
+ public static TestSuite suite() {
TestSuite suite = new TestSuite();
ConformanceTestFile[] files =
ConformanceTestFile.getConformanceTestFiles();
- for (int i=0; i<files.length; i++) {
- ConformanceTestFile file = files[i];
- suite.addTest(new StreamSourceToOMResultTestCase(omMetaFactory,
transformerFactory,
- file.getShortName(), file));
+ for (int i=0; i<axiomImplementations.length; i++) {
+ for (int j=0; j<files.length; j++) {
+ suite.addTest(new
StreamSourceToOMResultTest(axiomImplementations[i], files[j]));
+ }
}
return suite;
}