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 2012/06/23 12:07:27 UTC

svn commit: r1353105 [1/2] - in /webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom: om/impl/dom/ soap/impl/dom/ soap/impl/dom/factory/ soap/impl/dom/soap11/ soap/impl/dom/soap12/

Author: veithen
Date: Sat Jun 23 10:07:22 2012
New Revision: 1353105

URL: http://svn.apache.org/viewvc?rev=1353105&view=rev
Log:
Finished unifying the code for Node#cloneNode and OMElement#cloneOMElement.

Modified:
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/AttrImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/AttributeMap.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentFragmentImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ElementImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/LeafNode.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/NodeImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ParentNode.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPBodyImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPElement.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPEnvelopeImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultCodeImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultDetailImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultNodeImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultReasonImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultRoleImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultSubCodeImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultTextImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultValueImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderBlockImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/factory/DOMSOAPFactory.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11BodyImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11Factory.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultCodeImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultDetailImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultReasonImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultRoleImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultSubCodeImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultTextImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultValueImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderBlockImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12BodyImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12Factory.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12FaultCodeImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12FaultDetailImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12FaultImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12FaultNodeImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12FaultReasonImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12FaultRoleImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12FaultSubCodeImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12FaultTextImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12FaultValueImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12HeaderBlockImpl.java
    webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12HeaderImpl.java

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/AttrImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/AttrImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/AttrImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/AttrImpl.java Sat Jun 23 10:07:22 2012
@@ -463,7 +463,7 @@ public class AttrImpl extends RootNode i
         throw new UnsupportedOperationException();
     }
 
