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/01/30 15:22:23 UTC

svn commit: r1727700 - in /webservices/axiom/trunk: aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/ implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/ implementations/axiom-impl/src/main/java/org/apache/axiom/so...

Author: veithen
Date: Sat Jan 30 14:22:23 2016
New Revision: 1727700

URL: http://svn.apache.org/viewvc?rev=1727700&view=rev
Log:
Unify some SOAP code.

Modified:
    webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPBodySupport.aj
    webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPEnvelopeSupport.aj
    webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPMessageSupport.aj
    webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPBodyImpl.java
    webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPEnvelopeImpl.java
    webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPMessageImpl.java
    webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPBodyImpl.java
    webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java
    webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPMessageImpl.java

Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPBodySupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPBodySupport.aj?rev=1727700&r1=1727699&r2=1727700&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPBodySupport.aj (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPBodySupport.aj Sat Jan 30 14:22:23 2016
@@ -98,4 +98,17 @@ public aspect AxiomSOAPBodySupport {
             } 
         }
     }
+
+    public final SOAPFault AxiomSOAPBody.getFault() {
+        OMElement element = getFirstElement();
+        return element instanceof SOAPFault ? (SOAPFault)element : null;
+    }
+
+    public final void AxiomSOAPBody.addFault(SOAPFault soapFault) {
+        if (hasFault()) {
+            throw new OMException(
+                    "SOAP Body already has a SOAP Fault and there can not be more than one SOAP fault");
+        }
+        addChild(soapFault);
+    }
 }

Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPEnvelopeSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPEnvelopeSupport.aj?rev=1727700&r1=1727699&r2=1727700&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPEnvelopeSupport.aj (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPEnvelopeSupport.aj Sat Jan 30 14:22:23 2016
@@ -18,7 +18,13 @@
  */
 package org.apache.axiom.soap.impl.common;
 
+import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMNode;
+import org.apache.axiom.soap.SOAPBody;
+import org.apache.axiom.soap.SOAPFactory;
+import org.apache.axiom.soap.SOAPHeader;
+import org.apache.axiom.soap.SOAPVersion;
 import org.apache.axiom.soap.impl.intf.AxiomSOAPEnvelope;
 
 public aspect AxiomSOAPEnvelopeSupport {
@@ -29,4 +35,34 @@ public aspect AxiomSOAPEnvelopeSupport {
      */
     // TODO: this should be integrated into the checkChild API
     public abstract void AxiomSOAPEnvelope.internalCheckChild(OMNode child);
+
+    public final SOAPVersion AxiomSOAPEnvelope.getVersion() {
+        return getSOAPHelper().getVersion();
+    }
+
+    public final SOAPHeader AxiomSOAPEnvelope.getHeader() {
+        // The soap header is the first element in the envelope.
+        OMElement e = getFirstElement();
+        return e instanceof SOAPHeader ? (SOAPHeader)e : null;
+    }
+
+    public final SOAPHeader AxiomSOAPEnvelope.getOrCreateHeader() {
+        SOAPHeader header = getHeader();
+        return header != null ? header : ((SOAPFactory)getOMFactory()).createSOAPHeader(this);
+    }
+
+    public final boolean AxiomSOAPEnvelope.hasFault() {
+        SOAPBody body = getBody();
+        return (body == null) ? false : body.hasFault();
+    }
+
+    public final String AxiomSOAPEnvelope.getSOAPBodyFirstElementLocalName() {
+        SOAPBody body = getBody();
+        return (body == null) ? null : body.getFirstElementLocalName();
+    }
+
+    public final OMNamespace AxiomSOAPEnvelope.getSOAPBodyFirstElementNS() {
+        SOAPBody body = getBody();
+        return (body == null) ? null : body.getFirstElementNS();
+    }
 }

Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPMessageSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPMessageSupport.aj?rev=1727700&r1=1727699&r2=1727700&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPMessageSupport.aj (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/common/AxiomSOAPMessageSupport.aj Sat Jan 30 14:22:23 2016
@@ -25,6 +25,7 @@ import org.apache.axiom.om.OMOutputForma
 import org.apache.axiom.om.impl.common.serializer.push.OutputException;
 import org.apache.axiom.om.impl.common.serializer.push.Serializer;
 import org.apache.axiom.om.impl.intf.AxiomElement;
+import org.apache.axiom.soap.SOAPEnvelope;
 import org.apache.axiom.soap.SOAPFactory;
 import org.apache.axiom.soap.impl.common.builder.StAXSOAPModelBuilder;
 import org.apache.axiom.soap.impl.intf.AxiomSOAPMessage;
@@ -56,4 +57,12 @@ public aspect AxiomSOAPMessageSupport {
             boolean cache, boolean includeXMLDeclaration) throws OutputException {
         ((AxiomElement)getOMDocumentElement()).internalSerialize(serializer, format, cache);
     }
+
+    public final SOAPEnvelope AxiomSOAPMessage.getSOAPEnvelope() {
+        return (SOAPEnvelope)getOMDocumentElement();
+    }
+
+    public final void AxiomSOAPMessage.setSOAPEnvelope(SOAPEnvelope envelope) {
+        setOMDocumentElement(envelope);
+    }
 }

Modified: webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPBodyImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPBodyImpl.java?rev=1727700&r1=1727699&r2=1727700&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPBodyImpl.java (original)
+++ webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPBodyImpl.java Sat Jan 30 14:22:23 2016
@@ -21,38 +21,11 @@ package org.apache.axiom.soap.impl.dom;
 
 import org.apache.axiom.om.OMConstants;
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMException;
-import org.apache.axiom.soap.SOAPFault;
 import org.apache.axiom.soap.SOAPProcessingException;
 import org.apache.axiom.soap.impl.intf.AxiomSOAPBody;
 
 public abstract class SOAPBodyImpl extends SOAPElement implements AxiomSOAPBody,
         OMConstants {
-    /**
-     * Returns the <code>SOAPFault</code> object in this <code>SOAPBody</code> object.
-     *
-     * @return the <code>SOAPFault</code> object in this <code>SOAPBody</code> object
-     */
-    public SOAPFault getFault() {
-        OMElement element = getFirstElement();
-        return element instanceof SOAPFault ? (SOAPFault)element : null;
-    }
-
-    /**
-     * @param soapFault
-     * @throws org.apache.axiom.om.OMException
-     *
-     * @throws OMException
-     */
-    public void addFault(SOAPFault soapFault) throws OMException {
-        if (hasFault()) {
-            throw new OMException(
-                    "SOAP Body already has a SOAP Fault and there can not be " +
-                            "more than one SOAP fault");
-        }
-        addChild(soapFault);
-    }
-
     public void checkParent(OMElement parent) throws SOAPProcessingException {
         if (!(parent instanceof SOAPEnvelopeImpl)) {
             throw new SOAPProcessingException(

Modified: webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPEnvelopeImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPEnvelopeImpl.java?rev=1727700&r1=1727699&r2=1727700&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPEnvelopeImpl.java (original)
+++ webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPEnvelopeImpl.java Sat Jan 30 14:22:23 2016
@@ -22,7 +22,6 @@ package org.apache.axiom.soap.impl.dom;
 import org.apache.axiom.om.OMConstants;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMException;
-import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMNode;
 import org.apache.axiom.om.OMOutputFormat;
 import org.apache.axiom.om.impl.common.serializer.push.OutputException;
@@ -30,36 +29,14 @@ import org.apache.axiom.om.impl.common.s
 import org.apache.axiom.soap.SOAP11Version;
 import org.apache.axiom.soap.SOAPBody;
 import org.apache.axiom.soap.SOAPConstants;
-import org.apache.axiom.soap.SOAPFactory;
 import org.apache.axiom.soap.SOAPHeader;
 import org.apache.axiom.soap.SOAPProcessingException;
-import org.apache.axiom.soap.SOAPVersion;
 import org.apache.axiom.soap.impl.intf.AxiomSOAPEnvelope;
 import org.w3c.dom.DOMException;
 import org.w3c.dom.Node;
 
 public abstract class SOAPEnvelopeImpl extends SOAPElement implements AxiomSOAPEnvelope,
         OMConstants {
-
-    public SOAPVersion getVersion() {
-        return ((SOAPFactory)getOMFactory()).getSOAPVersion();
-    }
-
-    public SOAPHeader getHeader() {
-        // Header must be the first child
-        OMElement header = getFirstElement();
-        if (header == null || !(header instanceof SOAPHeader)) {
-            return null;
-        }
-
-        return (SOAPHeader) header;
-    }
-
-    public SOAPHeader getOrCreateHeader() {
-        SOAPHeader header = getHeader();
-        return header != null ? header : ((SOAPFactory)getOMFactory()).createSOAPHeader(this);
-    }
-
     public void addChild(OMNode child, boolean fromBuilder) {
         internalCheckChild(child);
 
@@ -166,19 +143,4 @@ public abstract class SOAPEnvelopeImpl e
         super.internalSerialize(serializer, format, cache);
         serializer.writeEndDocument();
     }
-
-    public boolean hasFault() {      
-        SOAPBody body = this.getBody();
-        return (body == null) ? false : body.hasFault();
-    }
-
-    public String getSOAPBodyFirstElementLocalName() {
-        SOAPBody body = this.getBody();
-        return (body == null) ? null : body.getFirstElementLocalName();
-    }
-
-    public OMNamespace getSOAPBodyFirstElementNS() {
-        SOAPBody body = this.getBody();
-        return (body == null) ? null : body.getFirstElementNS();
-    }
 }

Modified: webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPMessageImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPMessageImpl.java?rev=1727700&r1=1727699&r2=1727700&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPMessageImpl.java (original)
+++ webservices/axiom/trunk/implementations/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPMessageImpl.java Sat Jan 30 14:22:23 2016
@@ -23,18 +23,9 @@ import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMException;
 import org.apache.axiom.om.impl.dom.DocumentImpl;
 import org.apache.axiom.soap.SOAPEnvelope;
-import org.apache.axiom.soap.SOAPProcessingException;
 import org.apache.axiom.soap.impl.intf.AxiomSOAPMessage;
 
 public class SOAPMessageImpl extends DocumentImpl implements AxiomSOAPMessage {
-    public SOAPEnvelope getSOAPEnvelope() throws SOAPProcessingException {
-        return (SOAPEnvelope) getOMDocumentElement();
-    }
-
-    public void setSOAPEnvelope(SOAPEnvelope envelope) {
-        setOMDocumentElement(envelope);
-    }
-
     public void checkDocumentElement(OMElement element) {
         if (!(element instanceof SOAPEnvelope)) {
             throw new OMException("Child not allowed; must be a SOAPEnvelope");

Modified: webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPBodyImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPBodyImpl.java?rev=1727700&r1=1727699&r2=1727700&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPBodyImpl.java (original)
+++ webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPBodyImpl.java Sat Jan 30 14:22:23 2016
@@ -23,37 +23,12 @@ import org.apache.axiom.om.OMConstants;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMException;
 import org.apache.axiom.om.OMNode;
-import org.apache.axiom.soap.SOAPFault;
 import org.apache.axiom.soap.SOAPProcessingException;
 import org.apache.axiom.soap.impl.intf.AxiomSOAPBody;
 
 /** Class SOAPBodyImpl */
 public abstract class SOAPBodyImpl extends SOAPElement
         implements AxiomSOAPBody, OMConstants {
-    /**
-     * Returns the <code>SOAPFault</code> object in this <code>SOAPBody</code> object.
-     *
-     * @return the <code>SOAPFault</code> object in this <code>SOAPBody</code> object
-     */
-    public SOAPFault getFault() {
-        OMElement element = getFirstElement();
-        return element instanceof SOAPFault ? (SOAPFault)element : null;
-    }
-
-    /**
-     * @param soapFault
-     * @throws org.apache.axiom.om.OMException
-     *
-     * @throws OMException
-     */
-    public void addFault(SOAPFault soapFault) throws OMException {
-        if (hasFault()) {
-            throw new OMException(
-                    "SOAP Body already has a SOAP Fault and there can not be more than one SOAP fault");
-        }
-        addChild(soapFault);
-    }
-
     public void checkParent(OMElement parent) throws SOAPProcessingException {
         if (!(parent instanceof SOAPEnvelopeImpl)) {
             throw new SOAPProcessingException(

Modified: webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java?rev=1727700&r1=1727699&r2=1727700&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java (original)
+++ webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java Sat Jan 30 14:22:23 2016
@@ -22,7 +22,6 @@ package org.apache.axiom.soap.impl.llom;
 import org.apache.axiom.om.OMConstants;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMException;
-import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMNode;
 import org.apache.axiom.om.OMOutputFormat;
 import org.apache.axiom.om.OMXMLParserWrapper;
@@ -31,10 +30,8 @@ import org.apache.axiom.om.impl.common.s
 import org.apache.axiom.om.impl.common.serializer.push.Serializer;
 import org.apache.axiom.soap.SOAPBody;
 import org.apache.axiom.soap.SOAPConstants;
-import org.apache.axiom.soap.SOAPFactory;
 import org.apache.axiom.soap.SOAPHeader;
 import org.apache.axiom.soap.SOAPProcessingException;
-import org.apache.axiom.soap.SOAPVersion;
 import org.apache.axiom.soap.impl.intf.AxiomSOAPEnvelope;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -44,25 +41,6 @@ public abstract class SOAPEnvelopeImpl e
         implements AxiomSOAPEnvelope, OMConstants {
     private static final Log log = LogFactory.getLog(SOAPEnvelopeImpl.class);
 
-    public SOAPVersion getVersion() {
-        return ((SOAPFactory)getOMFactory()).getSOAPVersion();
-    }
-
-    public SOAPHeader getHeader() {
-        // The soap header is the first element in the envelope.
-        OMElement e = getFirstElement();
-        if (e instanceof SOAPHeader) {
-            return (SOAPHeader)e;
-        } 
-        
-        return null;
-    }
-
-    public SOAPHeader getOrCreateHeader() {
-        SOAPHeader header = getHeader();
-        return header != null ? header : ((SOAPFactory)getOMFactory()).createSOAPHeader(this);
-    }
-
     /**
      * Add a SOAPHeader or SOAPBody object
      * @param child an OMNode to add - must be either a SOAPHeader or a SOAPBody
@@ -183,19 +161,4 @@ public abstract class SOAPEnvelopeImpl e
             }
         }
     }
-
-    public boolean hasFault() {      
-        SOAPBody body = this.getBody();
-        return (body == null) ? false : body.hasFault();
-    }
-
-    public String getSOAPBodyFirstElementLocalName() {
-        SOAPBody body = this.getBody();
-        return (body == null) ? null : body.getFirstElementLocalName();
-    }
-
-    public OMNamespace getSOAPBodyFirstElementNS() {
-        SOAPBody body = this.getBody();
-        return (body == null) ? null : body.getFirstElementNS();
-    }
 }

Modified: webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPMessageImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPMessageImpl.java?rev=1727700&r1=1727699&r2=1727700&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPMessageImpl.java (original)
+++ webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPMessageImpl.java Sat Jan 30 14:22:23 2016
@@ -23,18 +23,9 @@ import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMException;
 import org.apache.axiom.om.impl.llom.OMDocumentImpl;
 import org.apache.axiom.soap.SOAPEnvelope;
-import org.apache.axiom.soap.SOAPProcessingException;
 import org.apache.axiom.soap.impl.intf.AxiomSOAPMessage;
 
 public class SOAPMessageImpl extends OMDocumentImpl implements AxiomSOAPMessage {
-    public SOAPEnvelope getSOAPEnvelope() throws SOAPProcessingException {
-        return (SOAPEnvelope) getOMDocumentElement();
-    }
-
-    public void setSOAPEnvelope(SOAPEnvelope envelope) {
-        setOMDocumentElement(envelope);
-    }
-
     public void checkDocumentElement(OMElement element) {
         if (!(element instanceof SOAPEnvelope)) {
             throw new OMException("Child not allowed; must be a SOAPEnvelope");