You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commons-dev@ws.apache.org by ve...@apache.org on 2009/03/15 14:53:50 UTC
svn commit: r754666 -
/webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DOMStAXWrapper.java
Author: veithen
Date: Sun Mar 15 13:53:49 2009
New Revision: 754666
URL: http://svn.apache.org/viewvc?rev=754666&view=rev
Log:
Simplified DOMStAXWrapper#getAttributeLocalName by removing the if statement in the following piece of code:
if (attrib.getNamespace() != null) {
returnString = attrib.getLocalName();
} else {
returnString = ((Attr) attrib).getNodeName();
}
The methods in AttrImpl that are used by this code are defined as follows:
public OMNamespace getNamespace() {
return this.namespace;
}
public String getLocalName() {
return (this.namespace == null) ? this.attrName : DOMUtil
.getLocalName(this.attrName);
}
public String getNodeName() {
return (this.namespace != null
&& !"".equals(this.namespace.getPrefix()) &&
!(OMConstants.XMLNS_NS_PREFIX.equals(this.attrName)))
? this.namespace.getPrefix() + ":" + this.attrName
: this.attrName;
}
It can be seen that if getNamespace returns null, then both getLocalName and getNodeName return the same value (attrName). Therefore the code shown above can be simply rewritten as:
returnString = attrib.getLocalName();
This is important because this code is the only really DOOM specific piece in DOMStAXWrapper.
Modified:
webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DOMStAXWrapper.java
Modified: webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DOMStAXWrapper.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DOMStAXWrapper.java?rev=754666&r1=754665&r2=754666&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DOMStAXWrapper.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/DOMStAXWrapper.java Sun Mar 15 13:53:49 2009
@@ -37,7 +37,6 @@
import org.apache.axiom.om.impl.builder.StAXBuilder;
import org.apache.axiom.om.impl.exception.OMStreamingException;
import org.apache.axiom.om.impl.util.NamespaceContextImpl;
-import org.w3c.dom.Attr;
import javax.activation.DataHandler;
import javax.xml.namespace.NamespaceContext;
@@ -557,11 +556,7 @@
if (isStartElement() || (currentEvent == ATTRIBUTE)) {
OMAttribute attrib = getAttribute((OMElement) lastNode, i);
if (attrib != null) {
- if (attrib.getNamespace() != null) {
- returnString = attrib.getLocalName();
- } else {
- returnString = ((Attr) attrib).getNodeName();
- }
+ returnString = attrib.getLocalName();
}
} else {
throw new IllegalStateException(