You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ws.apache.org by ve...@apache.org on 2016/05/05 15:41:29 UTC
svn commit: r1742440 - in /webservices/axiom/trunk: axiom-api/pom.xml
axiom-api/src/main/java/org/apache/axiom/om/ds/AbstractOMDataSource.java
testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/xop/TestSerialize.java
Author: veithen
Date: Thu May 5 15:41:29 2016
New Revision: 1742440
URL: http://svn.apache.org/viewvc?rev=1742440&view=rev
Log:
Avoid instantiations of MTOMXMLStreamWriter outside of om-aspects.
Modified:
webservices/axiom/trunk/axiom-api/pom.xml
webservices/axiom/trunk/axiom-api/src/main/java/org/apache/axiom/om/ds/AbstractOMDataSource.java
webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/xop/TestSerialize.java
Modified: webservices/axiom/trunk/axiom-api/pom.xml
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/axiom-api/pom.xml?rev=1742440&r1=1742439&r2=1742440&view=diff
==============================================================================
--- webservices/axiom/trunk/axiom-api/pom.xml (original)
+++ webservices/axiom/trunk/axiom-api/pom.xml Thu May 5 15:41:29 2016
@@ -321,7 +321,6 @@
org.apache.axiom.om.OMOutputFormat -> org.apache.axiom.om.util.XMLStreamWriterFilter,
org.apache.axiom.om.impl.MTOMXMLStreamWriter -> org.apache.axiom.om.util.XMLStreamWriterFilter,
<!-- StAXUtils is in the wrong package (should be o.a.a.util.stax) -->
- org.apache.axiom.om.ds.AbstractOMDataSource -> org.apache.axiom.om.util.StAXUtils,
org.apache.axiom.om.ds.AbstractPushOMDataSource -> org.apache.axiom.om.util.StAXUtils,
org.apache.axiom.om.ds.BlobOMDataSource -> org.apache.axiom.om.util.StAXUtils,
org.apache.axiom.om.ds.StringOMDataSource -> org.apache.axiom.om.util.StAXUtils,
Modified: webservices/axiom/trunk/axiom-api/src/main/java/org/apache/axiom/om/ds/AbstractOMDataSource.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/axiom-api/src/main/java/org/apache/axiom/om/ds/AbstractOMDataSource.java?rev=1742440&r1=1742439&r2=1742440&view=diff
==============================================================================
--- webservices/axiom/trunk/axiom-api/src/main/java/org/apache/axiom/om/ds/AbstractOMDataSource.java (original)
+++ webservices/axiom/trunk/axiom-api/src/main/java/org/apache/axiom/om/ds/AbstractOMDataSource.java Thu May 5 15:41:29 2016
@@ -31,12 +31,11 @@ import javax.xml.stream.XMLStreamExcepti
import javax.xml.stream.XMLStreamReader;
import javax.xml.stream.XMLStreamWriter;
+import org.apache.axiom.om.OMAbstractFactory;
import org.apache.axiom.om.OMDataSource;
import org.apache.axiom.om.OMDataSourceExt;
import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMOutputFormat;
-import org.apache.axiom.om.impl.MTOMXMLStreamWriter;
-import org.apache.axiom.om.util.StAXUtils;
/**
* Base class for {@link OMDataSourceExt} implementations. This class should only be used by data
@@ -62,18 +61,14 @@ public abstract class AbstractOMDataSour
return properties.put(key, value);
}
+ // Note: this method is never executed by Axiom itself
public final void serialize(OutputStream out, OMOutputFormat format) throws XMLStreamException {
- XMLStreamWriter writer = new MTOMXMLStreamWriter(out, format);
- serialize(writer);
- writer.flush();
+ OMAbstractFactory.getOMFactory().createOMElement(this).serializeAndConsume(out, format);
}
+ // Note: this method is never executed by Axiom itself
public final void serialize(Writer writer, OMOutputFormat format) throws XMLStreamException {
- MTOMXMLStreamWriter xmlWriter =
- new MTOMXMLStreamWriter(StAXUtils.createXMLStreamWriter(writer));
- xmlWriter.setOutputFormat(format);
- serialize(xmlWriter);
- xmlWriter.flush();
+ OMAbstractFactory.getOMFactory().createOMElement(this).serializeAndConsume(writer, format);
}
public final byte[] getXMLBytes(String encoding) throws UnsupportedEncodingException {
Modified: webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/xop/TestSerialize.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/xop/TestSerialize.java?rev=1742440&r1=1742439&r2=1742440&view=diff
==============================================================================
--- webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/xop/TestSerialize.java (original)
+++ webservices/axiom/trunk/testing/axiom-testsuite/src/main/java/org/apache/axiom/ts/om/xop/TestSerialize.java Thu May 5 15:41:29 2016
@@ -27,7 +27,6 @@ import org.apache.axiom.om.OMMetaFactory
import org.apache.axiom.om.OMOutputFormat;
import org.apache.axiom.om.OMXMLBuilderFactory;
import org.apache.axiom.om.OMXMLParserWrapper;
-import org.apache.axiom.om.impl.MTOMXMLStreamWriter;
import org.apache.axiom.om.util.StAXParserConfiguration;
import org.apache.axiom.ts.AxiomTestCase;
import org.apache.axiom.ts.soap.MTOMSample;
@@ -59,12 +58,11 @@ public class TestSerialize extends Axiom
// Write out the message
ByteArrayOutputStream baos = new ByteArrayOutputStream();
- MTOMXMLStreamWriter writer = new MTOMXMLStreamWriter(baos, oof);
OMXMLParserWrapper builder =
OMXMLBuilderFactory.createOMBuilder(metaFactory.getOMFactory(), StAXParserConfiguration.DEFAULT, attachments);
OMElement om = builder.getDocumentElement();
- om.serialize(writer);
+ om.serialize(baos, oof);
om.close(false);
String out = baos.toString();