You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by ve...@apache.org on 2016/05/05 08:24:51 UTC
svn commit: r1742375 - in /axis/axis2/java/core/trunk/modules/adb:
src/org/apache/axis2/databinding/utils/reader/ADBXMLStreamReaderImpl.java
test/org/apache/axis2/databinding/utils/reader/ADBXMLStreamReaderTest.java
Author: veithen
Date: Thu May 5 08:24:51 2016
New Revision: 1742375
URL: http://svn.apache.org/viewvc?rev=1742375&view=rev
Log:
Eliminate usages of deprecated Axiom APIs.
Modified:
axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/utils/reader/ADBXMLStreamReaderImpl.java
axis/axis2/java/core/trunk/modules/adb/test/org/apache/axis2/databinding/utils/reader/ADBXMLStreamReaderTest.java
Modified: axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/utils/reader/ADBXMLStreamReaderImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/utils/reader/ADBXMLStreamReaderImpl.java?rev=1742375&r1=1742374&r2=1742375&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/utils/reader/ADBXMLStreamReaderImpl.java (original)
+++ axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/utils/reader/ADBXMLStreamReaderImpl.java Thu May 5 08:24:51 2016
@@ -24,7 +24,6 @@ import org.apache.axiom.ext.stax.datahan
import org.apache.axiom.om.OMAttribute;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMNamespace;
-import org.apache.axiom.om.impl.util.OMSerializerUtil;
import org.apache.axiom.util.stax.XMLStreamReaderUtils;
import org.apache.axis2.databinding.typemapping.SimpleTypeMapper;
import org.apache.axis2.databinding.utils.BeanUtil;
@@ -37,6 +36,7 @@ import javax.xml.namespace.QName;
import javax.xml.stream.Location;
import javax.xml.stream.XMLStreamException;
import java.util.*;
+import java.util.concurrent.atomic.AtomicInteger;
import java.lang.reflect.Array;
/**
@@ -61,7 +61,8 @@ import java.lang.reflect.Array;
* <p/>
*/
public class ADBXMLStreamReaderImpl implements ADBXMLStreamReader, DataHandlerReader {
-
+ private static final AtomicInteger nsPrefix = new AtomicInteger();
+
private Object[] properties;
private Object[] attributes;
private QName elementQName;
@@ -131,7 +132,7 @@ public class ADBXMLStreamReaderImpl impl
if(qname !=null){
String prefix =qname.getPrefix();
if(prefix == null || "".equals(prefix)){
- prefix = OMSerializerUtil.getNextNSPrefix();
+ prefix = getNextNSPrefix();
}
qname = new QName(qname.getNamespaceURI(),qname.getLocalPart(),prefix);
this.typeTable.getComplexSchemaMap().put(key,qname);
@@ -143,6 +144,10 @@ public class ADBXMLStreamReaderImpl impl
}
}
+ private static String getNextNSPrefix() {
+ return "ns" + nsPrefix.incrementAndGet();
+ }
+
/** add the namespace context */
public void addNamespaceContext(NamespaceContext nsContext) {
@@ -474,7 +479,7 @@ public class ADBXMLStreamReaderImpl impl
// first check it is already there if not add the namespace.
String prefix = namespaceContext.getPrefix(attributeQName.getNamespaceURI());
if (prefix == null){
- prefix = OMSerializerUtil.getNextNSPrefix();
+ prefix = getNextNSPrefix();
addToNsMap(prefix,attributeQName.getNamespaceURI());
}
Modified: axis/axis2/java/core/trunk/modules/adb/test/org/apache/axis2/databinding/utils/reader/ADBXMLStreamReaderTest.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb/test/org/apache/axis2/databinding/utils/reader/ADBXMLStreamReaderTest.java?rev=1742375&r1=1742374&r2=1742375&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/adb/test/org/apache/axis2/databinding/utils/reader/ADBXMLStreamReaderTest.java (original)
+++ axis/axis2/java/core/trunk/modules/adb/test/org/apache/axis2/databinding/utils/reader/ADBXMLStreamReaderTest.java Thu May 5 08:24:51 2016
@@ -25,11 +25,9 @@ import org.apache.axiom.om.OMAttribute;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNamespace;
-import org.apache.axiom.om.impl.serialize.StreamingOMSerializer;
-import org.apache.axiom.om.util.StAXUtils;
+import org.apache.axiom.om.OMXMLBuilderFactory;
import org.apache.axiom.util.base64.Base64Utils;
import org.apache.axis2.databinding.utils.Constants;
-import org.apache.axis2.util.StreamWrapper;
import org.custommonkey.xmlunit.XMLTestCase;
import org.w3c.dom.Document;
import org.xml.sax.SAXException;
@@ -41,9 +39,7 @@ import javax.xml.parsers.DocumentBuilder
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
@@ -823,21 +819,7 @@ public class ADBXMLStreamReaderTest exte
* @return
*/
private String getStringXML(XMLStreamReader reader) throws XMLStreamException {
- //the returned pullparser starts at an Element rather than the start
- //document event. This is somewhat disturbing but since an ADBBean
- //denotes an XMLFragment, it is justifiable to keep the current event
- //at the Start-element rather than the start document
- //What it boils down to is that we need to wrap the reader in a
- //stream wrapper to get a fake start-document event
-
- StreamingOMSerializer ser = new StreamingOMSerializer();
- ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
- XMLStreamWriter writer = StAXUtils.createXMLStreamWriter(byteArrayOutputStream);
- ser.serialize(
- new StreamWrapper(reader),
- writer);
- writer.flush();
- return byteArrayOutputStream.toString();
+ return OMXMLBuilderFactory.createStAXOMBuilder(reader).getDocumentElement().toString();
}
// /**