[utilities COMMIT] in /java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/xml: ElementSupport.jav...
noreply at shibboleth.net
noreply at shibboleth.net
Mon Mar 18 22:25:30 EDT 2013
Author: scantor
Date: Mon Mar 18 22:25:30 2013
New Revision: 360
URL: http://svn.shibboleth.net/view/utilities?rev=360&view=rev
Log:
OSJ-47: Fix NodeList usage.
Modified:
java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/xml/ElementSupport.java
java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/xml/NamespaceSupport.java
Modified: java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/xml/ElementSupport.java
URL: http://svn.shibboleth.net/view/utilities/java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/xml/ElementSupport.java?rev=360&r1=359&r2=360&view=diff
==============================================================================
--- java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/xml/ElementSupport.java (original)
+++ java-support/trunk/src/main/java/net/shibboleth/utilities/java/support/xml/ElementSupport.java Mon Mar 18 22:25:30 2013
@@ -33,7 +33,6 @@
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
import org.w3c.dom.Text;
import com.google.common.base.Objects;
@@ -156,14 +155,10 @@
final ArrayList<Element> children = new ArrayList<Element>();
- final NodeList childNodes = root.getChildNodes();
- final int numOfNodes = childNodes.getLength();
- Node childNode;
- for (int i = 0; i < numOfNodes; i++) {
- childNode = childNodes.item(i);
- if (childNode.getNodeType() == Node.ELEMENT_NODE) {
- children.add((Element) childNode);
- }
+ Element childNode = getFirstChildElement(root);
+ while (childNode != null) {
+ children.add((Element) childNode);
+ childNode = getNextSiblingElement(childNode);
}
return children;
@@ -203,18 +198,12 @@
final ArrayList<Element> children = new ArrayList<Element>();
- final NodeList childNodes = root.getChildNodes();
- final int numOfNodes = childNodes.getLength();
- Node childNode;
- Element e;
- for (int i = 0; i < numOfNodes; i++) {
- childNode = childNodes.item(i);
- if (childNode.getNodeType() == Node.ELEMENT_NODE) {
- e = (Element) childNode;
- if (Objects.equal(e.getLocalName(), localName)) {
- children.add(e);
- }
- }
+ Element childNode = getFirstChildElement(root);
+ while (childNode != null) {
+ if (Objects.equal(childNode.getLocalName(), localName)) {
+ children.add(childNode);
+ }
+ childNode = getNextSiblingElement(childNode);
}
return children;
@@ -238,18 +227,12 @@
final ArrayList<Element> children = new ArrayList<Element>();
- final NodeList childNodes = root.getChildNodes();
- final int numOfNodes = childNodes.getLength();
- Node childNode;
- Element e;
- for (int i = 0; i < numOfNodes; i++) {
- childNode = childNodes.item(i);
- if (childNode.getNodeType() == Node.ELEMENT_NODE) {
- e = (Element) childNode;
- if (Objects.equal(e.getNamespaceURI(), namespaceURI) && Objects.equal(e.getLocalName(), localName)) {
- children.add(e);
- }
- }
+ Element childNode = getFirstChildElement(root);
+ while (childNode != null) {
+ if (isElementNamed(childNode, namespaceURI, localName)) {
+ children.add(childNode);
+ }
+ childNode = getNextSiblingElement(childNode);
}
return children;
@@ -269,8 +252,7 @@
final Node parent = currentNode.getParentNode();
if (parent != null) {
- short type = parent.getNodeType();
- if (type == Node.ELEMENT_NODE) {
+ if (parent.getNodeType() == Node.ELEMENT_NODE) {
return (Element) parent;
}
return getElementAncestor(parent);
@@ -292,17 +274,18 @@
}
StringBuilder builder = new StringBuilder();
- final NodeList nodeList = element.getChildNodes();
- Node node;
+ Node node = element.getFirstChild();
boolean first = true;
- for (int i = 0; i < nodeList.getLength(); i++) {
- node = nodeList.item(i);
- if (node.getNodeType() == Node.TEXT_NODE) {
- if (!first) {
+ while (node != null) {
+ if (node.getNodeType() == Node.TEXT_NODE || node.getNodeType() == Node.CDATA_SECTION_NODE) {
+ if (first) {
+ first = false;
+ } else {
builder.append(XmlConstants.LIST_DELIMITERS.charAt(0));
}
builder.append(((Text) node).getWholeText());
}
+ node = node.getNextSibling();
}
return builder.toString();
@@ -387,26 +370,18 @@
[... 62 lines stripped ...]
More information about the commits
mailing list