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/27 13:06:02 UTC
svn commit: r1732630 - in /webservices/axiom/trunk/aspects:
core-aspects/src/main/java/org/apache/axiom/core/
core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/
om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/sax/
om-...
Author: veithen
Date: Sat Feb 27 12:06:01 2016
New Revision: 1732630
URL: http://svn.apache.org/viewvc?rev=1732630&view=rev
Log:
Prepare to move the serialization logic to the core model.
Modified:
webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreAttribute.java
webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreNode.java
webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreDocumentFragmentSupport.aj
webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSAwareAttributeSupport.aj
webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSAwareElementSupport.aj
webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSUnawareAttributeSupport.aj
webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSUnawareElementSupport.aj
webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNamespaceDeclarationSupport.aj
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/sax/XMLReaderImpl.java
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/intf/AxiomSerializable.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/AxiomDocumentSupport.aj
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomElementSupport.aj
Modified: webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreAttribute.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreAttribute.java?rev=1732630&r1=1732629&r2=1732630&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreAttribute.java (original)
+++ webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreAttribute.java Sat Feb 27 12:06:01 2016
@@ -18,9 +18,6 @@
*/
package org.apache.axiom.core;
-import org.apache.axiom.core.stream.StreamException;
-import org.apache.axiom.core.stream.XmlHandler;
-
public interface CoreAttribute extends NonDeferringParentNode, CoreCharacterDataContainingParentNode {
/**
* Get the owner element of this attribute.
@@ -62,6 +59,4 @@ public interface CoreAttribute extends N
* of its owner element or if the attribute has no owner element
*/
CoreAttribute coreGetPreviousAttribute();
-
- void coreSerialize(XmlHandler handler) throws CoreModelException, StreamException;
}
Modified: webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreNode.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreNode.java?rev=1732630&r1=1732629&r2=1732630&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreNode.java (original)
+++ webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreNode.java Sat Feb 27 12:06:01 2016
@@ -18,6 +18,9 @@
*/
package org.apache.axiom.core;
+import org.apache.axiom.core.stream.StreamException;
+import org.apache.axiom.core.stream.XmlHandler;
+
public interface CoreNode {
void coreSetOwnerDocument(CoreDocument document);
@@ -45,4 +48,6 @@ public interface CoreNode {
<T> void init(ClonePolicy<T> policy, T options, CoreNode other) throws CoreModelException;
<T> void cloneChildrenIfNecessary(ClonePolicy<T> policy, T options, CoreNode clone) throws CoreModelException;
+
+ void internalSerialize(XmlHandler handler, boolean cache) throws CoreModelException, StreamException;
}
Modified: webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreDocumentFragmentSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreDocumentFragmentSupport.aj?rev=1732630&r1=1732629&r2=1732630&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreDocumentFragmentSupport.aj (original)
+++ webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreDocumentFragmentSupport.aj Sat Feb 27 12:06:01 2016
@@ -21,8 +21,11 @@ package org.apache.axiom.core.impl.mixin
import org.apache.axiom.core.ClonePolicy;
import org.apache.axiom.core.CoreDocument;
import org.apache.axiom.core.CoreDocumentFragment;
+import org.apache.axiom.core.CoreModelException;
import org.apache.axiom.core.CoreNode;
import org.apache.axiom.core.NodeType;
+import org.apache.axiom.core.stream.StreamException;
+import org.apache.axiom.core.stream.XmlHandler;
public aspect CoreDocumentFragmentSupport {
private CoreDocument CoreDocumentFragment.ownerDocument;
@@ -45,4 +48,9 @@ public aspect CoreDocumentFragmentSuppor
public final <T> void CoreDocumentFragment.init(ClonePolicy<T> policy, T options, CoreNode other) {
}
+
+ public final void CoreDocumentFragment.internalSerialize(XmlHandler handler, boolean cache) throws CoreModelException, StreamException {
+ // TODO
+ throw new UnsupportedOperationException();
+ }
}
Modified: webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSAwareAttributeSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSAwareAttributeSupport.aj?rev=1732630&r1=1732629&r2=1732630&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSAwareAttributeSupport.aj (original)
+++ webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSAwareAttributeSupport.aj Sat Feb 27 12:06:01 2016
@@ -29,7 +29,7 @@ public aspect CoreNSAwareAttributeSuppor
return NodeType.NS_AWARE_ATTRIBUTE;
}
- public final void CoreNSAwareAttribute.coreSerialize(XmlHandler handler) throws CoreModelException, StreamException {
+ public final void CoreNSAwareAttribute.internalSerialize(XmlHandler handler, boolean cache) throws CoreModelException, StreamException {
handler.processAttribute(coreGetNamespaceURI(), coreGetLocalName(), coreGetPrefix(), coreGetCharacterData().toString(), coreGetType(), coreGetSpecified());
}
}
Modified: webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSAwareElementSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSAwareElementSupport.aj?rev=1732630&r1=1732629&r2=1732630&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSAwareElementSupport.aj (original)
+++ webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSAwareElementSupport.aj Sat Feb 27 12:06:01 2016
@@ -42,7 +42,7 @@ public aspect CoreNSAwareElementSupport
handler.startElement(coreGetNamespaceURI(), coreGetLocalName(), coreGetPrefix());
CoreAttribute attr = coreGetFirstAttribute();
while (attr != null) {
- attr.coreSerialize(handler);
+ attr.internalSerialize(handler, true);
attr = attr.coreGetNextAttribute();
}
handler.attributesCompleted();
Modified: webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSUnawareAttributeSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSUnawareAttributeSupport.aj?rev=1732630&r1=1732629&r2=1732630&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSUnawareAttributeSupport.aj (original)
+++ webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSUnawareAttributeSupport.aj Sat Feb 27 12:06:01 2016
@@ -29,7 +29,7 @@ public aspect CoreNSUnawareAttributeSupp
return NodeType.NS_UNAWARE_ATTRIBUTE;
}
- public final void CoreNSUnawareAttribute.coreSerialize(XmlHandler handler) throws CoreModelException, StreamException {
+ public final void CoreNSUnawareAttribute.internalSerialize(XmlHandler handler, boolean cache) throws CoreModelException, StreamException {
// TODO
throw new UnsupportedOperationException();
}
Modified: webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSUnawareElementSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSUnawareElementSupport.aj?rev=1732630&r1=1732629&r2=1732630&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSUnawareElementSupport.aj (original)
+++ webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNSUnawareElementSupport.aj Sat Feb 27 12:06:01 2016
@@ -19,8 +19,11 @@
package org.apache.axiom.core.impl.mixin;
import org.apache.axiom.core.CoreElement;
+import org.apache.axiom.core.CoreModelException;
import org.apache.axiom.core.CoreNSUnawareElement;
import org.apache.axiom.core.NodeType;
+import org.apache.axiom.core.stream.StreamException;
+import org.apache.axiom.core.stream.XmlHandler;
public aspect CoreNSUnawareElementSupport {
public final NodeType CoreNSUnawareElement.coreGetNodeType() {
@@ -38,4 +41,9 @@ public aspect CoreNSUnawareElementSuppor
final void CoreNSUnawareElement.copyName(CoreElement clone) {
((CoreNSUnawareElement)clone).coreSetName(coreGetName());
}
+
+ public final void CoreNSUnawareElement.internalSerialize(XmlHandler handler, boolean cache) throws CoreModelException, StreamException {
+ // TODO
+ throw new UnsupportedOperationException();
+ }
}
Modified: webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNamespaceDeclarationSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNamespaceDeclarationSupport.aj?rev=1732630&r1=1732629&r2=1732630&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNamespaceDeclarationSupport.aj (original)
+++ webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/impl/mixin/CoreNamespaceDeclarationSupport.aj Sat Feb 27 12:06:01 2016
@@ -36,7 +36,7 @@ public aspect CoreNamespaceDeclarationSu
coreSetDeclaredNamespace(((CoreNamespaceDeclaration)other).coreGetDeclaredPrefix(), "");
}
- public final void CoreNamespaceDeclaration.coreSerialize(XmlHandler handler) throws CoreModelException, StreamException {
+ public final void CoreNamespaceDeclaration.internalSerialize(XmlHandler handler, boolean cache) throws CoreModelException, StreamException {
handler.processNamespaceDeclaration(coreGetDeclaredPrefix(), coreGetCharacterData().toString());
}
}
Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/sax/XMLReaderImpl.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/XMLReaderImpl.java?rev=1732630&r1=1732629&r2=1732630&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/sax/XMLReaderImpl.java (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/serializer/push/sax/XMLReaderImpl.java Sat Feb 27 12:06:01 2016
@@ -21,6 +21,7 @@ package org.apache.axiom.om.impl.common.
import java.io.IOException;
import org.apache.axiom.core.CoreElement;
+import org.apache.axiom.core.CoreModelException;
import org.apache.axiom.core.stream.StreamException;
import org.apache.axiom.core.stream.XmlHandler;
import org.apache.axiom.core.stream.sax.ContentHandlerXmlHandler;
@@ -55,6 +56,8 @@ public class XMLReaderImpl extends Abstr
}
try {
root.internalSerialize(handler, cache);
+ } catch (CoreModelException ex) {
+ throw new SAXException(ex);
} catch (StreamException ex) {
throw (SAXException)ex.getCause();
}
Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/intf/AxiomSerializable.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/intf/AxiomSerializable.java?rev=1732630&r1=1732629&r2=1732630&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/intf/AxiomSerializable.java (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/intf/AxiomSerializable.java Sat Feb 27 12:06:01 2016
@@ -18,19 +18,8 @@
*/
package org.apache.axiom.om.impl.intf;
-import org.apache.axiom.core.stream.StreamException;
-import org.apache.axiom.core.stream.XmlHandler;
import org.apache.axiom.om.OMSerializable;
public interface AxiomSerializable extends OMSerializable, AxiomInformationItem {
void setComplete(boolean state);
-
- /**
- * Serializes the node.
- *
- * @param serializer
- * @param cache indicates if caching should be enabled
- * @throws StreamException
- */
- void internalSerialize(XmlHandler handler, boolean cache) throws StreamException;
}
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=1732630&r1=1732629&r2=1732630&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 Sat Feb 27 12:06:01 2016
@@ -289,6 +289,8 @@ public aspect AxiomContainerSupport {
new MTOMXMLStreamWriter(xmlWriter);
try {
internalSerialize(createSerializer(writer, true), cache);
+ } catch (CoreModelException ex) {
+ throw AxiomExceptionTranslator.translate(ex);
} catch (StreamException ex) {
throw AxiomExceptionTranslator.toXMLStreamException(ex);
}
@@ -299,6 +301,8 @@ public aspect AxiomContainerSupport {
try {
try {
internalSerialize(createSerializer(writer, false), cache);
+ } catch (CoreModelException ex) {
+ throw AxiomExceptionTranslator.translate(ex);
} catch (StreamException ex) {
throw AxiomExceptionTranslator.toXMLStreamException(ex);
}
@@ -351,7 +355,7 @@ public aspect AxiomContainerSupport {
serialize(writer, format, false);
}
- final void AxiomContainer.serializeChildren(XmlHandler handler, boolean cache) throws StreamException {
+ final void AxiomContainer.serializeChildren(XmlHandler handler, boolean cache) throws CoreModelException, StreamException {
if (getState() == AxiomContainer.DISCARDED) {
Builder builder = coreGetBuilder();
if (builder != null) {
Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomDocumentSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomDocumentSupport.aj?rev=1732630&r1=1732629&r2=1732630&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomDocumentSupport.aj (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomDocumentSupport.aj Sat Feb 27 12:06:01 2016
@@ -55,7 +55,7 @@ public aspect AxiomDocumentSupport {
}
}
- public final void AxiomDocument.internalSerialize(XmlHandler handler, boolean cache) throws StreamException {
+ public final void AxiomDocument.internalSerialize(XmlHandler handler, boolean cache) throws CoreModelException, StreamException {
handler.startDocument(coreGetInputEncoding(), coreGetXmlVersion(), coreGetXmlEncoding(), coreIsStandalone());
serializeChildren(handler, cache);
handler.endDocument();
Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomElementSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomElementSupport.aj?rev=1732630&r1=1732629&r2=1732630&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomElementSupport.aj (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomElementSupport.aj Sat Feb 27 12:06:01 2016
@@ -535,7 +535,7 @@ public aspect AxiomElementSupport {
return null;
}
- public final void AxiomElement.internalSerialize(XmlHandler handler, boolean cache) throws StreamException {
+ public final void AxiomElement.internalSerialize(XmlHandler handler, boolean cache) throws CoreModelException, StreamException {
XmlInput input = getXmlInput(cache);
if (input != null) {
// TODO: the serializer ignores namespaceURI and localName
@@ -545,11 +545,7 @@ public aspect AxiomElementSupport {
}
} else {
forceExpand();
- try {
- coreSerializeStartPart(handler);
- } catch (CoreModelException ex) {
- throw new StreamException(ex);
- }
+ coreSerializeStartPart(handler);
serializeChildren(handler, cache);
handler.endElement();
}