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 2015/08/31 23:24:15 UTC

svn commit: r1700359 - in /webservices/axiom/trunk: aspects/core-aspects/src/main/java/org/apache/axiom/core/ aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/ implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/ impl...

Author: veithen
Date: Mon Aug 31 21:24:14 2015
New Revision: 1700359

URL: http://svn.apache.org/r1700359
Log:
AXIOM-471, AXIOM-472: Use the cloning infrastructure in the core model for LLOM as well.

Modified:
    webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreElementSupport.aj
    webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreParentNodeSupport.aj
    webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomNamedInformationItemSupport.aj
    webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/Policies.java
    webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/NamespaceDeclaration.java
    webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMAttributeImpl.java
    webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java
    webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java
    webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMInformationItemImpl.java
    webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMLeafNode.java
    webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMNodeImpl.java
    webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java
    webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPHeaderBlockImpl.java

Modified: webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreElementSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreElementSupport.aj?rev=1700359&r1=1700358&r2=1700359&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreElementSupport.aj (original)
+++ webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreElementSupport.aj Mon Aug 31 21:24:14 2015
@@ -253,17 +253,24 @@ public aspect CoreElementSupport {
 
     public final <T> void CoreElement.init(ClonePolicy<T> policy, T options, CoreNode other) {
         CoreElement o = (CoreElement)other;
+        initSource(policy, options, o);
         initName(o);
-        CoreAttribute attr = o.coreGetFirstAttribute();
-        while (attr != null) {
-            internalAppendAttribute((CoreAttribute)attr.coreClone(policy, options));
-            // TODO: needed?
-//            clonedAttr.coreSetSpecified(attr.coreGetSpecified());
-            attr = attr.coreGetNextAttribute();
+        if (isExpanded()) {
+            CoreAttribute attr = o.coreGetFirstAttribute();
+            while (attr != null) {
+                internalAppendAttribute((CoreAttribute)attr.coreClone(policy, options));
+                // TODO: needed?
+//                clonedAttr.coreSetSpecified(attr.coreGetSpecified());
+                attr = attr.coreGetNextAttribute();
+            }
         }
         initAncillaryData(policy, options, o);
     }
 
+    // This is basically a hook for OMSourcedElement
+    public <T> void CoreElement.initSource(ClonePolicy<T> policy, T options, CoreElement other) {
+    }
+    
     public <T> void CoreElement.initAncillaryData(ClonePolicy<T> policy, T options, CoreElement other) {
     }
 }

Modified: webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreParentNodeSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreParentNodeSupport.aj?rev=1700359&r1=1700358&r2=1700359&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreParentNodeSupport.aj (original)
+++ webservices/axiom/trunk/aspects/core-aspects/src/main/java/org/apache/axiom/core/CoreParentNodeSupport.aj Mon Aug 31 21:24:14 2015
@@ -293,8 +293,8 @@ public aspect CoreParentNodeSupport {
     }
 
     public final <T> void CoreParentNode.cloneChildrenIfNecessary(ClonePolicy<T> policy, T options, CoreNode clone) {
-        if (policy.cloneChildren(options, coreGetNodeType())) {
-            CoreParentNode targetParent = (CoreParentNode)clone;
+        CoreParentNode targetParent = (CoreParentNode)clone;
+        if (policy.cloneChildren(options, coreGetNodeType()) && targetParent.isExpanded()) {
             if (getState() == COMPACT) {
                 Object content = this.content;
                 if (content instanceof CharacterData) {

Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomNamedInformationItemSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomNamedInformationItemSupport.aj?rev=1700359&r1=1700358&r2=1700359&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomNamedInformationItemSupport.aj (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomNamedInformationItemSupport.aj Mon Aug 31 21:24:14 2015
@@ -124,9 +124,15 @@ public aspect AxiomNamedInformationItemS
 
     public final void AxiomNamedInformationItem.initName(CoreNamedNode other) {
         AxiomNamedInformationItem o = (AxiomNamedInformationItem)other;
-        localName = o.localName;
-        namespace = o.namespace;
-        qName = o.qName;
+        if (o instanceof AxiomSourcedElement && ((AxiomElement)this).isExpanded()) {
+            localName = o.coreGetLocalName();
+            namespace = o.getNamespace();
+            qName = o.getQName();
+        } else {
+            localName = o.localName;
+            namespace = o.namespace;
+            qName = o.qName;
+        }
     }
     
     public void AxiomNamedInformationItem.updateLocalName() {

Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/Policies.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/Policies.java?rev=1700359&r1=1700358&r2=1700359&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/Policies.java (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/Policies.java Mon Aug 31 21:24:14 2015
@@ -84,7 +84,7 @@ public final class Policies {
         }
 
         public void postProcess(OMCloneOptions options, CoreNode clone) {
-            if (clone instanceof AxiomElement) {
+            if (clone instanceof AxiomElement && ((AxiomElement)clone).isExpanded()) {
                 // Repair namespaces
                 AxiomElement element = (AxiomElement)clone;
                 NSUtil.handleNamespace(element, element.getNamespace(), false, true);

Modified: webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/NamespaceDeclaration.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/NamespaceDeclaration.java?rev=1700359&r1=1700358&r2=1700359&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/NamespaceDeclaration.java (original)
+++ webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/NamespaceDeclaration.java Mon Aug 31 21:24:14 2015
@@ -18,7 +18,6 @@
  */
 package org.apache.axiom.om.impl.llom;
 
-import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMFactory;
 import org.apache.axiom.om.OMInformationItem;
 import org.apache.axiom.om.impl.common.AxiomNamespaceDeclaration;
@@ -27,10 +26,4 @@ public final class NamespaceDeclaration
     public NamespaceDeclaration(OMFactory factory) {
         super(factory);
     }
-
-    public OMInformationItem clone(OMCloneOptions options) {
-        NamespaceDeclaration decl = new NamespaceDeclaration(getOMFactory());
-        decl.setDeclaredNamespace(getDeclaredNamespace());
-        return decl;
-    }
 }

Modified: webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMAttributeImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMAttributeImpl.java?rev=1700359&r1=1700358&r2=1700359&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMAttributeImpl.java (original)
+++ webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMAttributeImpl.java Mon Aug 31 21:24:14 2015
@@ -19,9 +19,7 @@
 
 package org.apache.axiom.om.impl.llom;
 
-import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMFactory;
-import org.apache.axiom.om.OMInformationItem;
 import org.apache.axiom.om.impl.common.AxiomAttribute;
 import org.apache.axiom.om.impl.common.Policies;
 
@@ -30,8 +28,4 @@ public class OMAttributeImpl extends Att
     public OMAttributeImpl(OMFactory factory) {
         super(factory);
     }
-
-    public OMInformationItem clone(OMCloneOptions options) {
-        return (AxiomAttribute)coreClone(Policies.CLONE_POLICY, options);
-    }
 }

Modified: webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java?rev=1700359&r1=1700358&r2=1700359&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java (original)
+++ webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java Mon Aug 31 21:24:14 2015
@@ -19,16 +19,11 @@
 
 package org.apache.axiom.om.impl.llom;
 
-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.OMInformationItem;
 import org.apache.axiom.om.OMNode;
 import org.apache.axiom.om.impl.common.AxiomDocument;
-import org.apache.axiom.om.impl.common.Policies;
-
-import java.util.Iterator;
 
 /** Class OMDocumentImpl */
 public class OMDocumentImpl extends OMSerializableImpl implements AxiomDocument {
@@ -57,12 +52,4 @@ public class OMDocumentImpl extends OMSe
     public void build() {
         defaultBuild();
     }
-    
-    public OMInformationItem clone(OMCloneOptions options) {
-        AxiomDocument targetDocument = (AxiomDocument)shallowClone(Policies.CLONE_POLICY, options);
-        for (Iterator it = getChildren(); it.hasNext(); ) {
-            ((OMNodeImpl)it.next()).clone(options, targetDocument);
-        }
-        return targetDocument;
-    }
 }

Modified: webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java?rev=1700359&r1=1700358&r2=1700359&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java (original)
+++ webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java Mon Aug 31 21:24:14 2015
@@ -84,26 +84,6 @@ public class OMElementImpl extends OMNod
         return (OMElement)clone(new OMCloneOptions());
     }
 
-    OMNode clone(OMCloneOptions options, AxiomContainer targetParent) {
-        return defaultClone(options, targetParent);
-    }
-    
-    final OMNode defaultClone(OMCloneOptions options, AxiomContainer targetParent) {
-        AxiomElement targetElement = shallowCloneWithoutAttributes(Policies.CLONE_POLICY, options, targetParent, true);
-        for (Iterator it = getAllDeclaredNamespaces(); it.hasNext(); ) {
-            OMNamespace ns = (OMNamespace)it.next();
-            targetElement.declareNamespace(ns);
-        }
-        for (Iterator it = getAllAttributes(); it.hasNext(); ) {
-            OMAttribute attr = (OMAttribute)it.next();
-            targetElement.addAttribute(attr);
-        }
-        for (Iterator it = getChildren(); it.hasNext(); ) {
-            ((OMNodeImpl)it.next()).clone(options, targetElement);
-        }
-        return targetElement;
-    }
-
     public final void setLineNumber(int lineNumber) {
         this.lineNumber = lineNumber;
     }

Modified: webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMInformationItemImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMInformationItemImpl.java?rev=1700359&r1=1700358&r2=1700359&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMInformationItemImpl.java (original)
+++ webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMInformationItemImpl.java Mon Aug 31 21:24:14 2015
@@ -18,8 +18,13 @@
  */
 package org.apache.axiom.om.impl.llom;
 
+import org.apache.axiom.om.OMCloneOptions;
+import org.apache.axiom.om.OMInformationItem;
 import org.apache.axiom.om.impl.common.AxiomInformationItem;
+import org.apache.axiom.om.impl.common.Policies;
 
 public abstract class OMInformationItemImpl implements AxiomInformationItem {
-
+    public final OMInformationItem clone(OMCloneOptions options) {
+        return (OMInformationItem)coreClone(Policies.CLONE_POLICY, options);
+    }
 }

Modified: webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMLeafNode.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMLeafNode.java?rev=1700359&r1=1700358&r2=1700359&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMLeafNode.java (original)
+++ webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMLeafNode.java Mon Aug 31 21:24:14 2015
@@ -18,20 +18,11 @@
  */
 package org.apache.axiom.om.impl.llom;
 
-import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMFactory;
-import org.apache.axiom.om.OMNode;
-import org.apache.axiom.om.impl.common.AxiomContainer;
 import org.apache.axiom.om.impl.common.AxiomLeafNode;
-import org.apache.axiom.om.impl.common.Policies;
-
 
 public abstract class OMLeafNode extends OMNodeImpl implements AxiomLeafNode {
     public OMLeafNode(OMFactory factory) {
         super(factory);
     }
-
-    OMNode clone(OMCloneOptions options, AxiomContainer targetParent) {
-        return (OMNode)coreClone(Policies.CLONE_POLICY, options, targetParent);
-    }
 }

Modified: webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMNodeImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMNodeImpl.java?rev=1700359&r1=1700358&r2=1700359&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMNodeImpl.java (original)
+++ webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMNodeImpl.java Mon Aug 31 21:24:14 2015
@@ -20,12 +20,8 @@
 package org.apache.axiom.om.impl.llom;
 
 import org.apache.axiom.core.CoreParentNode;
-import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMFactory;
-import org.apache.axiom.om.OMInformationItem;
-import org.apache.axiom.om.OMNode;
 import org.apache.axiom.om.impl.common.AxiomChildNode;
-import org.apache.axiom.om.impl.common.AxiomContainer;
 
 /** Class OMNodeImpl */
 public abstract class OMNodeImpl extends OMSerializableImpl implements AxiomChildNode {
@@ -62,10 +58,4 @@ public abstract class OMNodeImpl extends
             internalUnsetParent(null);
         }
     }
-
-    public final OMInformationItem clone(OMCloneOptions options) {
-        return clone(options, null);
-    }
-
-    abstract OMNode clone(OMCloneOptions options, AxiomContainer targetParent);
 }

Modified: webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java?rev=1700359&r1=1700358&r2=1700359&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java (original)
+++ webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java Mon Aug 31 21:24:14 2015
@@ -19,19 +19,18 @@
 
 package org.apache.axiom.om.impl.llom;
 
+import org.apache.axiom.core.ClonePolicy;
+import org.apache.axiom.core.CoreElement;
 import org.apache.axiom.om.OMCloneOptions;
 import org.apache.axiom.om.OMDataSource;
 import org.apache.axiom.om.OMDataSourceExt;
 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.OMOutputFormat;
-import org.apache.axiom.om.OMSourcedElement;
 import org.apache.axiom.om.OMXMLStreamReaderConfiguration;
 import org.apache.axiom.om.QNameAwareOMDataSource;
 import org.apache.axiom.om.impl.builder.StAXOMBuilder;
-import org.apache.axiom.om.impl.common.AxiomContainer;
 import org.apache.axiom.om.impl.common.AxiomSourcedElement;
 import org.apache.axiom.om.impl.common.OMDataSourceUtil;
 import org.apache.axiom.om.impl.common.OMNamespaceImpl;
@@ -389,51 +388,36 @@ public class OMSourcedElementImpl extend
         }
     }
 
-    OMNode clone(OMCloneOptions options, AxiomContainer targetParent) {
+    public <T> void initSource(ClonePolicy<T> policy, T options, CoreElement other) {
+        OMSourcedElementImpl o = (OMSourcedElementImpl)other;
         // If already expanded or this is not an OMDataSourceExt, then
         // create a copy of the OM Tree
-        OMDataSource ds = getDataSource();
-        if (!options.isCopyOMDataSources() ||
+        OMDataSource ds = o.getDataSource();
+        if (!(options instanceof OMCloneOptions) || !((OMCloneOptions)options).isCopyOMDataSources() ||
             ds == null || 
-            isExpanded() || 
+            o.isExpanded() || 
             !(ds instanceof OMDataSourceExt)) {
-            return defaultClone(options, targetParent);
+            return;
         }
         
         // If copying is destructive, then copy the OM tree
         OMDataSourceExt sourceDS = (OMDataSourceExt) ds;
         if (sourceDS.isDestructiveRead() ||
             sourceDS.isDestructiveWrite()) {
-            return defaultClone(options, targetParent);
+            return;
         }
         OMDataSourceExt targetDS = ((OMDataSourceExt) ds).copy();
         if (targetDS == null) {
-            return defaultClone(options, targetParent);
+            return;
         }
         // Otherwise create a target OMSE with the copied DataSource
-        OMSourcedElementImpl targetOMSE;
-        if (options.isPreserveModel()) {
-            targetOMSE = (OMSourcedElementImpl)createClone(options, targetDS);
+        init(targetDS);
+        definedNamespaceSet = o.definedNamespaceSet;
+        if (o.definedNamespace instanceof DeferredNamespace) {
+            definedNamespace = new DeferredNamespace(this, o.definedNamespace.getNamespaceURI());
         } else {
-            targetOMSE = (OMSourcedElementImpl)getOMFactory().createOMElement(targetDS);
+            definedNamespace = o.definedNamespace;
         }
-        
-        targetOMSE.internalSetLocalName(internalGetLocalName());
-        targetOMSE.definedNamespaceSet = definedNamespaceSet;
-        if (definedNamespace instanceof DeferredNamespace) {
-            targetOMSE.definedNamespace = new DeferredNamespace(targetOMSE, definedNamespace.getNamespaceURI());
-        } else {
-            targetOMSE.definedNamespace = definedNamespace;
-        }
-        
-        if (targetParent != null) {
-            targetParent.addChild(targetOMSE);
-        }
-        return targetOMSE;
-    }
-
-    protected OMSourcedElement createClone(OMCloneOptions options, OMDataSource ds) {
-        return getOMFactory().createOMElement(ds);
     }
 
     public void internalSerialize(Serializer serializer, OMOutputFormat format, boolean cache)

Modified: webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPHeaderBlockImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPHeaderBlockImpl.java?rev=1700359&r1=1700358&r2=1700359&view=diff
==============================================================================
--- webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPHeaderBlockImpl.java (original)
+++ webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPHeaderBlockImpl.java Mon Aug 31 21:24:14 2015
@@ -20,14 +20,9 @@
 package org.apache.axiom.soap.impl.llom;
 
 import org.apache.axiom.core.CoreParentNode;
-import org.apache.axiom.om.OMCloneOptions;
-import org.apache.axiom.om.OMDataSource;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMFactory;
-import org.apache.axiom.om.OMSourcedElement;
-import org.apache.axiom.om.impl.common.Policies;
 import org.apache.axiom.om.impl.llom.OMSourcedElementImpl;
-import org.apache.axiom.soap.SOAPFactory;
 import org.apache.axiom.soap.impl.common.AxiomSOAPHeaderBlock;
 
 /** Class SOAPHeaderBlockImpl */
@@ -45,10 +40,4 @@ public abstract class SOAPHeaderBlockImp
             checkParent((OMElement) element);
         }
     }
-    
-    protected OMSourcedElement createClone(OMCloneOptions options, OMDataSource ds) {
-        AxiomSOAPHeaderBlock clone = (AxiomSOAPHeaderBlock)((SOAPFactory)getOMFactory()).createSOAPHeaderBlock(ds);
-        clone.initAncillaryData(Policies.CLONE_POLICY, options, this);
-        return clone;
-    }
 }