-    ParentNode shallowClone(OMCloneOptions options, ParentNode targetParent) {
+    ParentNode shallowClone(OMCloneOptions options, ParentNode targetParent, boolean namespaceRepairing) {
         // Note: targetParent is always null here
         return new AttrImpl(localName, namespace, type, factory);
     }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/AttributeMap.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/AttributeMap.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/AttributeMap.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/AttributeMap.java Sat Jun 23 10:07:22 2012
@@ -227,7 +227,7 @@ public class AttributeMap implements Nam
                 nodes.setSize(size);
                 for (int i = 0; i < size; ++i) {
                     AttrImpl n = (AttrImpl) srcnodes.elementAt(i);
-                    AttrImpl clone = (AttrImpl)n.clone(options, null, true);
+                    AttrImpl clone = (AttrImpl)n.clone(options, null, true, false);
                     clone.isSpecified(n.isSpecified());
                     nodes.setElementAt(clone, i);
                     clone.setOwnerElement(ownerNode, true);

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentFragmentImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentFragmentImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentFragmentImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentFragmentImpl.java Sat Jun 23 10:07:22 2012
@@ -80,7 +80,7 @@ public class DocumentFragmentImpl extend
         throw new UnsupportedOperationException("TODO");
     }
 
-    ParentNode shallowClone(OMCloneOptions options, ParentNode targetParent) {
+    ParentNode shallowClone(OMCloneOptions options, ParentNode targetParent, boolean namespaceRepairing) {
         return new DocumentFragmentImpl(factory);
     }
 

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentImpl.java Sat Jun 23 10:07:22 2012
@@ -588,7 +588,7 @@ public class DocumentImpl extends RootNo
         OMDocumentImplUtil.internalSerialize(this, writer, cache, includeXMLDeclaration);
     }
 
-    ParentNode shallowClone(OMCloneOptions options, ParentNode targetParent) {
+    ParentNode shallowClone(OMCloneOptions options, ParentNode targetParent, boolean namespaceRepairing) {
         DocumentImpl clone = new DocumentImpl(factory);
         clone.xmlVersion = xmlVersion;
         clone.xmlEncoding = xmlEncoding;

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ElementImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ElementImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ElementImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ElementImpl.java Sat Jun 23 10:07:22 2012
@@ -22,7 +22,6 @@ package org.apache.axiom.om.impl.dom;
 import org.apache.axiom.om.OMAttribute;
 import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMConstants;
-import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMException;
 import org.apache.axiom.om.OMFactory;
@@ -1113,26 +1112,34 @@ public class ElementImpl extends ParentN
     }
 
     public OMElement cloneOMElement(OMCloneOptions options) {
-        return (OMElement)clone(options, null, true);
+        return (OMElement)clone(options, null, true, true);
     }
 
-    final ParentNode shallowClone(OMCloneOptions options, ParentNode targetParent) {
+    final ParentNode shallowClone(OMCloneOptions options, ParentNode targetParent, boolean namespaceRepairing) {
         ElementImpl clone;
         if (options.isPreserveModel()) {
-            clone = (ElementImpl)createClone(options, (OMContainer)targetParent);
+            clone = (ElementImpl)createClone(options, targetParent, namespaceRepairing);
         } else {
-            clone = (ElementImpl)factory.createOMElement(localName, namespace, (OMContainer)targetParent);
+            clone = new ElementImpl(targetParent, localName, namespace, null, factory, namespaceRepairing);
         }
         for (Iterator it = getAllDeclaredNamespaces(); it.hasNext(); ) {
             OMNamespace ns = (OMNamespace)it.next();
             clone.declareNamespace(ns);
         }
         clone.attributes.cloneContent(options, attributes);
+        if (namespaceRepairing) {
+            for (Iterator it = getAllAttributes(); it.hasNext(); ) {
+                OMNamespace ns = ((OMAttribute)it.next()).getNamespace();
+                if (ns != null) {
+                    clone.declareNamespace(ns);
+                }
+            }
+        }
         return clone;
     }
 
-    protected OMElement createClone(OMCloneOptions options, OMContainer targetParent) {
-        return factory.createOMElement(localName, namespace, targetParent);
+    protected OMElement createClone(OMCloneOptions options, ParentNode targetParent, boolean generateNSDecl) {
+        return new ElementImpl(targetParent, localName, namespace, null, factory, generateNSDecl);
     }
     
     public void setLineNumber(int lineNumber) {

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/LeafNode.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/LeafNode.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/LeafNode.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/LeafNode.java Sat Jun 23 10:07:22 2012
@@ -92,7 +92,7 @@ public abstract class LeafNode extends N
                                        DOMException.HIERARCHY_REQUEST_ERR, null));
     }
 
-    final NodeImpl clone(OMCloneOptions options, ParentNode targetParent, boolean deep) {
+    final NodeImpl clone(OMCloneOptions options, ParentNode targetParent, boolean deep, boolean namespaceRepairing) {
         beforeClone(options);
         LeafNode clone = createClone();
         if (targetParent != null) {

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/NodeImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/NodeImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/NodeImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/NodeImpl.java Sat Jun 23 10:07:22 2012
@@ -156,7 +156,7 @@ public abstract class NodeImpl implement
         OMCloneOptions options = new OMCloneOptions();
         // This is not specified by the API, but it's compatible with versions before 1.2.14
         options.setPreserveModel(true);
-        NodeImpl clone = clone(options, null, getNodeType() == Node.ATTRIBUTE_NODE ? true : deep);
+        NodeImpl clone = clone(options, null, getNodeType() == Node.ATTRIBUTE_NODE ? true : deep, false);
         if (!(clone instanceof DocumentImpl)) {
             clone.setOwnerDocument(ownerDocument());
         }
@@ -877,5 +877,5 @@ public abstract class NodeImpl implement
     // by certain subclasses (for the reason, see AXIOM-385).
     public abstract void internalSerialize(XMLStreamWriter writer, boolean cache) throws XMLStreamException;
     
-    abstract NodeImpl clone(OMCloneOptions options, ParentNode targetParent, boolean deep);
+    abstract NodeImpl clone(OMCloneOptions options, ParentNode targetParent, boolean deep, boolean namespaceRepairing);
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ParentNode.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ParentNode.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ParentNode.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ParentNode.java Sat Jun 23 10:07:22 2012
@@ -504,17 +504,17 @@ public abstract class ParentNode extends
         return false;
     }
 
-    final NodeImpl clone(OMCloneOptions options, ParentNode targetParent, boolean deep) {
-        ParentNode clone = shallowClone(options, targetParent);
+    final NodeImpl clone(OMCloneOptions options, ParentNode targetParent, boolean deep, boolean namespaceRepairing) {
+        ParentNode clone = shallowClone(options, targetParent, namespaceRepairing);
         if (deep) {
             for (Node child = getFirstChild(); child != null; child = child.getNextSibling()) {
-                ((NodeImpl)child).clone(options, clone, true);
+                ((NodeImpl)child).clone(options, clone, true, namespaceRepairing);
             }
         }
         return clone;
     }
     
-    abstract ParentNode shallowClone(OMCloneOptions options, ParentNode targetParent);
+    abstract ParentNode shallowClone(OMCloneOptions options, ParentNode targetParent, boolean namespaceRepairing);
 
     /**
      * This method is intended only to be used by Axiom intenals when merging Objects from different

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPBodyImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPBodyImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPBodyImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPBodyImpl.java Sat Jun 23 10:07:22 2012
@@ -19,13 +19,13 @@
 
 package org.apache.axiom.soap.impl.dom;
 
-import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMConstants;
-import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMException;
+import org.apache.axiom.om.OMFactory;
 import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.soap.SOAP11Constants;
 import org.apache.axiom.soap.SOAP12Constants;
 import org.apache.axiom.soap.SOAPBody;
@@ -48,15 +48,9 @@ public abstract class SOAPBodyImpl exten
 
     }
 
-    /**
-     * Constructor SOAPBodyImpl
-     *
-     * @param envelope
-     * @param builder
-     */
-    public SOAPBodyImpl(SOAPEnvelope envelope, OMXMLParserWrapper builder,
-                        SOAPFactory factory) {
-        super(envelope, SOAPConstants.BODY_LOCAL_NAME, builder, factory);
+    public SOAPBodyImpl(ParentNode parentNode, OMNamespace ns,
+            OMXMLParserWrapper builder, OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, SOAPConstants.BODY_LOCAL_NAME, ns, builder, factory, generateNSDecl);
     }
 
     /**
@@ -167,8 +161,4 @@ public abstract class SOAPBodyImpl exten
         } 
 
     }
-
-    protected OMElement createClone(OMCloneOptions options, OMContainer targetParent) {
-        return ((SOAPFactory)factory).createSOAPBody((SOAPEnvelope)targetParent);
-    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPElement.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPElement.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPElement.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPElement.java Sat Jun 23 10:07:22 2012
@@ -20,6 +20,7 @@
 package org.apache.axiom.soap.impl.dom;
 
 import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
 import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
 import org.apache.axiom.om.impl.dom.ElementImpl;
@@ -48,17 +49,9 @@ public abstract class SOAPElement extend
         this.localName = localName;
     }
 
-
-    protected SOAPElement(OMElement parent,
-                          String localName,
-                          OMXMLParserWrapper builder,
-                          SOAPFactory factory) {
-        super((ParentNode) parent, localName, null, builder, factory, false);
-    }
-
-    protected SOAPElement(String localName, OMNamespace ns,
-                          SOAPFactory factory) {
-        super(null, localName, ns, null, factory, true);
+    public SOAPElement(ParentNode parentNode, String localName, OMNamespace ns,
+            OMXMLParserWrapper builder, OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, localName, ns, builder, factory, generateNSDecl);
     }
 
     /** This has to be implemented by all the derived classes to check for the correct parent. */

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPEnvelopeImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPEnvelopeImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPEnvelopeImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPEnvelopeImpl.java Sat Jun 23 10:07:22 2012
@@ -21,15 +21,16 @@ package org.apache.axiom.soap.impl.dom;
 
 import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMConstants;
-import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMException;
+import org.apache.axiom.om.OMFactory;
 import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMNode;
 import org.apache.axiom.om.OMXMLParserWrapper;
 import org.apache.axiom.om.impl.MTOMXMLStreamWriter;
 import org.apache.axiom.om.impl.dom.DocumentImpl;
 import org.apache.axiom.om.impl.dom.NodeImpl;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.om.impl.util.OMSerializerUtil;
 import org.apache.axiom.soap.SOAP11Constants;
 import org.apache.axiom.soap.SOAP11Version;
@@ -55,14 +56,9 @@ public class SOAPEnvelopeImpl extends SO
 
     private static final QName HEADER_QNAME = new QName(SOAPConstants.HEADER_LOCAL_NAME);
 
-    /** @param builder  */
-    public SOAPEnvelopeImpl(OMXMLParserWrapper builder, SOAPFactory factory) {
-        super(null, SOAPConstants.SOAPENVELOPE_LOCAL_NAME, builder, factory);
-    }
-
-    /** @param ns  */
-    public SOAPEnvelopeImpl(OMNamespace ns, SOAPFactory factory) {
-        super(SOAPConstants.SOAPENVELOPE_LOCAL_NAME, ns, factory);
+    public SOAPEnvelopeImpl(ParentNode parentNode, OMNamespace ns,
+            OMXMLParserWrapper builder, OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, SOAPConstants.SOAPENVELOPE_LOCAL_NAME, ns, builder, factory, generateNSDecl);
     }
 
     public SOAPVersion getVersion() {
@@ -325,7 +321,7 @@ public class SOAPEnvelopeImpl extends SO
         return null;
     }
 
-    protected OMElement createClone(OMCloneOptions options, OMContainer targetParent) {
-        return ((SOAPFactory)factory).createSOAPEnvelope(getNamespace());
+    protected OMElement createClone(OMCloneOptions options, ParentNode targetParent, boolean generateNSDecl) {
+        return new SOAPEnvelopeImpl(targetParent, namespace, null, factory, generateNSDecl);
     }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultCodeImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultCodeImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultCodeImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultCodeImpl.java Sat Jun 23 10:07:22 2012
@@ -19,10 +19,10 @@
 
 package org.apache.axiom.soap.impl.dom;
 
-import org.apache.axiom.om.OMCloneOptions;
-import org.apache.axiom.om.OMContainer;
-import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.om.util.ElementHelper;
 import org.apache.axiom.soap.SOAP12Constants;
 import org.apache.axiom.soap.SOAPFactory;
@@ -33,17 +33,10 @@ import org.apache.axiom.soap.SOAPFaultVa
 import org.apache.axiom.soap.SOAPProcessingException;
 
 public abstract class SOAPFaultCodeImpl extends SOAPElement implements SOAPFaultCode {
-
-    /**
-     * Constructor OMElementImpl
-     *
-     * @param parent
-     * @param builder
-     */
-    public SOAPFaultCodeImpl(SOAPFault parent, OMXMLParserWrapper builder,
-                             SOAPFactory factory) {
-        super(parent, factory.getSOAPVersion().getFaultCodeQName().getLocalPart(), builder,
-              factory);
+    public SOAPFaultCodeImpl(ParentNode parentNode, OMNamespace ns,
+            OMXMLParserWrapper builder, OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, ((SOAPFactory)factory).getSOAPVersion().getFaultCodeQName().getLocalPart(),
+                ns, builder, factory, generateNSDecl);
     }
 
     /** @param parent  */
@@ -69,8 +62,4 @@ public abstract class SOAPFaultCodeImpl 
     public SOAPFaultSubCode getSubCode() {
         return (SOAPFaultSubCode)getFirstChildWithName(SOAP12Constants.QNAME_FAULT_SUBCODE);
     }
-
-    protected OMElement createClone(OMCloneOptions options, OMContainer targetParent) {
-        return ((SOAPFactory)factory).createSOAPFaultCode((SOAPFault)targetParent);
-    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultDetailImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultDetailImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultDetailImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultDetailImpl.java Sat Jun 23 10:07:22 2012
@@ -19,11 +19,11 @@
 
 package org.apache.axiom.soap.impl.dom;
 
-import org.apache.axiom.om.OMCloneOptions;
-import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
 import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.om.impl.serialize.StreamWriterToContentHandlerConverter;
 import org.apache.axiom.soap.SOAPFactory;
 import org.apache.axiom.soap.SOAPFault;
@@ -35,9 +35,10 @@ import javax.xml.stream.XMLStreamWriter;
 import java.util.Iterator;
 
 public abstract class SOAPFaultDetailImpl extends SOAPElement implements SOAPFaultDetail {
-
-    protected SOAPFaultDetailImpl(OMNamespace ns, SOAPFactory factory) {
-        super(factory.getSOAPVersion().getFaultDetailQName().getLocalPart(), ns, factory);
+    public SOAPFaultDetailImpl(ParentNode parentNode, OMNamespace ns,
+            OMXMLParserWrapper builder, OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, ((SOAPFactory)factory).getSOAPVersion().getFaultDetailQName().getLocalPart(),
+                ns, builder, factory, generateNSDecl);
     }
 
     protected SOAPFaultDetailImpl(SOAPFault parent,
@@ -48,13 +49,6 @@ public abstract class SOAPFaultDetailImp
                 extractNamespaceFromParent, factory);
     }
 
-    protected SOAPFaultDetailImpl(SOAPFault parent,
-                                  OMXMLParserWrapper builder,
-                                  SOAPFactory factory) {
-        super(parent, factory.getSOAPVersion().getFaultDetailQName().getLocalPart(), builder,
-                factory);
-    }
-
     public void addDetailEntry(OMElement detailElement) {
         this.addChild(detailElement);
     }
@@ -78,8 +72,4 @@ public abstract class SOAPFaultDetailImp
 
         super.internalSerialize(writer, cache);
     }
-
-    protected OMElement createClone(OMCloneOptions options, OMContainer targetParent) {
-        return ((SOAPFactory)factory).createSOAPFaultDetail((SOAPFault)targetParent);
-    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultImpl.java Sat Jun 23 10:07:22 2012
@@ -19,11 +19,11 @@
 
 package org.apache.axiom.soap.impl.dom;
 
-import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMConstants;
-import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMException;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
 import org.apache.axiom.om.impl.dom.ElementImpl;
 import org.apache.axiom.om.impl.dom.ParentNode;
@@ -73,15 +73,9 @@ public abstract class SOAPFaultImpl exte
         super(parent, SOAPConstants.SOAPFAULT_LOCAL_NAME, true, factory);
     }
 
-    /**
-     * Constructor SOAPFaultImpl
-     *
-     * @param parent
-     * @param builder
-     */
-    public SOAPFaultImpl(SOAPBody parent, OMXMLParserWrapper builder,
-                         SOAPFactory factory) {
-        super(parent, SOAPConstants.SOAPFAULT_LOCAL_NAME, builder, factory);
+    public SOAPFaultImpl(ParentNode parentNode, OMNamespace ns,
+            OMXMLParserWrapper builder, OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, SOAPConstants.SOAPFAULT_LOCAL_NAME, ns, builder, factory, generateNSDecl);
     }
 
     protected abstract SOAPFaultDetail getNewSOAPFaultDetail(SOAPFault fault)
@@ -201,10 +195,4 @@ public abstract class SOAPFaultImpl exte
     protected abstract void serializeFaultNode(
             XMLStreamWriter writer)
             throws XMLStreamException;
-
-    protected OMElement createClone(OMCloneOptions options, OMContainer targetParent) {
-        return e == null ?
-                ((SOAPFactory)factory).createSOAPFault((SOAPBody) targetParent):
-                ((SOAPFactory)factory).createSOAPFault((SOAPBody) targetParent, e);
-    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultNodeImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultNodeImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultNodeImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultNodeImpl.java Sat Jun 23 10:07:22 2012
@@ -19,10 +19,10 @@
 
 package org.apache.axiom.soap.impl.dom;
 
-import org.apache.axiom.om.OMCloneOptions;
-import org.apache.axiom.om.OMContainer;
-import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.om.impl.serialize.StreamWriterToContentHandlerConverter;
 import org.apache.axiom.om.impl.util.OMSerializerUtil;
 import org.apache.axiom.soap.SOAP12Constants;
@@ -41,10 +41,9 @@ public abstract class SOAPFaultNodeImpl 
         super(parent, SOAP12Constants.SOAP_FAULT_NODE_LOCAL_NAME, true, factory);
     }
 
-    public SOAPFaultNodeImpl(SOAPFault parent, OMXMLParserWrapper builder,
-                             SOAPFactory factory) {
-        super(parent, SOAP12Constants.SOAP_FAULT_NODE_LOCAL_NAME, builder,
-              factory);
+    public SOAPFaultNodeImpl(ParentNode parentNode, OMNamespace ns,
+            OMXMLParserWrapper builder, OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, SOAP12Constants.SOAP_FAULT_NODE_LOCAL_NAME, ns, builder, factory, generateNSDecl);
     }
 
     public void setFaultNodeValue(String uri) {
@@ -107,8 +106,4 @@ public abstract class SOAPFaultNodeImpl 
 
 
     }
-
-    protected OMElement createClone(OMCloneOptions options, OMContainer targetParent) {
-        return ((SOAPFactory)factory).createSOAPFaultNode((SOAPFault)targetParent);
-    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultReasonImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultReasonImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultReasonImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultReasonImpl.java Sat Jun 23 10:07:22 2012
@@ -19,14 +19,14 @@
 
 package org.apache.axiom.soap.impl.dom;
 
-import org.apache.axiom.om.OMCloneOptions;
-import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMNode;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.om.util.ElementHelper;
 import org.apache.axiom.soap.SOAPFactory;
-import org.apache.axiom.soap.SOAPFault;
 import org.apache.axiom.soap.SOAPFaultReason;
 import org.apache.axiom.soap.SOAPFaultText;
 import org.apache.axiom.soap.SOAPProcessingException;
@@ -39,16 +39,10 @@ public abstract class SOAPFaultReasonImp
         SOAPFaultReason {
     protected SOAPFaultText text;
 
-    /**
-     * Constructor OMElementImpl
-     *
-     * @param parent
-     * @param builder
-     */
-    public SOAPFaultReasonImpl(SOAPFault parent, OMXMLParserWrapper builder,
-                               SOAPFactory factory) {
-        super(parent, factory.getSOAPVersion().getFaultReasonQName().getLocalPart(), builder,
-              factory);
+    public SOAPFaultReasonImpl(ParentNode parentNode, OMNamespace ns,
+            OMXMLParserWrapper builder, OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, ((SOAPFactory)factory).getSOAPVersion().getFaultReasonQName().getLocalPart(),
+                ns, builder, factory, generateNSDecl);
     }
 
     /** @param parent  */
@@ -80,8 +74,4 @@ public abstract class SOAPFaultReasonImp
         //TODO Ruchith
         throw new UnsupportedOperationException();
     }
-
-    protected OMElement createClone(OMCloneOptions options, OMContainer targetParent) {
-        return ((SOAPFactory)factory).createSOAPFaultReason((SOAPFault)targetParent);
-    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultRoleImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultRoleImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultRoleImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultRoleImpl.java Sat Jun 23 10:07:22 2012
@@ -19,10 +19,10 @@
 
 package org.apache.axiom.soap.impl.dom;
 
-import org.apache.axiom.om.OMCloneOptions;
-import org.apache.axiom.om.OMContainer;
-import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.om.impl.serialize.StreamWriterToContentHandlerConverter;
 import org.apache.axiom.om.impl.util.OMSerializerUtil;
 import org.apache.axiom.soap.SOAPFactory;
@@ -33,7 +33,6 @@ import org.apache.axiom.soap.SOAPProcess
 import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamWriter;
 
-
 public abstract class SOAPFaultRoleImpl extends SOAPElement implements
         SOAPFaultRole {
 
@@ -44,12 +43,9 @@ public abstract class SOAPFaultRoleImpl 
         super(parent, localName, extractNamespaceFromParent, factory);
     }
 
-    public SOAPFaultRoleImpl(SOAPFault parent, OMXMLParserWrapper builder,
-                             SOAPFactory factory) {
-        super(parent,
-              factory.getSOAPVersion().getFaultRoleQName().getLocalPart(),
-              builder,
-              factory);
+    public SOAPFaultRoleImpl(ParentNode parentNode, OMNamespace ns,
+            OMXMLParserWrapper builder, OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, ((SOAPFactory)factory).getSOAPVersion().getFaultRoleQName().getLocalPart(), ns, builder, factory, generateNSDecl);
     }
 
     public void setRoleValue(String uri) {
@@ -104,8 +100,4 @@ public abstract class SOAPFaultRoleImpl 
             // do not serialise the siblings
         }
     }
-
-    protected OMElement createClone(OMCloneOptions options, OMContainer targetParent) {
-        return ((SOAPFactory)factory).createSOAPFaultRole((SOAPFault)targetParent);
-    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultSubCodeImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultSubCodeImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultSubCodeImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultSubCodeImpl.java Sat Jun 23 10:07:22 2012
@@ -19,14 +19,14 @@
 
 package org.apache.axiom.soap.impl.dom;
 
-import org.apache.axiom.om.OMCloneOptions;
-import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.om.util.ElementHelper;
 import org.apache.axiom.soap.SOAP12Constants;
 import org.apache.axiom.soap.SOAPFactory;
-import org.apache.axiom.soap.SOAPFaultCode;
 import org.apache.axiom.soap.SOAPFaultSubCode;
 import org.apache.axiom.soap.SOAPFaultValue;
 import org.apache.axiom.soap.SOAPProcessingException;
@@ -42,11 +42,9 @@ public abstract class SOAPFaultSubCodeIm
         super(parent, localName, true, factory);
     }
 
-    protected SOAPFaultSubCodeImpl(OMElement parent,
-                                   String localName,
-                                   OMXMLParserWrapper builder,
-                                   SOAPFactory factory) {
-        super(parent, localName, builder, factory);
+    public SOAPFaultSubCodeImpl(ParentNode parentNode, String localName, OMNamespace ns,
+            OMXMLParserWrapper builder, OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, localName, ns, builder, factory, generateNSDecl);
     }
 
     public void setValue(SOAPFaultValue soapFaultSubCodeValue) throws SOAPProcessingException {
@@ -71,12 +69,4 @@ public abstract class SOAPFaultSubCodeIm
         }
         return subCode;
     }
-
-    protected OMElement createClone(OMCloneOptions options, OMContainer targetParent) {
-        if (targetParent instanceof SOAPFaultSubCode) {
-            return ((SOAPFactory)factory).createSOAPFaultSubCode((SOAPFaultSubCode)targetParent);
-        } else {
-            return ((SOAPFactory)factory).createSOAPFaultSubCode((SOAPFaultCode)targetParent);
-        }
-    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultTextImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultTextImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultTextImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultTextImpl.java Sat Jun 23 10:07:22 2012
@@ -20,13 +20,12 @@
 package org.apache.axiom.soap.impl.dom;
 
 import org.apache.axiom.om.OMAttribute;
-import org.apache.axiom.om.OMCloneOptions;
-import org.apache.axiom.om.OMContainer;
-import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
 import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
 import org.apache.axiom.om.impl.dom.AttrImpl;
 import org.apache.axiom.om.impl.dom.DocumentImpl;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.soap.SOAP12Constants;
 import org.apache.axiom.soap.SOAPFactory;
 import org.apache.axiom.soap.SOAPFaultReason;
@@ -49,16 +48,15 @@ public abstract class SOAPFaultTextImpl 
                 SOAP12Constants.SOAP_FAULT_TEXT_LANG_ATTR_NS_PREFIX);
     }
 
-    protected SOAPFaultTextImpl(SOAPFaultReason parent,
-                                OMXMLParserWrapper builder, SOAPFactory factory) {
-        super(parent, SOAP12Constants.SOAP_FAULT_TEXT_LOCAL_NAME, builder,
-              factory);
+    public SOAPFaultTextImpl(ParentNode parentNode, OMNamespace ns,
+            OMXMLParserWrapper builder, OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, SOAP12Constants.SOAP_FAULT_TEXT_LOCAL_NAME, ns, builder, factory, generateNSDecl);
+        // TODO Auto-generated constructor stub
         this.langNamespace = factory.createOMNamespace(
                 SOAP12Constants.SOAP_FAULT_TEXT_LANG_ATTR_NS_URI,
                 SOAP12Constants.SOAP_FAULT_TEXT_LANG_ATTR_NS_PREFIX);
     }
 
-
     public void setLang(String lang) {
         langAttr =
                 new AttrImpl((DocumentImpl)getOwnerDocument(),
@@ -79,8 +77,4 @@ public abstract class SOAPFaultTextImpl 
 
         return langAttr == null ? null : langAttr.getAttributeValue();
     }
-
-    protected OMElement createClone(OMCloneOptions options, OMContainer targetParent) {
-        return ((SOAPFactory)factory).createSOAPFaultText((SOAPFaultReason)targetParent);
-    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultValueImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultValueImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultValueImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPFaultValueImpl.java Sat Jun 23 10:07:22 2012
@@ -19,13 +19,13 @@
 
 package org.apache.axiom.soap.impl.dom;
 
-import org.apache.axiom.om.OMCloneOptions;
-import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.soap.SOAP12Constants;
 import org.apache.axiom.soap.SOAPFactory;
-import org.apache.axiom.soap.SOAPFaultCode;
 import org.apache.axiom.soap.SOAPFaultValue;
 import org.apache.axiom.soap.SOAPProcessingException;
 
@@ -37,13 +37,8 @@ public abstract class SOAPFaultValueImpl
               factory);
     }
 
-    protected SOAPFaultValueImpl(OMElement parent, OMXMLParserWrapper builder,
-                                 SOAPFactory factory) {
-        super(parent, SOAP12Constants.SOAP_FAULT_VALUE_LOCAL_NAME, builder,
-              factory);
-    }
-
-    protected OMElement createClone(OMCloneOptions options, OMContainer targetParent) {
-        return ((SOAPFactory)factory).createSOAPFaultValue((SOAPFaultCode)targetParent);
+    public SOAPFaultValueImpl(ParentNode parentNode, OMNamespace ns,
+            OMXMLParserWrapper builder, OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, SOAP12Constants.SOAP_FAULT_VALUE_LOCAL_NAME, ns, builder, factory, generateNSDecl);
     }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderBlockImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderBlockImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderBlockImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderBlockImpl.java Sat Jun 23 10:07:22 2012
@@ -21,7 +21,6 @@ package org.apache.axiom.soap.impl.dom;
 
 import org.apache.axiom.om.OMAttribute;
 import org.apache.axiom.om.OMCloneOptions;
-import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMDataSource;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMFactory;
@@ -34,8 +33,6 @@ import org.apache.axiom.om.impl.dom.Elem
 import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.soap.SOAPCloneOptions;
 import org.apache.axiom.soap.SOAPConstants;
-import org.apache.axiom.soap.SOAPFactory;
-import org.apache.axiom.soap.SOAPHeader;
 import org.apache.axiom.soap.SOAPHeaderBlock;
 import org.apache.axiom.soap.SOAPProcessingException;
 
@@ -121,13 +118,7 @@ public abstract class SOAPHeaderBlockImp
         }
     }
     
-    protected OMElement createClone(OMCloneOptions options, OMContainer targetParent) {
-        SOAPHeaderBlock clone = ((SOAPFactory)factory).createSOAPHeaderBlock(getLocalName(), getNamespace(), (SOAPHeader)targetParent);
-        copyData(options, clone);
-        return clone;
-    }
-
-    private void copyData(OMCloneOptions options, SOAPHeaderBlock targetSHB) {
+    protected final void copyData(OMCloneOptions options, SOAPHeaderBlock targetSHB) {
         // Copy the processed flag.  The other SOAPHeaderBlock information 
         // (e.g. role, mustUnderstand) are attributes on the tag and are copied elsewhere.
         Boolean processedFlag = options instanceof SOAPCloneOptions ? ((SOAPCloneOptions)options).getProcessedFlag() : null;

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderImpl.java Sat Jun 23 10:07:22 2012
@@ -19,14 +19,14 @@
 
 package org.apache.axiom.soap.impl.dom;
 
-import org.apache.axiom.om.OMCloneOptions;
-import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMException;
+import org.apache.axiom.om.OMFactory;
 import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMNode;
 import org.apache.axiom.om.OMXMLParserWrapper;
 import org.apache.axiom.om.impl.OMNodeEx;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.soap.RolePlayer;
 import org.apache.axiom.soap.SOAPConstants;
 import org.apache.axiom.soap.SOAPEnvelope;
@@ -51,15 +51,9 @@ public abstract class SOAPHeaderImpl ext
 
     }
 
-    /**
-     * Constructor SOAPHeaderImpl
-     *
-     * @param envelope
-     * @param builder
-     */
-    public SOAPHeaderImpl(SOAPEnvelope envelope, OMXMLParserWrapper builder,
-                          SOAPFactory factory) {
-        super(envelope, SOAPConstants.HEADER_LOCAL_NAME, builder, factory);
+    public SOAPHeaderImpl(ParentNode parentNode, OMNamespace ns,
+            OMXMLParserWrapper builder, OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, SOAPConstants.HEADER_LOCAL_NAME, ns, builder, factory, generateNSDecl);
     }
 
     public SOAPHeaderBlock addHeaderBlock(String localName, OMNamespace ns)
@@ -158,8 +152,4 @@ public abstract class SOAPHeaderImpl ext
                             "parent. But received some other implementation");
         }
     }
-
-    protected OMElement createClone(OMCloneOptions options, OMContainer targetParent) {
-        return ((SOAPFactory)factory).createSOAPHeader((SOAPEnvelope)targetParent);
-    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/factory/DOMSOAPFactory.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/factory/DOMSOAPFactory.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/factory/DOMSOAPFactory.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/factory/DOMSOAPFactory.java Sat Jun 23 10:07:22 2012
@@ -60,7 +60,7 @@ public abstract class DOMSOAPFactory ext
     }
 
     public SOAPEnvelope createSOAPEnvelope(OMXMLParserWrapper builder) {
-        return new SOAPEnvelopeImpl(builder, this);
+        return new SOAPEnvelopeImpl(null, null, builder, this, false);
     }
 
     public SOAPFault createSOAPFault(SOAPBody parent) throws SOAPProcessingException {
@@ -68,7 +68,7 @@ public abstract class DOMSOAPFactory ext
     }
 
     public final SOAPEnvelope getDefaultEnvelope() throws SOAPProcessingException {
-        SOAPEnvelopeImpl env = new SOAPEnvelopeImpl(getNamespace(), this);
+        SOAPEnvelopeImpl env = new SOAPEnvelopeImpl(null, getNamespace(), null, this, true);
         createSOAPHeader(env);
         createSOAPBody(env);
         return env;

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11BodyImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11BodyImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11BodyImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11BodyImpl.java Sat Jun 23 10:07:22 2012
@@ -19,8 +19,13 @@
 
 package org.apache.axiom.soap.impl.dom.soap11;
 
+import org.apache.axiom.om.OMCloneOptions;
+import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMException;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.soap.SOAPEnvelope;
 import org.apache.axiom.soap.SOAPFactory;
 import org.apache.axiom.soap.SOAPFault;
@@ -34,15 +39,9 @@ public class SOAP11BodyImpl extends SOAP
         super(envelope, factory);
     }
 
-    /**
-     * Constructor SOAPBodyImpl
-     *
-     * @param envelope
-     * @param builder
-     */
-    public SOAP11BodyImpl(SOAPEnvelope envelope, OMXMLParserWrapper builder,
-                          SOAPFactory factory) {
-        super(envelope, builder, factory);
+    public SOAP11BodyImpl(ParentNode parentNode, OMNamespace ns, OMXMLParserWrapper builder,
+            OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, ns, builder, factory, generateNSDecl);
     }
 
     public SOAPFault addFault(Exception e) throws OMException {
@@ -50,4 +49,8 @@ public class SOAP11BodyImpl extends SOAP
         this.hasSOAPFault = true;
         return soapFault;
     }
+
+    protected OMElement createClone(OMCloneOptions options, ParentNode targetParent, boolean generateNSDecl) {
+        return new SOAP11BodyImpl(targetParent, namespace, null, factory, generateNSDecl);
+    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11Factory.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11Factory.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11Factory.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11Factory.java Sat Jun 23 10:07:22 2012
@@ -65,15 +65,15 @@ public class SOAP11Factory extends DOMSO
 
     public SOAPEnvelope createSOAPEnvelope() {
         return new SOAPEnvelopeImpl(
+                null,
                 new OMNamespaceImpl(
                         SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI,
                         SOAP11Constants.SOAP_DEFAULT_NAMESPACE_PREFIX),
-                this);
+                null, this, true);
     }
     
     public SOAPEnvelope createSOAPEnvelope(OMNamespace ns) {
-        return new SOAPEnvelopeImpl(ns,
-                                    this);
+        return new SOAPEnvelopeImpl(null, ns, null, this, true);
     }
 
     public SOAPHeader createSOAPHeader(SOAPEnvelope envelope)
@@ -83,7 +83,7 @@ public class SOAP11Factory extends DOMSO
 
     public SOAPHeader createSOAPHeader(SOAPEnvelope envelope,
                                        OMXMLParserWrapper builder) {
-        return new SOAP11HeaderImpl(envelope, builder, this);
+        return new SOAP11HeaderImpl((ParentNode)envelope, null, builder, this, false);
     }
 
 
@@ -117,7 +117,7 @@ public class SOAP11Factory extends DOMSO
 
     public SOAPFault createSOAPFault(SOAPBody parent,
                                      OMXMLParserWrapper builder) {
-        return new SOAP11FaultImpl(parent, builder, this);
+        return new SOAP11FaultImpl((ParentNode)parent, null, builder, this, false);
     }
 
     public SOAPBody createSOAPBody(SOAPEnvelope envelope)
@@ -128,8 +128,7 @@ public class SOAP11Factory extends DOMSO
 
     public SOAPBody createSOAPBody(SOAPEnvelope envelope,
                                    OMXMLParserWrapper builder) {
-        return new SOAP11BodyImpl(envelope, builder, (SOAPFactory) envelope
-                .getOMFactory());
+        return new SOAP11BodyImpl((ParentNode)envelope, null, builder, this, false);
     }
 
     public SOAPFaultCode createSOAPFaultCode(SOAPFault parent)
@@ -139,7 +138,7 @@ public class SOAP11Factory extends DOMSO
 
     public SOAPFaultCode createSOAPFaultCode(SOAPFault parent,
                                              OMXMLParserWrapper builder) {
-        return new SOAP11FaultCodeImpl(parent, builder, this);
+        return new SOAP11FaultCodeImpl((ParentNode)parent, null, builder, this, false);
     }
 
     public SOAPFaultValue createSOAPFaultValue(SOAPFaultCode parent)
@@ -149,7 +148,7 @@ public class SOAP11Factory extends DOMSO
 
     public SOAPFaultValue createSOAPFaultValue(SOAPFaultCode parent,
                                                OMXMLParserWrapper builder) {
-        return new SOAP11FaultValueImpl(parent, builder, this);
+        return new SOAP11FaultValueImpl((ParentNode)parent, null, builder, this, false);
     }
 
     //added
@@ -161,7 +160,7 @@ public class SOAP11Factory extends DOMSO
     //added
     public SOAPFaultValue createSOAPFaultValue(SOAPFaultSubCode parent,
                                                OMXMLParserWrapper builder) {
-        return new SOAP11FaultValueImpl(parent, builder, this);
+        return new SOAP11FaultValueImpl((ParentNode)parent, null, builder, this, false);
     }
 
     //changed
@@ -173,7 +172,7 @@ public class SOAP11Factory extends DOMSO
     //changed
     public SOAPFaultSubCode createSOAPFaultSubCode(SOAPFaultCode parent,
                                                    OMXMLParserWrapper builder) {
-        return new SOAP11FaultSubCodeImpl(parent, builder, this);
+        return new SOAP11FaultSubCodeImpl((ParentNode)parent, null, builder, this, false);
     }
 
     public SOAPFaultSubCode createSOAPFaultSubCode(SOAPFaultSubCode parent)
@@ -183,7 +182,7 @@ public class SOAP11Factory extends DOMSO
 
     public SOAPFaultSubCode createSOAPFaultSubCode(SOAPFaultSubCode parent,
                                                    OMXMLParserWrapper builder) {
-        return new SOAP11FaultSubCodeImpl(parent, builder, this);
+        return new SOAP11FaultSubCodeImpl((ParentNode)parent, null, builder, this, false);
     }
 
     public SOAPFaultReason createSOAPFaultReason(SOAPFault parent)
@@ -193,7 +192,7 @@ public class SOAP11Factory extends DOMSO
 
     public SOAPFaultReason createSOAPFaultReason(SOAPFault parent,
                                                  OMXMLParserWrapper builder) {
-        return new SOAP11FaultReasonImpl(parent, builder, this);
+        return new SOAP11FaultReasonImpl((ParentNode)parent, null, builder, this, false);
     }
 
     public SOAPFaultText createSOAPFaultText(SOAPFaultReason parent)
@@ -203,7 +202,7 @@ public class SOAP11Factory extends DOMSO
 
     public SOAPFaultText createSOAPFaultText(SOAPFaultReason parent,
                                              OMXMLParserWrapper builder) {
-        return new SOAP11FaultTextImpl(parent, builder, this);
+        return new SOAP11FaultTextImpl((ParentNode)parent, null, builder, this, false);
     }
 
     public SOAPFaultNode createSOAPFaultNode(SOAPFault parent)
@@ -223,7 +222,7 @@ public class SOAP11Factory extends DOMSO
 
     public SOAPFaultRole createSOAPFaultRole(SOAPFault parent,
                                              OMXMLParserWrapper builder) {
-        return new SOAP11FaultRoleImpl(parent, builder, this);
+        return new SOAP11FaultRoleImpl((ParentNode)parent, null, builder, this, false);
     }
 
     public SOAPFaultDetail createSOAPFaultDetail(SOAPFault parent)
@@ -233,11 +232,11 @@ public class SOAP11Factory extends DOMSO
 
     public SOAPFaultDetail createSOAPFaultDetail(SOAPFault parent,
                                                  OMXMLParserWrapper builder) {
-        return new SOAP11FaultDetailImpl(parent, builder, this);
+        return new SOAP11FaultDetailImpl((ParentNode)parent, null, builder, this, false);
     }
 
     public SOAPFaultDetail createSOAPFaultDetail() throws SOAPProcessingException {
-        return new SOAP11FaultDetailImpl(this);
+        return new SOAP11FaultDetailImpl(null, null, null, this, true);
     }
 
     public OMNamespace getNamespace() {

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultCodeImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultCodeImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultCodeImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultCodeImpl.java Sat Jun 23 10:07:22 2012
@@ -19,8 +19,12 @@
 
 package org.apache.axiom.soap.impl.dom.soap11;
 
+import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.om.impl.serialize.StreamWriterToContentHandlerConverter;
 import org.apache.axiom.om.impl.util.OMSerializerUtil;
 import org.apache.axiom.soap.SOAP11Constants;
@@ -36,15 +40,9 @@ import javax.xml.stream.XMLStreamExcepti
 import javax.xml.stream.XMLStreamWriter;
 
 public class SOAP11FaultCodeImpl extends SOAPFaultCodeImpl {
-    /**
-     * Constructor OMElementImpl
-     *
-     * @param parent
-     * @param builder
-     */
-    public SOAP11FaultCodeImpl(SOAPFault parent, OMXMLParserWrapper builder,
-                               SOAPFactory factory) {
-        super(parent, builder, factory);
+    public SOAP11FaultCodeImpl(ParentNode parentNode, OMNamespace ns, OMXMLParserWrapper builder,
+            OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, ns, builder, factory, generateNSDecl);
     }
 
     /** @param parent  */
@@ -110,4 +108,9 @@ public class SOAP11FaultCodeImpl extends
     public void setValue(QName value) {
         setText(value);
     }
+
+    protected OMElement createClone(OMCloneOptions options, ParentNode targetParent,
+            boolean generateNSDecl) {
+        return new SOAP11FaultCodeImpl(targetParent, namespace, null, factory, generateNSDecl);
+    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultDetailImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultDetailImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultDetailImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultDetailImpl.java Sat Jun 23 10:07:22 2012
@@ -19,16 +19,21 @@
 
 package org.apache.axiom.soap.impl.dom.soap11;
 
+import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.soap.SOAPFactory;
 import org.apache.axiom.soap.SOAPFault;
 import org.apache.axiom.soap.SOAPProcessingException;
 import org.apache.axiom.soap.impl.dom.SOAPFaultDetailImpl;
 
 public class SOAP11FaultDetailImpl extends SOAPFaultDetailImpl {
-    public SOAP11FaultDetailImpl(SOAPFactory factory) {
-        super(null, factory);
+    public SOAP11FaultDetailImpl(ParentNode parentNode, OMNamespace ns, OMXMLParserWrapper builder,
+            OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, ns, builder, factory, generateNSDecl);
     }
 
     public SOAP11FaultDetailImpl(SOAPFault parent, SOAPFactory factory)
@@ -36,11 +41,6 @@ public class SOAP11FaultDetailImpl exten
         super(parent, false, factory);
     }
 
-    public SOAP11FaultDetailImpl(SOAPFault parent, OMXMLParserWrapper builder,
-                                 SOAPFactory factory) {
-        super(parent, builder, factory);
-    }
-
     protected void checkParent(OMElement parent) throws SOAPProcessingException {
         if (!(parent instanceof SOAP11FaultImpl)) {
             throw new SOAPProcessingException(
@@ -48,4 +48,9 @@ public class SOAP11FaultDetailImpl exten
                             "the parent. But received some other implementation");
         }
     }
+
+    protected OMElement createClone(OMCloneOptions options, ParentNode targetParent,
+            boolean generateNSDecl) {
+        return new SOAP11FaultDetailImpl(targetParent, namespace, null, factory, generateNSDecl);
+    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultImpl.java Sat Jun 23 10:07:22 2012
@@ -19,8 +19,12 @@
 
 package org.apache.axiom.soap.impl.dom.soap11;
 
+import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.soap.SOAP11Constants;
 import org.apache.axiom.soap.SOAPBody;
 import org.apache.axiom.soap.SOAPFactory;
@@ -43,9 +47,9 @@ public class SOAP11FaultImpl extends SOA
         super(parent, e, factory);
     }
 
-    public SOAP11FaultImpl(SOAPBody parent, OMXMLParserWrapper builder,
-                           SOAPFactory factory) {
-        super(parent, builder, factory);
+    public SOAP11FaultImpl(ParentNode parentNode, OMNamespace ns, OMXMLParserWrapper builder,
+            OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, ns, builder, factory, generateNSDecl);
     }
 
     /**
@@ -137,4 +141,13 @@ public class SOAP11FaultImpl extends SOA
     public SOAPFaultNode getNode() {
         throw new UnsupportedOperationException("SOAP 1.1 has no Fault Node");
     }
+
+    protected OMElement createClone(OMCloneOptions options, ParentNode targetParent,
+            boolean generateNSDecl) {
+        SOAPFault clone = new SOAP11FaultImpl(targetParent, namespace, null, factory, generateNSDecl);
+        if (e != null) {
+            clone.setException(e);
+        }
+        return clone;
+    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultReasonImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultReasonImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultReasonImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultReasonImpl.java Sat Jun 23 10:07:22 2012
@@ -19,8 +19,12 @@
 
 package org.apache.axiom.soap.impl.dom.soap11;
 
+import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.om.impl.serialize.StreamWriterToContentHandlerConverter;
 import org.apache.axiom.om.impl.util.OMSerializerUtil;
 import org.apache.axiom.soap.SOAP11Constants;
@@ -34,10 +38,9 @@ import javax.xml.stream.XMLStreamExcepti
 import javax.xml.stream.XMLStreamWriter;
 
 public class SOAP11FaultReasonImpl extends SOAPFaultReasonImpl {
-
-    public SOAP11FaultReasonImpl(SOAPFault parent, OMXMLParserWrapper builder,
-                                 SOAPFactory factory) {
-        super(parent, builder, factory);
+    public SOAP11FaultReasonImpl(ParentNode parentNode, OMNamespace ns, OMXMLParserWrapper builder,
+            OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, ns, builder, factory, generateNSDecl);
     }
 
     /** @param parent  */
@@ -88,4 +91,9 @@ public class SOAP11FaultReasonImpl exten
     public SOAPFaultText getFirstSOAPText() {
         throw new UnsupportedOperationException("getFirstSOAPText() not supported for SOAP 1.1!");
     }
+
+    protected OMElement createClone(OMCloneOptions options, ParentNode targetParent,
+            boolean generateNSDecl) {
+        return new SOAP11FaultReasonImpl(targetParent, namespace, builder, factory, generateNSDecl);
+    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultRoleImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultRoleImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultRoleImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultRoleImpl.java Sat Jun 23 10:07:22 2012
@@ -19,8 +19,12 @@
 
 package org.apache.axiom.soap.impl.dom.soap11;
 
+import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.om.impl.serialize.StreamWriterToContentHandlerConverter;
 import org.apache.axiom.om.impl.util.OMSerializerUtil;
 import org.apache.axiom.soap.SOAP11Constants;
@@ -40,9 +44,9 @@ public class SOAP11FaultRoleImpl extends
               factory);
     }
 
-    public SOAP11FaultRoleImpl(SOAPFault parent, OMXMLParserWrapper builder,
-                               SOAPFactory factory) {
-        super(parent, builder, factory);
+    public SOAP11FaultRoleImpl(ParentNode parentNode, OMNamespace ns, OMXMLParserWrapper builder,
+            OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, ns, builder, factory, generateNSDecl);
     }
 
     protected void checkParent(OMElement parent) throws SOAPProcessingException {
@@ -75,4 +79,8 @@ public class SOAP11FaultRoleImpl extends
         writer.writeEndElement();
     }
 
+    protected OMElement createClone(OMCloneOptions options, ParentNode targetParent,
+            boolean generateNSDecl) {
+        return new SOAP11FaultRoleImpl(targetParent, namespace, null, factory, generateNSDecl);
+    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultSubCodeImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultSubCodeImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultSubCodeImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultSubCodeImpl.java Sat Jun 23 10:07:22 2012
@@ -21,9 +21,13 @@ package org.apache.axiom.soap.impl.dom.s
 
 import javax.xml.namespace.QName;
 
+import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMContainer;
 import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.soap.SOAP12Constants;
 import org.apache.axiom.soap.SOAPFactory;
 import org.apache.axiom.soap.SOAPFaultCode;
@@ -40,12 +44,9 @@ public class SOAP11FaultSubCodeImpl exte
         super(parent, SOAP12Constants.SOAP_FAULT_SUB_CODE_LOCAL_NAME, factory);
     }
 
-    //changed
-    public SOAP11FaultSubCodeImpl(SOAPFaultCode parent,
-                                  OMXMLParserWrapper builder,
-                                  SOAPFactory factory) {
-        super(parent, SOAP12Constants.SOAP_FAULT_SUB_CODE_LOCAL_NAME, builder,
-              factory);
+    public SOAP11FaultSubCodeImpl(ParentNode parentNode, OMNamespace ns,
+            OMXMLParserWrapper builder, OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, SOAP12Constants.SOAP_FAULT_SUB_CODE_LOCAL_NAME, ns, builder, factory, generateNSDecl);
     }
 
     public SOAP11FaultSubCodeImpl(SOAPFaultSubCode parent, SOAPFactory factory)
@@ -53,13 +54,6 @@ public class SOAP11FaultSubCodeImpl exte
         super(parent, SOAP12Constants.SOAP_FAULT_SUB_CODE_LOCAL_NAME, factory);
     }
 
-    public SOAP11FaultSubCodeImpl(SOAPFaultSubCode parent,
-                                  OMXMLParserWrapper builder,
-                                  SOAPFactory factory) {
-        super(parent, SOAP12Constants.SOAP_FAULT_SUB_CODE_LOCAL_NAME, builder,
-              factory);
-    }
-
     protected void checkParent(OMElement parent) throws SOAPProcessingException {
         if (!(parent instanceof SOAP11FaultSubCodeImpl) ||
                 (parent instanceof SOAP11FaultCodeImpl)) {
@@ -95,4 +89,9 @@ public class SOAP11FaultSubCodeImpl exte
         // TODO: AXIOM-394: SOAPFaultSubCode should not exist for SOAP 1.1
         throw new UnsupportedOperationException();
     }
+
+    protected OMElement createClone(OMCloneOptions options, ParentNode targetParent,
+            boolean generateNSDecl) {
+        return new SOAP11FaultSubCodeImpl(targetParent, namespace, null, factory, generateNSDecl);
+    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultTextImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultTextImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultTextImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultTextImpl.java Sat Jun 23 10:07:22 2012
@@ -19,8 +19,12 @@
 
 package org.apache.axiom.soap.impl.dom.soap11;
 
+import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.soap.SOAPFactory;
 import org.apache.axiom.soap.SOAPFaultReason;
 import org.apache.axiom.soap.SOAPProcessingException;
@@ -32,9 +36,9 @@ public class SOAP11FaultTextImpl extends
         super(parent, factory);
     }
 
-    public SOAP11FaultTextImpl(SOAPFaultReason parent,
-                               OMXMLParserWrapper builder, SOAPFactory factory) {
-        super(parent, builder, factory);
+    public SOAP11FaultTextImpl(ParentNode parentNode, OMNamespace ns, OMXMLParserWrapper builder,
+            OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, ns, builder, factory, generateNSDecl);
     }
 
     protected void checkParent(OMElement parent) throws SOAPProcessingException {
@@ -44,4 +48,9 @@ public class SOAP11FaultTextImpl extends
                             "as the parent. But received some other implementation");
         }
     }
+
+    protected OMElement createClone(OMCloneOptions options, ParentNode targetParent,
+            boolean generateNSDecl) {
+        return new SOAP11FaultTextImpl(targetParent, namespace, null, factory, generateNSDecl);
+    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultValueImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultValueImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultValueImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11FaultValueImpl.java Sat Jun 23 10:07:22 2012
@@ -19,8 +19,12 @@
 
 package org.apache.axiom.soap.impl.dom.soap11;
 
+import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.soap.SOAPFactory;
 import org.apache.axiom.soap.SOAPProcessingException;
 import org.apache.axiom.soap.impl.dom.SOAPFaultValueImpl;
@@ -32,12 +36,11 @@ public class SOAP11FaultValueImpl extend
         super(parent, factory);
     }
 
-    public SOAP11FaultValueImpl(OMElement parent, OMXMLParserWrapper builder,
-                                SOAPFactory factory) {
-        super(parent, builder, factory);
+    public SOAP11FaultValueImpl(ParentNode parentNode, OMNamespace ns, OMXMLParserWrapper builder,
+            OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, ns, builder, factory, generateNSDecl);
     }
 
-
     protected void checkParent(OMElement parent) throws SOAPProcessingException {
         if (!((parent instanceof SOAP11FaultSubCodeImpl) ||
                 (parent instanceof SOAP11FaultCodeImpl))) {
@@ -48,4 +51,9 @@ public class SOAP11FaultValueImpl extend
                             parent.getClass());
         }
     }
+
+    protected OMElement createClone(OMCloneOptions options, ParentNode targetParent,
+            boolean generateNSDecl) {
+        return new SOAP11FaultValueImpl(targetParent, namespace, null, factory, generateNSDecl);
+    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderBlockImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderBlockImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderBlockImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderBlockImpl.java Sat Jun 23 10:07:22 2012
@@ -19,6 +19,7 @@
 
 package org.apache.axiom.soap.impl.dom.soap11;
 
+import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMFactory;
 import org.apache.axiom.om.OMNamespace;
@@ -26,6 +27,7 @@ import org.apache.axiom.om.OMXMLParserWr
 import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.soap.SOAP11Constants;
 import org.apache.axiom.soap.SOAPConstants;
+import org.apache.axiom.soap.SOAPHeaderBlock;
 import org.apache.axiom.soap.SOAPProcessingException;
 import org.apache.axiom.soap.SOAPVersion;
 import org.apache.axiom.soap.SOAP11Version;
@@ -126,4 +128,9 @@ public class SOAP11HeaderBlockImpl exten
         return SOAP11Version.getSingleton();
     }
 
+    protected OMElement createClone(OMCloneOptions options, ParentNode targetParent, boolean generateNSDecl) {
+        SOAPHeaderBlock clone = new SOAP11HeaderBlockImpl(targetParent, getLocalName(), getNamespace(), null, factory, generateNSDecl);
+        copyData(options, clone);
+        return clone;
+    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderImpl.java Sat Jun 23 10:07:22 2012
@@ -19,7 +19,12 @@
 
 package org.apache.axiom.soap.impl.dom.soap11;
 
+import org.apache.axiom.om.OMCloneOptions;
+import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.om.impl.traverse.OMChildrenWithSpecificAttributeIterator;
 import org.apache.axiom.soap.SOAP11Constants;
 import org.apache.axiom.soap.SOAPEnvelope;
@@ -39,15 +44,9 @@ public class SOAP11HeaderImpl extends SO
         super(envelope, factory);
     }
 
-    /**
-     * Constructor SOAPHeaderImpl
-     *
-     * @param envelope
-     * @param builder
-     */
-    public SOAP11HeaderImpl(SOAPEnvelope envelope, OMXMLParserWrapper builder,
-                            SOAPFactory factory) {
-        super(envelope, builder, factory);
+    public SOAP11HeaderImpl(ParentNode parentNode, OMNamespace ns, OMXMLParserWrapper builder,
+            OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, ns, builder, factory, generateNSDecl);
     }
 
     public Iterator extractHeaderBlocks(String role) {
@@ -60,5 +59,8 @@ public class SOAP11HeaderImpl extends SO
 
     }
 
-
+    protected OMElement createClone(OMCloneOptions options, ParentNode targetParent,
+            boolean generateNSDecl) {
+        return new SOAP11HeaderImpl(targetParent, namespace, null, factory, generateNSDecl);
+    }
 }

