You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-dev@jakarta.apache.org by je...@apache.org on 2001/05/15 18:53:48 UTC
cvs commit: jakarta-slide/src/util/org/apache/util DOMUtils.java
jericho 01/05/15 09:53:47
Modified: src/util/org/apache/util DOMUtils.java
Log:
- Support to extract the first wanted element.
Revision Changes Path
1.2 +36 -7 jakarta-slide/src/util/org/apache/util/DOMUtils.java
Index: DOMUtils.java
===================================================================
RCS file: /home/cvs/jakarta-slide/src/util/org/apache/util/DOMUtils.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- DOMUtils.java 2001/02/15 17:37:29 1.1
+++ DOMUtils.java 2001/05/15 16:53:40 1.2
@@ -1,7 +1,7 @@
/*
- * $Header: /home/cvs/jakarta-slide/src/util/org/apache/util/DOMUtils.java,v 1.1 2001/02/15 17:37:29 remm Exp $
- * $Revision: 1.1 $
- * $Date: 2001/02/15 17:37:29 $
+ * $Header: /home/cvs/jakarta-slide/src/util/org/apache/util/DOMUtils.java,v 1.2 2001/05/15 16:53:40 jericho Exp $
+ * $Revision: 1.2 $
+ * $Date: 2001/05/15 16:53:40 $
*
* ====================================================================
*
@@ -88,7 +88,8 @@
* force" implementations of functions that are available in JAXP 1.1.
*
* @author <a href="mailto:bcholmes@interlog.com>B.C. Holmes</a>
- * @version $Revision: 1.1 $
+ * @author <a href="mailto:jericho@thinkfree.com>Park, Sung-Gu</a>
+ * @version $Revision: 1.2 $
*/
public class DOMUtils {
@@ -242,7 +243,7 @@
} catch (NoSuchMethodException e) {
}
*/
- namespace = element.getNamespaceURI();
+ namespace = element.getNamespaceURI();
} else {
String tagName = element.getTagName();
@@ -298,7 +299,7 @@
e.printStackTrace();
}
*/
- localName = element.getLocalName();
+ localName = element.getLocalName();
} else {
localName = element.getTagName();
@@ -339,7 +340,7 @@
} catch (NoSuchMethodException e) {
}
*/
- list = ((Element) node).getElementsByTagNameNS(namespace, tagName);
+ list = ((Element) node).getElementsByTagNameNS(namespace, tagName);
} else {
Vector vector = new Vector();
getChildElementsByTagNameNS(vector, node, tagName, namespace);
@@ -371,6 +372,34 @@
}
}
}
+
+
+ /**
+ * Get the first element matched with the given namespace and name.
+ *
+ * @param node The node.
+ * @param namespac The namespace.
+ * @param name The name.
+ * @return The wanted first element.
+ */
+ public static Element getFirstElement(Node node, String namespace,
+ String name) {
+ NodeList children = node.getChildNodes();
+ if (children == null)
+ return null;
+ for (int i = 0; i < children.getLength(); i++) {
+ try {
+ Element child = (Element) children.item(i);
+ if (name.equals(DOMUtils.getElementLocalName(child)) &&
+ namespace.equals(DOMUtils.getElementNamespaceURI(child))) {
+ return child;
+ }
+ } catch (ClassCastException e) {
+ }
+ }
+ return null;
+ }
+
// ---------------------------------------------------------- Inner Classes