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/02/07 13:50:58 UTC
svn commit: r1728954 - in
/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl:
common/ common/serializer/push/ common/serializer/push/sax/
common/serializer/push/stax/ mixin/
Author: veithen
Date: Sun Feb 7 12:50:58 2016
New Revision: 1728954
URL: http://svn.apache.org/viewvc?rev=1728954&view=rev
Log:
Simplify the exception hierarchy used by the serializer code.
Removed:
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/sax/SAXOutputException.java
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/stax/StAXOutputException.java
Modified:
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomExceptionTranslator.java
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/OutputException.java
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/sax/SAXSerializer.java
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/stax/StAXSerializer.java
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomContainerSupport.aj
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomSerializableSupport.aj
Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomExceptionTranslator.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomExceptionTranslator.java?rev=1728954&r1=1728953&r2=1728954&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomExceptionTranslator.java (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomExceptionTranslator.java Sun Feb 7 12:50:58 2016
@@ -18,8 +18,11 @@
*/
package org.apache.axiom.om.impl.common;
+import javax.xml.stream.XMLStreamException;
+
import org.apache.axiom.core.CoreModelException;
import org.apache.axiom.om.OMException;
+import org.apache.axiom.om.impl.common.serializer.push.OutputException;
public class AxiomExceptionTranslator {
private AxiomExceptionTranslator() {}
@@ -27,4 +30,13 @@ public class AxiomExceptionTranslator {
public static OMException translate(CoreModelException ex) {
return new OMException(ex);
}
+
+ public static XMLStreamException toXMLStreamException(OutputException ex) {
+ Throwable cause = ex.getCause();
+ if (cause instanceof XMLStreamException) {
+ return (XMLStreamException)cause;
+ } else {
+ return new XMLStreamException(ex);
+ }
+ }
}
Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/OutputException.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/OutputException.java?rev=1728954&r1=1728953&r2=1728954&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/OutputException.java (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/OutputException.java Sun Feb 7 12:50:58 2016
@@ -19,13 +19,15 @@
package org.apache.axiom.om.impl.common.serializer.push;
/**
- * Wraps an exception thrown by the underlying API (StAX, SAX, etc.) while writing data. This class
- * is abstract so that the type of the wrapped exception can be effectively restricted by defining
- * an appropriate subclass.
+ * Wraps an exception thrown by the underlying API (StAX, SAX, etc.) while writing data.
*/
-public abstract class OutputException extends Exception {
+public class OutputException extends Exception {
private static final long serialVersionUID = 7173617216602466028L;
+ public OutputException(String message, Throwable cause) {
+ super(message, cause);
+ }
+
public OutputException(Throwable cause) {
super(cause);
}
Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/sax/SAXSerializer.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/sax/SAXSerializer.java?rev=1728954&r1=1728953&r2=1728954&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/sax/SAXSerializer.java (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/sax/SAXSerializer.java Sun Feb 7 12:50:58 2016
@@ -60,7 +60,7 @@ public class SAXSerializer extends Seria
contentHandler.startDocument();
startDocumentWritten = true;
} catch (SAXException ex) {
- throw new SAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -78,7 +78,7 @@ public class SAXSerializer extends Seria
lexicalHandler.startDTD(rootName, publicId, systemId);
lexicalHandler.endDTD();
} catch (SAXException ex) {
- throw new SAXOutputException(ex);
+ throw new OutputException(ex);
}
}
}
@@ -98,7 +98,7 @@ public class SAXSerializer extends Seria
try {
contentHandler.startPrefixMapping(prefix, namespaceURI);
} catch (SAXException ex) {
- throw new SAXOutputException(ex);
+ throw new OutputException(ex);
}
// TODO: depending on the http://xml.org/sax/features/xmlns-uris feature, we also need to add an attribute
}
@@ -111,7 +111,7 @@ public class SAXSerializer extends Seria
try {
helper.finishStartElement(contentHandler);
} catch (SAXException ex) {
- throw new SAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -122,7 +122,7 @@ public class SAXSerializer extends Seria
contentHandler.endDocument();
}
} catch (SAXException ex) {
- throw new SAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -146,7 +146,7 @@ public class SAXSerializer extends Seria
contentHandler.ignorableWhitespace(ch, 0, ch.length);
}
} catch (SAXException ex) {
- throw new SAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -156,7 +156,7 @@ public class SAXSerializer extends Seria
try {
lexicalHandler.comment(ch, 0, ch.length);
} catch (SAXException ex) {
- throw new SAXOutputException(ex);
+ throw new OutputException(ex);
}
}
}
@@ -165,7 +165,7 @@ public class SAXSerializer extends Seria
try {
contentHandler.processingInstruction(target, data);
} catch (SAXException ex) {
- throw new SAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -173,7 +173,7 @@ public class SAXSerializer extends Seria
try {
contentHandler.skippedEntity(name);
} catch (SAXException ex) {
- throw new SAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -190,7 +190,7 @@ public class SAXSerializer extends Seria
} else {
saxException = new SAXException(ex);
}
- throw new SAXOutputException(saxException);
+ throw new OutputException(saxException);
}
}
@@ -211,11 +211,11 @@ public class SAXSerializer extends Seria
contentHandler.endDocument();
}
} catch (SAXException ex) {
- throw new SAXOutputException(ex);
+ throw new OutputException(ex);
} catch (SAXExceptionWrapper ex) {
- throw new SAXOutputException((SAXException)ex.getCause());
+ throw new OutputException(ex.getCause());
} catch (XMLStreamException ex) {
- throw new SAXOutputException(new SAXException(ex));
+ throw new OutputException(ex);
}
}
@@ -223,7 +223,7 @@ public class SAXSerializer extends Seria
try {
contentHandler.endDocument();
} catch (SAXException ex) {
- throw new SAXOutputException(ex);
+ throw new OutputException(ex);
}
}
}
Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/stax/StAXSerializer.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/stax/StAXSerializer.java?rev=1728954&r1=1728953&r2=1728954&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/stax/StAXSerializer.java (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/stax/StAXSerializer.java Sun Feb 7 12:50:58 2016
@@ -55,7 +55,7 @@ public class StAXSerializer extends Seri
// We cannot really differentiate between exceptions thrown by the XMLStreamWriter
// and exceptions thrown by the data source itself. We wrap all XMLStreamExceptions
// as OutputExceptions.
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -63,7 +63,7 @@ public class StAXSerializer extends Seri
try {
writer.writeStartDocument(version);
} catch (XMLStreamException ex) {
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -71,7 +71,7 @@ public class StAXSerializer extends Seri
try {
writer.writeStartDocument(encoding, version);
} catch (XMLStreamException ex) {
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -79,7 +79,7 @@ public class StAXSerializer extends Seri
try {
XMLStreamWriterUtils.writeDTD(writer, rootName, publicId, systemId, internalSubset);
} catch (XMLStreamException ex) {
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -87,7 +87,7 @@ public class StAXSerializer extends Seri
try {
writer.writeStartElement(prefix, localName, namespaceURI);
} catch (XMLStreamException ex) {
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -99,7 +99,7 @@ public class StAXSerializer extends Seri
writer.writeDefaultNamespace(namespaceURI);
}
} catch (XMLStreamException ex) {
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -107,7 +107,7 @@ public class StAXSerializer extends Seri
try {
writer.writeAttribute(prefix, namespaceURI, localName, value);
} catch (XMLStreamException ex) {
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -192,7 +192,7 @@ public class StAXSerializer extends Seri
return true;
}
} catch (XMLStreamException ex) {
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -200,7 +200,7 @@ public class StAXSerializer extends Seri
try {
writer.writeEndElement();
} catch (XMLStreamException ex) {
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -212,7 +212,7 @@ public class StAXSerializer extends Seri
writer.writeCharacters(data);
}
} catch (XMLStreamException ex) {
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -220,7 +220,7 @@ public class StAXSerializer extends Seri
try {
writer.writeComment(data);
} catch (XMLStreamException ex) {
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -228,7 +228,7 @@ public class StAXSerializer extends Seri
try {
writer.writeProcessingInstruction(target, data);
} catch (XMLStreamException ex) {
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -236,7 +236,7 @@ public class StAXSerializer extends Seri
try {
writer.writeEntityRef(name);
} catch (XMLStreamException ex) {
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -252,9 +252,9 @@ public class StAXSerializer extends Seri
try {
getDataHandlerWriter().writeDataHandler(dataHandler, contentID, optimize);
} catch (IOException ex) {
- throw new StAXOutputException(new XMLStreamException("Error while reading data handler", ex));
+ throw new OutputException("Error while reading data handler", ex);
} catch (XMLStreamException ex) {
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
@@ -262,9 +262,9 @@ public class StAXSerializer extends Seri
try {
getDataHandlerWriter().writeDataHandler(dataHandlerProvider, contentID, optimize);
} catch (IOException ex) {
- throw new StAXOutputException(new XMLStreamException("Error while reading data handler", ex));
+ throw new OutputException("Error while reading data handler", ex);
} catch (XMLStreamException ex) {
- throw new StAXOutputException(ex);
+ throw new OutputException(ex);
}
}
Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomContainerSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomContainerSupport.aj?rev=1728954&r1=1728953&r2=1728954&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomContainerSupport.aj (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomContainerSupport.aj Sun Feb 7 12:50:58 2016
@@ -48,6 +48,7 @@ import org.apache.axiom.om.OMXMLStreamRe
import org.apache.axiom.om.OMXMLStreamReaderConfiguration;
import org.apache.axiom.om.impl.MTOMXMLStreamWriter;
import org.apache.axiom.om.impl.builder.Builder;
+import org.apache.axiom.om.impl.common.AxiomExceptionTranslator;
import org.apache.axiom.om.impl.common.AxiomSemantics;
import org.apache.axiom.om.impl.common.NamespaceURIInterningXMLStreamReaderWrapper;
import org.apache.axiom.om.impl.common.OMChildrenQNameIterator;
@@ -298,7 +299,7 @@ public aspect AxiomContainerSupport {
try {
internalSerialize(new StAXSerializer(this, writer), format, true);
} catch (OutputException ex) {
- throw (XMLStreamException)ex.getCause();
+ throw AxiomExceptionTranslator.toXMLStreamException(ex);
}
} finally {
writer.close();
@@ -313,7 +314,7 @@ public aspect AxiomContainerSupport {
try {
internalSerialize(new StAXSerializer(this, writer), format, true);
} catch (OutputException ex) {
- throw (XMLStreamException)ex.getCause();
+ throw AxiomExceptionTranslator.toXMLStreamException(ex);
}
} finally {
writer.close();
@@ -327,7 +328,7 @@ public aspect AxiomContainerSupport {
try {
internalSerialize(new StAXSerializer(this, writer), format, false);
} catch (OutputException ex) {
- throw (XMLStreamException)ex.getCause();
+ throw AxiomExceptionTranslator.toXMLStreamException(ex);
}
} finally {
writer.close();
@@ -343,7 +344,7 @@ public aspect AxiomContainerSupport {
try {
internalSerialize(new StAXSerializer(this, writer), format, false);
} catch (OutputException ex) {
- throw (XMLStreamException)ex.getCause();
+ throw AxiomExceptionTranslator.toXMLStreamException(ex);
}
} finally {
writer.close();
Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomSerializableSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomSerializableSupport.aj?rev=1728954&r1=1728953&r2=1728954&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomSerializableSupport.aj (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomSerializableSupport.aj Sun Feb 7 12:50:58 2016
@@ -24,6 +24,7 @@ import javax.xml.stream.XMLStreamWriter;
import org.apache.axiom.om.OMXMLParserWrapper;
import org.apache.axiom.om.impl.MTOMXMLStreamWriter;
import org.apache.axiom.om.impl.builder.Builder;
+import org.apache.axiom.om.impl.common.AxiomExceptionTranslator;
import org.apache.axiom.om.impl.common.serializer.push.OutputException;
import org.apache.axiom.om.impl.common.serializer.push.stax.StAXSerializer;
import org.apache.axiom.om.impl.intf.AxiomSerializable;
@@ -45,7 +46,7 @@ public aspect AxiomSerializableSupport {
try {
internalSerialize(new StAXSerializer(this, writer), writer.getOutputFormat(), cache);
} catch (OutputException ex) {
- throw (XMLStreamException)ex.getCause();
+ throw AxiomExceptionTranslator.toXMLStreamException(ex);
}
writer.flush();
}