Modified: webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12BodyImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12BodyImpl.java?rev=1353105&r1=1353104&r2=1353105&view=diff
==============================================================================
--- webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12BodyImpl.java (original)
+++ webservices/axiom/branches/CLONE_NODE/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12BodyImpl.java Sat Jun 23 10:07:22 2012
@@ -19,8 +19,13 @@
 
 package org.apache.axiom.soap.impl.dom.soap12;
 
+import org.apache.axiom.om.OMCloneOptions;
+import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMException;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
 import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.dom.ParentNode;
 import org.apache.axiom.soap.SOAPEnvelope;
 import org.apache.axiom.soap.SOAPFactory;
 import org.apache.axiom.soap.SOAPFault;
@@ -34,15 +39,9 @@ public class SOAP12BodyImpl extends SOAP
         super(envelope, factory);
     }
 
-    /**
-     * Constructor SOAPBodyImpl
-     *
-     * @param envelope
-     * @param builder
-     */
-    public SOAP12BodyImpl(SOAPEnvelope envelope, OMXMLParserWrapper builder,
-                          SOAPFactory factory) {
-        super(envelope, builder, factory);
+    public SOAP12BodyImpl(ParentNode parentNode, OMNamespace ns, OMXMLParserWrapper builder,
+            OMFactory factory, boolean generateNSDecl) {
+        super(parentNode, ns, builder, factory, generateNSDecl);
     }
 
     public SOAPFault addFault(Exception e) throws OMException {
@@ -51,4 +50,8 @@ public class SOAP12BodyImpl extends SOAP
         this.hasSOAPFault = true;
         return soapFault;
     }
+
+    protected OMElement createClone(OMCloneOptions options, ParentNode targetParent, boolean generateNSDecl) {
+        return new SOAP12BodyImpl(targetParent, namespace, null, factory, generateNSDecl);
+    }
 }