Author: veithen
Date: Sun Jun 21 15:34:21 2015
New Revision: 1686738
URL: http://svn.apache.org/r1686738
Log:
Implement a better solution for the SetLocalName hook in OMSourcedElementImpl.
Modified:
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomAttributeSupport.aj
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomElementSupport.aj
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomNamedInformationItemSupport.aj
webservices/axiom/trunk/implementations/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSourcedElementImpl.java
Modified:
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomAttributeSupport.aj
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomAttributeSupport.aj?rev=1686738&r1=1686737&r2=1686738&view=diff
==============================================================================
---
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomAttributeSupport.aj
(original)
+++
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomAttributeSupport.aj
Sun Jun 21 15:34:21 2015
@@ -26,6 +26,9 @@ public aspect AxiomAttributeSupport {
return (OMElement)coreGetOwnerElement();
}
+ final void AxiomAttribute.beforeSetLocalName() {
+ }
+
public final void AxiomAttribute.setNamespace(OMNamespace namespace,
boolean decl) {
internalSetNamespace(handleNamespace((AxiomElement)getOwner(),
namespace, true, decl));
}
Modified:
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomElementSupport.aj
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomElementSupport.aj?rev=1686738&r1=1686737&r2=1686738&view=diff
==============================================================================
---
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomElementSupport.aj
(original)
+++
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/AxiomElementSupport.aj
Sun Jun 21 15:34:21 2015
@@ -63,6 +63,10 @@ public aspect AxiomElementSupport {
private static final Log log =
LogFactory.getLog(AxiomElementSupport.class);
+ final void AxiomElement.beforeSetLocalName() {
+ forceExpand();
+ }
+
public final int AxiomElement.getType() {
return OMNode.ELEMENT_NODE;
}
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=1686738&r1=1686737&r2=1686738&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
Sun Jun 21 15:34:21 2015
@@ -90,7 +90,10 @@ public aspect AxiomNamedInformationItemS
return coreGetLocalName();
}
- public void AxiomNamedInformationItem.setLocalName(String localName) {
+ abstract void AxiomNamedInformationItem.beforeSetLocalName();
+
+ public final void AxiomNamedInformationItem.setLocalName(String localName)
{
+ beforeSetLocalName();
this.localName = localName;
qName = null;
}
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=1686738&r1=1686737&r2=1686738&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
Sun Jun 21 15:34:21 2015
@@ -357,12 +357,6 @@ public class OMSourcedElementImpl extend
}
}
- public void setLocalName(String localName) {
- // Need to expand the element so that the method actually overrides
the the local name
- forceExpand();
- super.setLocalName(localName);
- }
-
public OMNamespace getNamespace() throws OMException {
if (isExpanded()) {
return super.getNamespace();