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 2014/07/06 15:05:20 UTC
svn commit: r1608197 - in /webservices/axiom/trunk: ./
modules/axiom-common-impl/
modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/
modules/axiom-dom/
modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/
modules/axiom-im...
Author: veithen
Date: Sun Jul 6 13:05:19 2014
New Revision: 1608197
URL: http://svn.apache.org/r1608197
Log:
Introduce AspectJ to reduce code duplication and make the code more readable.
Added:
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContainerSupport.aj
- copied, changed from r1608084, webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContainerHelper.java
Removed:
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContainerHelper.java
Modified:
webservices/axiom/trunk/modules/axiom-common-impl/pom.xml
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMNodeHelper.java
webservices/axiom/trunk/modules/axiom-dom/pom.xml
webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentFragmentImpl.java
webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentImpl.java
webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ElementImpl.java
webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ParentNode.java
webservices/axiom/trunk/modules/axiom-impl/pom.xml
webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java
webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java
webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java
webservices/axiom/trunk/modules/axiom-impl/src/test/java/org/apache/axiom/om/impl/llom/OMSourcedElementTest.java
webservices/axiom/trunk/pom.xml
webservices/axiom/trunk/testsuites/dom-testsuite/pom.xml
Modified: webservices/axiom/trunk/modules/axiom-common-impl/pom.xml
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-common-impl/pom.xml?rev=1608197&r1=1608196&r2=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-common-impl/pom.xml (original)
+++ webservices/axiom/trunk/modules/axiom-common-impl/pom.xml Sun Jul 6 13:05:19 2014
@@ -47,6 +47,10 @@
<version>${project.version}</version>
</dependency>
<dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>aspectjrt</artifactId>
+ </dependency>
+ <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
@@ -55,6 +59,31 @@
<build>
<plugins>
<plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>default-compile</id>
+ <phase>none</phase>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>aspectj-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>compile</goal>
+ </goals>
+ <configuration>
+ <complianceLevel>1.5</complianceLevel>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <!-- Note: axiom-common-impl is not intended to be used as an OSGi bundle.
+ We generate OSGi metadata only for the shading process in axiom-impl and axiom-dom. -->
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
@@ -62,7 +91,12 @@
<excludeDependencies>true</excludeDependencies>
<instructions>
<Export-Package>*;-noimport:=true</Export-Package>
- <Import-Package>*</Import-Package>
+ <Import-Package>
+ <!-- aspectjrt is not an OSGi bundle; we don't need to generate imports because
+ axiom-impl and axiom-dom include these classes into the final JARs -->
+ !org.aspectj.*,
+ *
+ </Import-Package>
</instructions>
</configuration>
</plugin>
Copied: webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContainerSupport.aj (from r1608084, webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContainerHelper.java)
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContainerSupport.aj?p2=webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContainerSupport.aj&p1=webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContainerHelper.java&r1=1608084&r2=1608197&rev=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContainerHelper.java (original)
+++ webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMContainerSupport.aj Sun Jul 6 13:05:19 2014
@@ -22,6 +22,7 @@ import javax.xml.stream.XMLStreamReader;
import javax.xml.transform.sax.SAXResult;
import org.apache.axiom.om.NodeUnavailableException;
+import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMNode;
import org.apache.axiom.om.OMSourcedElement;
@@ -38,23 +39,29 @@ import org.apache.axiom.om.util.OMXMLStr
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-public final class OMContainerHelper {
- private static final Log log = LogFactory.getLog(OMContainerHelper.class);
+public aspect OMContainerSupport {
+ private static final Log log = LogFactory.getLog(OMContainerSupport.class);
private static final OMXMLStreamReaderConfiguration defaultReaderConfiguration = new OMXMLStreamReaderConfiguration();
- private OMContainerHelper() {}
+ public XMLStreamReader OMContainer.getXMLStreamReader() {
+ return getXMLStreamReader(true);
+ }
- public static XMLStreamReader getXMLStreamReader(IContainer container, boolean cache) {
- return getXMLStreamReader(container, cache, defaultReaderConfiguration);
+ public XMLStreamReader OMContainer.getXMLStreamReaderWithoutCaching() {
+ return getXMLStreamReader(false);
+ }
+
+ public XMLStreamReader OMContainer.getXMLStreamReader(boolean cache) {
+ return getXMLStreamReader(cache, defaultReaderConfiguration);
}
- public static XMLStreamReader getXMLStreamReader(IContainer container, boolean cache, OMXMLStreamReaderConfiguration configuration) {
- OMXMLParserWrapper builder = container.getBuilder();
- if (builder != null && builder.isCompleted() && !cache && !container.isComplete()) {
+ public XMLStreamReader IContainer.getXMLStreamReader(boolean cache, OMXMLStreamReaderConfiguration configuration) {
+ OMXMLParserWrapper builder = getBuilder();
+ if (builder != null && builder.isCompleted() && !cache && !isComplete()) {
throw new UnsupportedOperationException("The parser is already consumed!");
}
- OMXMLStreamReader reader = new OMXMLStreamReaderExAdapter(new PullSerializer(container, cache, configuration.isPreserveNamespaceContext()));
+ OMXMLStreamReader reader = new OMXMLStreamReaderExAdapter(new PullSerializer(this, cache, configuration.isPreserveNamespaceContext()));
if (configuration.isNamespaceURIInterning()) {
reader = new NamespaceURIInterningXMLStreamReaderWrapper(reader);
@@ -73,7 +80,7 @@ public final class OMContainerHelper {
return reader;
}
- public static void addChild(IContainer container, OMNode omNode, boolean fromBuilder) {
+ public void IContainer.addChild(OMNode omNode, boolean fromBuilder) {
OMNodeEx child;
if (fromBuilder) {
// If the new child was provided by the builder, we know that it was created by
@@ -82,35 +89,35 @@ public final class OMContainerHelper {
} else {
// Careful here: if the child was created by another Axiom implementation, it doesn't
// necessarily implement OMNodeEx
- if (omNode.getOMFactory().getMetaFactory().equals(container.getOMFactory().getMetaFactory())) {
+ if (omNode.getOMFactory().getMetaFactory().equals(getOMFactory().getMetaFactory())) {
child = (OMNodeEx)omNode;
} else {
- child = (OMNodeEx)((OMFactoryEx)container.getOMFactory()).importNode(omNode);
+ child = (OMNodeEx)((OMFactoryEx)getOMFactory()).importNode(omNode);
}
- if (!container.isComplete()) {
- container.build();
+ if (!isComplete()) {
+ build();
}
- if (child.getParent() == container && child == container.getLastKnownOMChild()) {
+ if (child.getParent() == this && child == getLastKnownOMChild()) {
// The child is already the last node.
// We don't need to detach and re-add it.
return;
}
- container.checkChild(omNode);
+ checkChild(omNode);
}
if (child.getParent() != null) {
child.detach();
}
- child.setParent(container);
+ child.setParent(this);
- if (container.getFirstOMChildIfAvailable() == null) {
- container.setFirstChild(child);
+ if (getFirstOMChildIfAvailable() == null) {
+ setFirstChild(child);
} else {
- OMNode lastChild = container.getLastKnownOMChild();
+ OMNode lastChild = getLastKnownOMChild();
child.setPreviousOMSibling(lastChild);
((OMNodeEx)lastChild).setNextOMSibling(child);
}
- container.setLastChild(child);
+ setLastChild(child);
// For a normal OMNode, the incomplete status is
// propogated up the tree.
@@ -120,33 +127,33 @@ public final class OMContainerHelper {
// is a normal OMNode
if (!fromBuilder && !child.isComplete() &&
!(child instanceof OMSourcedElement)) {
- container.setComplete(false);
+ setComplete(false);
}
}
- public static void build(IContainer container) {
- OMXMLParserWrapper builder = container.getBuilder();
- if (container.getState() == IContainer.DISCARDED) {
+ public void IContainer.defaultBuild() {
+ OMXMLParserWrapper builder = getBuilder();
+ if (getState() == IContainer.DISCARDED) {
if (builder != null) {
- ((StAXBuilder)builder).debugDiscarded(container);
+ ((StAXBuilder)builder).debugDiscarded(this);
}
throw new NodeUnavailableException();
}
if (builder != null && builder.isCompleted()) {
log.debug("Builder is already complete.");
}
- while (!container.isComplete()) {
+ while (!isComplete()) {
builder.next();
- if (builder.isCompleted() && !container.isComplete()) {
+ if (builder.isCompleted() && !isComplete()) {
log.debug("Builder is complete. Setting OMObject to complete.");
- container.setComplete(true);
+ setComplete(true);
}
}
}
- public static void buildNext(IParentNode that) {
- OMXMLParserWrapper builder = that.getBuilder();
+ public void IParentNode.buildNext() {
+ OMXMLParserWrapper builder = getBuilder();
if (builder == null) {
throw new IllegalStateException("The node has no builder");
} else if (((StAXOMBuilder)builder).isClosed()) {
@@ -160,36 +167,36 @@ public final class OMContainerHelper {
}
}
- public static OMNode getFirstOMChild(IParentNode that) {
- OMNode firstChild = that.getFirstOMChildIfAvailable();
+ public OMNode IParentNode.getFirstOMChild() {
+ OMNode firstChild = getFirstOMChildIfAvailable();
if (firstChild == null) {
- switch (that.getState()) {
+ switch (getState()) {
case IParentNode.DISCARDED:
- ((StAXBuilder)that.getBuilder()).debugDiscarded(that);
+ ((StAXBuilder)getBuilder()).debugDiscarded(this);
throw new NodeUnavailableException();
case IParentNode.INCOMPLETE:
do {
- buildNext(that);
- } while (that.getState() == IParentNode.INCOMPLETE
- && (firstChild = that.getFirstOMChildIfAvailable()) == null);
+ buildNext();
+ } while (getState() == IParentNode.INCOMPLETE
+ && (firstChild = getFirstOMChildIfAvailable()) == null);
}
}
return firstChild;
}
- public static void removeChildren(IContainer that) {
+ public void IContainer.removeChildren() {
boolean updateState;
- if (that.getState() == IParentNode.INCOMPLETE && that.getBuilder() != null) {
- OMNode lastKnownChild = that.getLastKnownOMChild();
+ if (getState() == IParentNode.INCOMPLETE && getBuilder() != null) {
+ OMNode lastKnownChild = getLastKnownOMChild();
if (lastKnownChild != null) {
lastKnownChild.build();
}
- ((StAXOMBuilder)that.getBuilder()).discard(that);
+ ((StAXOMBuilder)getBuilder()).discard(this);
updateState = true;
} else {
updateState = false;
}
- IChildNode child = (IChildNode)that.getFirstOMChildIfAvailable();
+ IChildNode child = (IChildNode)getFirstOMChildIfAvailable();
while (child != null) {
IChildNode nextSibling = (IChildNode)child.getNextOMSiblingIfAvailable();
child.setPreviousOMSibling(null);
@@ -197,15 +204,15 @@ public final class OMContainerHelper {
child.setParent(null);
child = nextSibling;
}
- that.setFirstChild(null);
- that.setLastChild(null);
+ setFirstChild(null);
+ setLastChild(null);
if (updateState) {
- that.setComplete(true);
+ setComplete(true);
}
}
- public static SAXResult getSAXResult(IContainer that) {
- SAXResultContentHandler handler = new SAXResultContentHandler(that);
+ public SAXResult OMContainer.getSAXResult() {
+ SAXResultContentHandler handler = new SAXResultContentHandler(this);
SAXResult result = new SAXResult();
result.setHandler(handler);
result.setLexicalHandler(handler);
Modified: webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMNodeHelper.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMNodeHelper.java?rev=1608197&r1=1608196&r2=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMNodeHelper.java (original)
+++ webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/OMNodeHelper.java Sun Jul 6 13:05:19 2014
@@ -37,7 +37,7 @@ public final class OMNodeHelper {
throw new NodeUnavailableException();
case IParentNode.INCOMPLETE:
do {
- OMContainerHelper.buildNext(parent);
+ parent.buildNext();
} while (parent.getState() == IParentNode.INCOMPLETE
&& (nextSibling = node.getNextOMSiblingIfAvailable()) == null);
}
Modified: webservices/axiom/trunk/modules/axiom-dom/pom.xml
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-dom/pom.xml?rev=1608197&r1=1608196&r2=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-dom/pom.xml (original)
+++ webservices/axiom/trunk/modules/axiom-dom/pom.xml Sun Jul 6 13:05:19 2014
@@ -105,6 +105,35 @@
<build>
<plugins>
<plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>default-compile</id>
+ <phase>none</phase>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>aspectj-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>compile</goal>
+ </goals>
+ <configuration>
+ <complianceLevel>1.5</complianceLevel>
+ <aspectLibraries>
+ <aspectLibrary>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>axiom-common-impl</artifactId>
+ </aspectLibrary>
+ </aspectLibraries>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
@@ -128,6 +157,7 @@
<artifactSet>
<includes>
<include>${project.groupId}:axiom-common-impl</include>
+ <include>org.aspectj:aspectjrt</include>
</includes>
</artifactSet>
<transformers>
Modified: webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentFragmentImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentFragmentImpl.java?rev=1608197&r1=1608196&r2=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentFragmentImpl.java (original)
+++ webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentFragmentImpl.java Sun Jul 6 13:05:19 2014
@@ -25,7 +25,6 @@ import org.apache.axiom.om.OMNode;
import org.apache.axiom.om.OMOutputFormat;
import org.apache.axiom.om.OMXMLParserWrapper;
import org.apache.axiom.om.impl.common.IContainer;
-import org.apache.axiom.om.impl.common.OMContainerHelper;
import org.apache.axiom.om.impl.common.serializer.push.Serializer;
import org.w3c.dom.DocumentFragment;
import org.w3c.dom.Node;
@@ -120,11 +119,6 @@ public class DocumentFragmentImpl extend
return null;
}
- // TODO: we really shouldn't implement IContainer, but only IParentNode
- public void removeChildren() {
- OMContainerHelper.removeChildren(this);
- }
-
public final String lookupNamespaceURI(String specifiedPrefix) {
return null;
}
Modified: webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentImpl.java?rev=1608197&r1=1608196&r2=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentImpl.java (original)
+++ webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DocumentImpl.java Sun Jul 6 13:05:19 2014
@@ -31,7 +31,6 @@ import org.apache.axiom.om.dom.DOMMetaFa
import org.apache.axiom.om.impl.MTOMXMLStreamWriter;
import org.apache.axiom.om.impl.OMNodeEx;
import org.apache.axiom.om.impl.common.IDocument;
-import org.apache.axiom.om.impl.common.OMContainerHelper;
import org.apache.axiom.om.impl.common.OMDocumentHelper;
import org.apache.axiom.om.impl.common.OMNamespaceImpl;
import org.apache.axiom.om.impl.common.serializer.push.OutputException;
@@ -595,17 +594,13 @@ public class DocumentImpl extends RootNo
}
public final void build() {
- OMContainerHelper.build(this);
+ defaultBuild();
}
public final Node getNextSibling() {
return null;
}
- public final void removeChildren() {
- OMContainerHelper.removeChildren(this);
- }
-
public final String lookupNamespaceURI(String specifiedPrefix) {
Element documentElement = getDocumentElement();
return documentElement == null ? null
Modified: webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ElementImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ElementImpl.java?rev=1608197&r1=1608196&r2=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ElementImpl.java (original)
+++ webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ElementImpl.java Sun Jul 6 13:05:19 2014
@@ -29,11 +29,11 @@ import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.om.OMNode;
import org.apache.axiom.om.OMOutputFormat;
import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.common.IContainer;
import org.apache.axiom.om.impl.common.IElement;
import org.apache.axiom.om.impl.common.IParentNode;
import org.apache.axiom.om.impl.common.NamespaceIterator;
import org.apache.axiom.om.impl.common.OMChildElementIterator;
-import org.apache.axiom.om.impl.common.OMContainerHelper;
import org.apache.axiom.om.impl.common.OMElementHelper;
import org.apache.axiom.om.impl.common.OMNamedInformationItemHelper;
import org.apache.axiom.om.impl.common.OMNamespaceImpl;
@@ -108,7 +108,7 @@ public class ElementImpl extends ParentN
this.builder = builder;
state = builder == null ? COMPLETE : INCOMPLETE;
if (parentNode != null) {
- parentNode.addChild(this, builder != null);
+ ((IContainer)parentNode).addChild(this, builder != null);
}
this.attributes = new AttributeMap(this);
namespace = generateNSDecl ? OMNamedInformationItemHelper.handleNamespace(this, ns, false, true) : ns;
@@ -1118,7 +1118,7 @@ public class ElementImpl extends ParentN
}
public final void build() {
- OMContainerHelper.build(this);
+ defaultBuild();
}
public final OMNode getNextOMSibling() throws OMException {
@@ -1133,10 +1133,6 @@ public class ElementImpl extends ParentN
return parentNode();
}
- public final void removeChildren() {
- OMContainerHelper.removeChildren(this);
- }
-
public final String lookupNamespaceURI(String specifiedPrefix) {
String namespace = this.getNamespaceURI();
String prefix = this.getPrefix();
Modified: webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ParentNode.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ParentNode.java?rev=1608197&r1=1608196&r2=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ParentNode.java (original)
+++ webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ParentNode.java Sun Jul 6 13:05:19 2014
@@ -26,14 +26,12 @@ import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNode;
import org.apache.axiom.om.OMSourcedElement;
-import org.apache.axiom.om.OMXMLStreamReaderConfiguration;
import org.apache.axiom.om.impl.OMNodeEx;
import org.apache.axiom.om.impl.common.IContainer;
import org.apache.axiom.om.impl.common.IParentNode;
import org.apache.axiom.om.impl.common.OMChildrenLocalNameIterator;
import org.apache.axiom.om.impl.common.OMChildrenNamespaceIterator;
import org.apache.axiom.om.impl.common.OMChildrenQNameIterator;
-import org.apache.axiom.om.impl.common.OMContainerHelper;
import org.apache.axiom.om.impl.common.OMDescendantsIterator;
import org.apache.axiom.om.impl.common.serializer.push.sax.XMLReaderImpl;
import org.apache.axiom.om.impl.traverse.OMChildrenIterator;
@@ -47,8 +45,6 @@ import org.w3c.dom.NodeList;
import org.xml.sax.InputSource;
import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.transform.sax.SAXResult;
import javax.xml.transform.sax.SAXSource;
import java.util.Iterator;
@@ -72,11 +68,7 @@ public abstract class ParentNode extends
}
public void addChild(OMNode omNode) {
- addChild(omNode, false);
- }
-
- public void addChild(OMNode omNode, boolean fromBuilder) {
- OMContainerHelper.addChild((IContainer)this, omNode, fromBuilder);
+ ((IContainer)this).addChild(omNode, false);
}
public Iterator getChildren() {
@@ -127,10 +119,6 @@ public abstract class ParentNode extends
return null;
}
- public OMNode getFirstOMChild() {
- return OMContainerHelper.getFirstOMChild(this);
- }
-
public OMNode getFirstOMChildIfAvailable() {
return (OMNode)firstChild;
}
@@ -526,30 +514,10 @@ public abstract class ParentNode extends
}
}
- public XMLStreamReader getXMLStreamReaderWithoutCaching() {
- return getXMLStreamReader(false);
- }
-
- public XMLStreamReader getXMLStreamReader() {
- return getXMLStreamReader(true);
- }
-
- public XMLStreamReader getXMLStreamReader(boolean cache) {
- return OMContainerHelper.getXMLStreamReader((IContainer)this, cache);
- }
-
- public XMLStreamReader getXMLStreamReader(boolean cache, OMXMLStreamReaderConfiguration configuration) {
- return OMContainerHelper.getXMLStreamReader((IContainer)this, cache, configuration);
- }
-
public SAXSource getSAXSource(boolean cache) {
return new SAXSource(new XMLReaderImpl((IContainer)this, cache), new InputSource());
}
- public SAXResult getSAXResult() {
- return OMContainerHelper.getSAXResult((IContainer)this);
- }
-
void notifyChildComplete() {
if (!this.isComplete() && getBuilder() == null) {
Iterator iterator = getChildren();
Modified: webservices/axiom/trunk/modules/axiom-impl/pom.xml
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-impl/pom.xml?rev=1608197&r1=1608196&r2=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-impl/pom.xml (original)
+++ webservices/axiom/trunk/modules/axiom-impl/pom.xml Sun Jul 6 13:05:19 2014
@@ -99,6 +99,35 @@
<build>
<plugins>
<plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>default-compile</id>
+ <phase>none</phase>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>aspectj-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>compile</goal>
+ </goals>
+ <configuration>
+ <complianceLevel>1.5</complianceLevel>
+ <aspectLibraries>
+ <aspectLibrary>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>axiom-common-impl</artifactId>
+ </aspectLibrary>
+ </aspectLibraries>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
@@ -122,6 +151,7 @@
<artifactSet>
<includes>
<include>${project.groupId}:axiom-common-impl</include>
+ <include>org.aspectj:aspectjrt</include>
</includes>
</artifactSet>
<transformers>
Modified: webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java?rev=1608197&r1=1608196&r2=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java (original)
+++ webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java Sun Jul 6 13:05:19 2014
@@ -28,12 +28,10 @@ import org.apache.axiom.om.OMInformation
import org.apache.axiom.om.OMNode;
import org.apache.axiom.om.OMOutputFormat;
import org.apache.axiom.om.OMXMLParserWrapper;
-import org.apache.axiom.om.OMXMLStreamReaderConfiguration;
import org.apache.axiom.om.impl.common.IDocument;
import org.apache.axiom.om.impl.common.OMChildrenLocalNameIterator;
import org.apache.axiom.om.impl.common.OMChildrenNamespaceIterator;
import org.apache.axiom.om.impl.common.OMChildrenQNameIterator;
-import org.apache.axiom.om.impl.common.OMContainerHelper;
import org.apache.axiom.om.impl.common.OMDescendantsIterator;
import org.apache.axiom.om.impl.common.OMDocumentHelper;
import org.apache.axiom.om.impl.common.serializer.push.OutputException;
@@ -43,8 +41,6 @@ import org.apache.axiom.om.impl.traverse
import org.xml.sax.InputSource;
import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.transform.sax.SAXResult;
import javax.xml.transform.sax.SAXSource;
import java.util.Iterator;
@@ -150,10 +146,6 @@ public class OMDocumentImpl extends OMSe
addChild(child, false);
}
- public void addChild(OMNode omNode, boolean fromBuilder) {
- OMContainerHelper.addChild(this, omNode, fromBuilder);
- }
-
public final void checkChild(OMNode child) {
if (child instanceof OMElement) {
if (getOMDocumentElement() != null) {
@@ -204,14 +196,6 @@ public class OMDocumentImpl extends OMSe
return new OMChildrenNamespaceIterator(getFirstOMChild(),
uri);
}
- /**
- * Method getFirstOMChild.
- *
- * @return Returns first om child.
- */
- public OMNode getFirstOMChild() {
- return OMContainerHelper.getFirstOMChild(this);
- }
public OMNode getFirstOMChildIfAvailable() {
return firstChild;
@@ -300,22 +284,6 @@ public class OMDocumentImpl extends OMSe
OMDocumentHelper.internalSerialize(this, serializer, format, cache, includeXMLDeclaration);
}
- public XMLStreamReader getXMLStreamReader() {
- return getXMLStreamReader(true);
- }
-
- public XMLStreamReader getXMLStreamReaderWithoutCaching() {
- return getXMLStreamReader(false);
- }
-
- public XMLStreamReader getXMLStreamReader(boolean cache) {
- return OMContainerHelper.getXMLStreamReader(this, cache);
- }
-
- public XMLStreamReader getXMLStreamReader(boolean cache, OMXMLStreamReaderConfiguration configuration) {
- return OMContainerHelper.getXMLStreamReader(this, cache, configuration);
- }
-
void notifyChildComplete() {
if (state == INCOMPLETE && builder == null) {
Iterator iterator = getChildren();
@@ -333,18 +301,10 @@ public class OMDocumentImpl extends OMSe
return new SAXSource(new XMLReaderImpl(this, cache), new InputSource());
}
- public SAXResult getSAXResult() {
- return OMContainerHelper.getSAXResult(this);
- }
-
public void build() {
- OMContainerHelper.build(this);
+ defaultBuild();
}
- public void removeChildren() {
- OMContainerHelper.removeChildren(this);
- }
-
public OMInformationItem clone(OMCloneOptions options) {
OMDocument targetDocument;
if (options.isPreserveModel()) {
Modified: webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java?rev=1608197&r1=1608196&r2=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java (original)
+++ webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMElementImpl.java Sun Jul 6 13:05:19 2014
@@ -30,7 +30,6 @@ import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.om.OMNode;
import org.apache.axiom.om.OMOutputFormat;
import org.apache.axiom.om.OMXMLParserWrapper;
-import org.apache.axiom.om.OMXMLStreamReaderConfiguration;
import org.apache.axiom.om.impl.OMNodeEx;
import org.apache.axiom.om.impl.common.IContainer;
import org.apache.axiom.om.impl.common.IElement;
@@ -40,12 +39,10 @@ import org.apache.axiom.om.impl.common.O
import org.apache.axiom.om.impl.common.OMChildrenLocalNameIterator;
import org.apache.axiom.om.impl.common.OMChildrenNamespaceIterator;
import org.apache.axiom.om.impl.common.OMChildrenQNameIterator;
-import org.apache.axiom.om.impl.common.OMContainerHelper;
import org.apache.axiom.om.impl.common.OMDescendantsIterator;
import org.apache.axiom.om.impl.common.OMElementHelper;
import org.apache.axiom.om.impl.common.OMNamedInformationItemHelper;
import org.apache.axiom.om.impl.common.OMNamespaceImpl;
-import org.apache.axiom.om.impl.common.SAXResultContentHandler;
import org.apache.axiom.om.impl.common.serializer.push.OutputException;
import org.apache.axiom.om.impl.common.serializer.push.Serializer;
import org.apache.axiom.om.impl.common.serializer.push.sax.XMLReaderImpl;
@@ -60,9 +57,7 @@ import org.xml.sax.InputSource;
import javax.xml.namespace.NamespaceContext;
import javax.xml.namespace.QName;
import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
import javax.xml.stream.XMLStreamWriter;
-import javax.xml.transform.sax.SAXResult;
import javax.xml.transform.sax.SAXSource;
import java.io.IOException;
@@ -205,10 +200,6 @@ public class OMElementImpl extends OMNod
addChild(omNode, false);
}
- public void addChild(OMNode omNode, boolean fromBuilder) {
- OMContainerHelper.addChild(this, omNode, fromBuilder);
- }
-
public void checkChild(OMNode child) {
}
@@ -618,15 +609,6 @@ public class OMElementImpl extends OMNod
return builder;
}
- /**
- * Method getFirstOMChild.
- *
- * @return Returns child.
- */
- public OMNode getFirstOMChild() {
- return OMContainerHelper.getFirstOMChild(this);
- }
-
public OMNode getFirstOMChildIfAvailable() {
return firstChild;
}
@@ -676,7 +658,7 @@ public class OMElementImpl extends OMNod
omNode.build();
}
} else {
- OMContainerHelper.build(this);
+ defaultBuild();
}
}
@@ -706,22 +688,6 @@ public class OMElementImpl extends OMNod
state = DISCARDED;
}
- public XMLStreamReader getXMLStreamReader() {
- return getXMLStreamReader(true);
- }
-
- public XMLStreamReader getXMLStreamReaderWithoutCaching() {
- return getXMLStreamReader(false);
- }
-
- public XMLStreamReader getXMLStreamReader(boolean cache) {
- return OMContainerHelper.getXMLStreamReader(this, cache);
- }
-
- public XMLStreamReader getXMLStreamReader(boolean cache, OMXMLStreamReaderConfiguration configuration) {
- return OMContainerHelper.getXMLStreamReader(this, cache, configuration);
- }
-
public void setText(String text) {
// Remove all existing children
OMNode child;
@@ -999,13 +965,5 @@ public class OMElementImpl extends OMNod
public SAXSource getSAXSource(boolean cache) {
return new SAXSource(new XMLReaderImpl(this, cache), new InputSource());
}
-
- public SAXResult getSAXResult() {
- return OMContainerHelper.getSAXResult(this);
- }
-
- public void removeChildren() {
- OMContainerHelper.removeChildren(this);
- }
}
Modified: webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java?rev=1608197&r1=1608196&r2=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java (original)
+++ webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java Sun Jul 6 13:05:19 2014
@@ -1117,4 +1117,12 @@ public class OMSourcedElementImpl extend
forceExpand();
super.removeChildren();
}
+
+ public void defaultBuild() {
+ super.defaultBuild();
+ }
+
+ public void buildNext() {
+ super.buildNext();
+ }
}
Modified: webservices/axiom/trunk/modules/axiom-impl/src/test/java/org/apache/axiom/om/impl/llom/OMSourcedElementTest.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-impl/src/test/java/org/apache/axiom/om/impl/llom/OMSourcedElementTest.java?rev=1608197&r1=1608196&r2=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-impl/src/test/java/org/apache/axiom/om/impl/llom/OMSourcedElementTest.java (original)
+++ webservices/axiom/trunk/modules/axiom-impl/src/test/java/org/apache/axiom/om/impl/llom/OMSourcedElementTest.java Sun Jul 6 13:05:19 2014
@@ -33,7 +33,7 @@ public class OMSourcedElementTest extend
for (int i = 0; i < supmeths.length; i++) {
Method supmeth = supmeths[i];
Class[] params = supmeth.getParameterTypes();
- if (!Modifier.isPrivate(supmeth.getModifiers())) {
+ if (!Modifier.isPrivate(supmeth.getModifiers()) && !supmeth.getName().startsWith("ajc$")) {
for (int j = 0; j < submeths.length; j++) {
Method submeth = submeths[j];
if (supmeth.getName().equals(submeth.getName())) {
Modified: webservices/axiom/trunk/pom.xml
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/pom.xml?rev=1608197&r1=1608196&r2=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/pom.xml (original)
+++ webservices/axiom/trunk/pom.xml Sun Jul 6 13:05:19 2014
@@ -371,6 +371,11 @@
<artifactId>spring-ws-security</artifactId>
<version>2.2.0.RELEASE</version>
</dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>aspectjrt</artifactId>
+ <version>1.7.4</version>
+ </dependency>
</dependencies>
</dependencyManagement>
<properties>
@@ -571,6 +576,11 @@
<version>0.8.0</version>
</plugin>
<plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>aspectj-maven-plugin</artifactId>
+ <version>1.6</version>
+ </plugin>
+ <plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
Modified: webservices/axiom/trunk/testsuites/dom-testsuite/pom.xml
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/testsuites/dom-testsuite/pom.xml?rev=1608197&r1=1608196&r2=1608197&view=diff
==============================================================================
--- webservices/axiom/trunk/testsuites/dom-testsuite/pom.xml (original)
+++ webservices/axiom/trunk/testsuites/dom-testsuite/pom.xml Sun Jul 6 13:05:19 2014
@@ -62,7 +62,6 @@
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
- <version>1.7.4</version>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
@@ -200,7 +199,6 @@
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
- <version>1.6</version>
<executions>
<execution>
<goals>