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/03/01 20:49:25 UTC

svn commit: r1733124 - in /webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom: om/impl/mixin/ soap/impl/intf/ soap/impl/mixin/

Author: veithen
Date: Tue Mar  1 19:49:25 2016
New Revision: 1733124

URL: http://svn.apache.org/viewvc?rev=1733124&view=rev
Log:
Some code simplifications.

Modified:
    webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomElementSupport.aj
    webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/intf/AxiomSOAPFault.java
    webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP11FaultSupport.aj
    webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP12FaultClassifierSupport.aj
    webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP12FaultSupport.aj
    webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAPFaultSupport.aj

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=1733124&r1=1733123&r2=1733124&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 Tue Mar  1 19:49:25 2016
@@ -255,8 +255,15 @@ public aspect AxiomElementSupport {
         coreSetNextSibling(null);
     }
     
-    public void AxiomElement.insertChild(Class[] sequence, int pos, OMNode newChild) {
-        if (!sequence[pos].isInstance(newChild)) {
+    public <T extends OMElement> void AxiomElement.insertChild(Class[] sequence, Class<T> type, T newChild) {
+        int pos = -1;
+        for (int i=0; i<sequence.length; i++) {
+            if (sequence[i] == type) {
+                pos = i;
+                break;
+            }
+        }
+        if (pos == -1) {
             throw new IllegalArgumentException();
         }
         OMNode child = getFirstOMChild();
@@ -267,7 +274,7 @@ public aspect AxiomElementSupport {
                     // the right position
                     return;
                 }
-                if (sequence[pos].isInstance(child)) {
+                if (type.isInstance(child)) {
                     // Replace the existing child
                     child.insertSiblingAfter(newChild);
                     child.detach();

Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/intf/AxiomSOAPFault.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/intf/AxiomSOAPFault.java?rev=1733124&r1=1733123&r2=1733124&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/intf/AxiomSOAPFault.java (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/intf/AxiomSOAPFault.java Tue Mar  1 19:49:25 2016
@@ -21,5 +21,5 @@ package org.apache.axiom.soap.impl.intf;
 import org.apache.axiom.soap.SOAPFault;
 
 public interface AxiomSOAPFault extends AxiomSOAPElement, SOAPFault {
-
+    Class[] getSequence();
 }

Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP11FaultSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP11FaultSupport.aj?rev=1733124&r1=1733123&r2=1733124&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP11FaultSupport.aj (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP11FaultSupport.aj Tue Mar  1 19:49:25 2016
@@ -25,7 +25,6 @@ import org.apache.axiom.soap.SOAPFaultDe
 import org.apache.axiom.soap.SOAPFaultNode;
 import org.apache.axiom.soap.SOAPFaultReason;
 import org.apache.axiom.soap.SOAPFaultRole;
-import org.apache.axiom.soap.SOAPProcessingException;
 import org.apache.axiom.soap.impl.intf.AxiomSOAP11Fault;
 
 public aspect AxiomSOAP11FaultSupport {
@@ -36,27 +35,14 @@ public aspect AxiomSOAP11FaultSupport {
         return AxiomSOAP11Fault.class;
     }
     
-    public final void AxiomSOAP11Fault.setCode(SOAPFaultCode soapFaultCode)
-            throws SOAPProcessingException {
-        insertChild(sequence, 0, soapFaultCode);
+    public final Class[] AxiomSOAP11Fault.getSequence() {
+        return sequence;
     }
-
-    public final void AxiomSOAP11Fault.setReason(SOAPFaultReason reason) throws SOAPProcessingException {
-        insertChild(sequence, 1, reason);
-    }
-
-    public final void AxiomSOAP11Fault.setNode(SOAPFaultNode node) throws SOAPProcessingException {
+    
+    public final void AxiomSOAP11Fault.setNode(SOAPFaultNode node) {
         throw new UnsupportedOperationException("SOAP 1.1 has no SOAP Fault Node");
     }
 
-    public final void AxiomSOAP11Fault.setRole(SOAPFaultRole role) throws SOAPProcessingException {
-        insertChild(sequence, 2, role);
-    }
-
-    public final void AxiomSOAP11Fault.setDetail(SOAPFaultDetail detail) throws SOAPProcessingException {
-        insertChild(sequence, 3, detail);
-    }
-
     public final SOAPFaultCode AxiomSOAP11Fault.getCode() {
         return (SOAPFaultCode)getFirstChildWithName(SOAP11Constants.QNAME_FAULT_CODE);
     }

Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP12FaultClassifierSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP12FaultClassifierSupport.aj?rev=1733124&r1=1733123&r2=1733124&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP12FaultClassifierSupport.aj (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP12FaultClassifierSupport.aj Tue Mar  1 19:49:25 2016
@@ -39,7 +39,7 @@ public aspect AxiomSOAP12FaultClassifier
     }
 
     public final void AxiomSOAP12FaultClassifier.setValue(SOAPFaultValue value) {
-        insertChild(sequence, 0, value);
+        insertChild(sequence, SOAPFaultValue.class, value);
     }
     
     public final SOAPFaultSubCode AxiomSOAP12FaultClassifier.getSubCode() {
@@ -47,7 +47,7 @@ public aspect AxiomSOAP12FaultClassifier
     }
     
     public final void AxiomSOAP12FaultClassifier.setSubCode(SOAPFaultSubCode subCode) {
-        insertChild(sequence, 1, subCode);
+        insertChild(sequence, SOAPFaultSubCode.class, subCode);
     }
 
     public final QName AxiomSOAP12FaultClassifier.getValueAsQName() {

Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP12FaultSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP12FaultSupport.aj?rev=1733124&r1=1733123&r2=1733124&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP12FaultSupport.aj (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAP12FaultSupport.aj Tue Mar  1 19:49:25 2016
@@ -25,7 +25,6 @@ import org.apache.axiom.soap.SOAPFaultDe
 import org.apache.axiom.soap.SOAPFaultNode;
 import org.apache.axiom.soap.SOAPFaultReason;
 import org.apache.axiom.soap.SOAPFaultRole;
-import org.apache.axiom.soap.SOAPProcessingException;
 import org.apache.axiom.soap.impl.intf.AxiomSOAP12Fault;
 
 public aspect AxiomSOAP12FaultSupport {
@@ -36,25 +35,12 @@ public aspect AxiomSOAP12FaultSupport {
         return AxiomSOAP12Fault.class;
     }
     
-    public final void AxiomSOAP12Fault.setCode(SOAPFaultCode soapFaultCode) throws SOAPProcessingException {
-        insertChild(sequence, 0, soapFaultCode);
+    public final Class[] AxiomSOAP12Fault.getSequence() {
+        return sequence;
     }
-
-
-    public final void AxiomSOAP12Fault.setReason(SOAPFaultReason reason) throws SOAPProcessingException {
-        insertChild(sequence, 1, reason);
-    }
-
-    public final void AxiomSOAP12Fault.setNode(SOAPFaultNode node) throws SOAPProcessingException {
-        insertChild(sequence, 2, node);
-    }
-
-    public final void AxiomSOAP12Fault.setRole(SOAPFaultRole role) throws SOAPProcessingException {
-        insertChild(sequence, 3, role);
-    }
-
-    public final void AxiomSOAP12Fault.setDetail(SOAPFaultDetail detail) throws SOAPProcessingException {
-        insertChild(sequence, 4, detail);
+    
+    public final void AxiomSOAP12Fault.setNode(SOAPFaultNode node) {
+        insertChild(sequence, SOAPFaultNode.class, node);
     }
 
     public final SOAPFaultCode AxiomSOAP12Fault.getCode() {

Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAPFaultSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAPFaultSupport.aj?rev=1733124&r1=1733123&r2=1733124&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAPFaultSupport.aj (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/soap/impl/mixin/AxiomSOAPFaultSupport.aj Tue Mar  1 19:49:25 2016
@@ -39,6 +39,22 @@ public aspect AxiomSOAPFaultSupport {
                 || child instanceof SOAPFaultReason || child instanceof SOAPFaultRole || child instanceof SOAPFaultNode;
     }
 
+    public final void AxiomSOAPFault.setCode(SOAPFaultCode soapFaultCode) {
+        insertChild(getSequence(), SOAPFaultCode.class, soapFaultCode);
+    }
+
+    public final void AxiomSOAPFault.setReason(SOAPFaultReason reason) {
+        insertChild(getSequence(), SOAPFaultReason.class, reason);
+    }
+
+    public final void AxiomSOAPFault.setRole(SOAPFaultRole role) {
+        insertChild(getSequence(), SOAPFaultRole.class, role);
+    }
+
+    public final void AxiomSOAPFault.setDetail(SOAPFaultDetail detail) {
+        insertChild(getSequence(), SOAPFaultDetail.class, detail);
+    }
+
     public final void AxiomSOAPFault.setException(Exception e) {
         StringWriter sw = new StringWriter();
         e.printStackTrace(new PrintWriter(sw));