You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ws.apache.org by ve...@apache.org on 2016/01/31 22:59:29 UTC

svn commit: r1727863 - in /webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl: common/OMChildElementIterator.java mixin/AxiomElementSupport.aj

Author: veithen
Date: Sun Jan 31 21:59:29 2016
New Revision: 1727863

URL: http://svn.apache.org/viewvc?rev=1727863&view=rev
Log:
Eliminate OMChildElementIterator.

Removed:
    webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/OMChildElementIterator.java
Modified:
    webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomElementSupport.aj

Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomElementSupport.aj
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomElementSupport.aj?rev=1727863&r1=1727862&r2=1727863&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomElementSupport.aj (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/mixin/AxiomElementSupport.aj Sun Jan 31 21:59:29 2016
@@ -35,9 +35,12 @@ import javax.xml.namespace.QName;
 import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamReader;
 
+import org.apache.axiom.core.Axis;
 import org.apache.axiom.core.CoreAttribute;
+import org.apache.axiom.core.CoreElement;
 import org.apache.axiom.core.CoreParentNode;
 import org.apache.axiom.core.ElementAction;
+import org.apache.axiom.core.ElementMatcher;
 import org.apache.axiom.core.Mapper;
 import org.apache.axiom.om.OMAttribute;
 import org.apache.axiom.om.OMConstants;
@@ -55,7 +58,6 @@ import org.apache.axiom.om.impl.common.L
 import org.apache.axiom.om.impl.common.NSUtil;
 import org.apache.axiom.om.impl.common.NamespaceDeclarationMapper;
 import org.apache.axiom.om.impl.common.NamespaceIterator;
-import org.apache.axiom.om.impl.common.OMChildElementIterator;
 import org.apache.axiom.om.impl.common.OMNamespaceImpl;
 import org.apache.axiom.om.impl.common.serializer.push.OutputException;
 import org.apache.axiom.om.impl.common.serializer.push.Serializer;
@@ -113,8 +115,15 @@ public aspect AxiomElementSupport {
         return null;
     }
 
+    private static final Mapper<CoreElement,OMElement> childElementMapper = new Mapper<CoreElement,OMElement>() {
+        public OMElement map(CoreElement element) {
+            return (OMElement)element;
+        }
+    };
+    
     public final Iterator<OMElement> AxiomElement.getChildElements() {
-        return new OMChildElementIterator(getFirstElement());
+        return coreGetElements(Axis.CHILDREN, CoreElement.class, ElementMatcher.ANY, null, null,
+                childElementMapper, AxiomSemantics.INSTANCE);
     }
 
     public final Iterator<OMNamespace> AxiomElement.getNamespacesInScope() {