org.jcp.xml.dsig.internal.dom

Class DOMUtils

  • java.lang.Object
    • org.jcp.xml.dsig.internal.dom.DOMUtils


  • public class DOMUtils
    extends java.lang.Object
    Useful static DOM utility methods.
    • Method Summary

      Methods 
      Modifier and Type Method and Description
      static void appendChild(org.w3c.dom.Node parent, org.w3c.dom.Node child)
      Checks if child element has same owner document before appending to the parent, and imports it to the parent's document if necessary.
      static org.w3c.dom.Element createElement(org.w3c.dom.Document doc, java.lang.String tag, java.lang.String nsURI, java.lang.String prefix)
      Creates an element in the specified namespace, with the specified tag and namespace prefix.
      static java.lang.String getAttributeValue(org.w3c.dom.Element elem, java.lang.String name)
      Returns the attribute value for the attribute with the specified name.
      static org.w3c.dom.Element getFirstChildElement(org.w3c.dom.Node node)
      Returns the first child element of the specified node, or null if there is no such element.
      static org.w3c.dom.Element getFirstChildElement(org.w3c.dom.Node node, java.lang.String localName)
      Returns the first child element of the specified node and checks that the local name is equal to localName.
      static org.w3c.dom.Element getLastChildElement(org.w3c.dom.Node node)
      Returns the last child element of the specified node, or null if there is no such element.
      static org.w3c.dom.Element getNextSiblingElement(org.w3c.dom.Node node)
      Returns the next sibling element of the specified node, or null if there is no such element.
      static org.w3c.dom.Element getNextSiblingElement(org.w3c.dom.Node node, java.lang.String localName)
      Returns the next sibling element of the specified node and checks that the local name is equal to localName.
      static java.lang.String getNSPrefix(javax.xml.crypto.XMLCryptoContext context, java.lang.String nsURI)
      Returns the prefix associated with the specified namespace URI
      static org.w3c.dom.Document getOwnerDocument(org.w3c.dom.Node node)
      Returns the owner document of the specified node.
      static java.lang.String getSignaturePrefix(javax.xml.crypto.XMLCryptoContext context)
      Returns the prefix associated with the XML Signature namespace URI
      static boolean nodesEqual(org.w3c.dom.Node thisNode, org.w3c.dom.Node otherNode)
      Compares 2 nodes for equality.
      static java.util.Set<org.w3c.dom.Node> nodeSet(org.w3c.dom.NodeList nl)
      Returns a Set of Nodes, backed by the specified NodeList.
      static boolean paramsEqual(java.security.spec.AlgorithmParameterSpec spec1, java.security.spec.AlgorithmParameterSpec spec2) 
      static void removeAllChildren(org.w3c.dom.Node node)
      Removes all children nodes from the specified node.
      static void setAttribute(org.w3c.dom.Element elem, java.lang.String name, java.lang.String value)
      Sets an element's attribute (using DOM level 2) with the specified value and namespace prefix.
      static void setAttributeID(org.w3c.dom.Element elem, java.lang.String name, java.lang.String value)
      Sets an element's attribute (using DOM level 2) with the specified value and namespace prefix AND registers the ID value with the specified element.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • getOwnerDocument

        public static org.w3c.dom.Document getOwnerDocument(org.w3c.dom.Node node)
        Returns the owner document of the specified node.
        Parameters:
        node - the node
        Returns:
        the owner document
      • createElement

        public static org.w3c.dom.Element createElement(org.w3c.dom.Document doc,
                                        java.lang.String tag,
                                        java.lang.String nsURI,
                                        java.lang.String prefix)
        Creates an element in the specified namespace, with the specified tag and namespace prefix.
        Parameters:
        doc - the owner document
        tag - the tag
        nsURI - the namespace URI
        prefix - the namespace prefix
        Returns:
        the newly created element
      • setAttribute

        public static void setAttribute(org.w3c.dom.Element elem,
                        java.lang.String name,
                        java.lang.String value)
        Sets an element's attribute (using DOM level 2) with the specified value and namespace prefix.
        Parameters:
        elem - the element to set the attribute on
        name - the name of the attribute
        value - the attribute value. If null, no attribute is set.
      • setAttributeID

        public static void setAttributeID(org.w3c.dom.Element elem,
                          java.lang.String name,
                          java.lang.String value)
        Sets an element's attribute (using DOM level 2) with the specified value and namespace prefix AND registers the ID value with the specified element. This is for resolving same-document ID references.
        Parameters:
        elem - the element to set the attribute on
        name - the name of the attribute
        value - the attribute value. If null, no attribute is set.
      • getFirstChildElement

        public static org.w3c.dom.Element getFirstChildElement(org.w3c.dom.Node node)
        Returns the first child element of the specified node, or null if there is no such element.
        Parameters:
        node - the node
        Returns:
        the first child element of the specified node, or null if there is no such element
        Throws:
        java.lang.NullPointerException - if node == null
      • getFirstChildElement

        public static org.w3c.dom.Element getFirstChildElement(org.w3c.dom.Node node,
                                               java.lang.String localName)
                                                        throws javax.xml.crypto.MarshalException
        Returns the first child element of the specified node and checks that the local name is equal to localName.
        Parameters:
        node - the node
        Returns:
        the first child element of the specified node
        Throws:
        java.lang.NullPointerException - if node == null
        javax.xml.crypto.MarshalException - if no such element or the local name is not equal to localName
      • getLastChildElement

        public static org.w3c.dom.Element getLastChildElement(org.w3c.dom.Node node)
        Returns the last child element of the specified node, or null if there is no such element.
        Parameters:
        node - the node
        Returns:
        the last child element of the specified node, or null if there is no such element
        Throws:
        java.lang.NullPointerException - if node == null
      • getNextSiblingElement

        public static org.w3c.dom.Element getNextSiblingElement(org.w3c.dom.Node node)
        Returns the next sibling element of the specified node, or null if there is no such element.
        Parameters:
        node - the node
        Returns:
        the next sibling element of the specified node, or null if there is no such element
        Throws:
        java.lang.NullPointerException - if node == null
      • getNextSiblingElement

        public static org.w3c.dom.Element getNextSiblingElement(org.w3c.dom.Node node,
                                                java.lang.String localName)
                                                         throws javax.xml.crypto.MarshalException
        Returns the next sibling element of the specified node and checks that the local name is equal to localName.
        Parameters:
        node - the node
        Returns:
        the next sibling element of the specified node
        Throws:
        java.lang.NullPointerException - if node == null
        javax.xml.crypto.MarshalException - if no such element or the local name is not equal to localName
      • getAttributeValue

        public static java.lang.String getAttributeValue(org.w3c.dom.Element elem,
                                         java.lang.String name)
        Returns the attribute value for the attribute with the specified name. Returns null if there is no such attribute, or the empty string if the attribute value is empty.

        This works around a limitation of the DOM Element.getAttributeNode method, which does not distinguish between an unspecified attribute and an attribute with a value of "" (it returns "" for both cases).

        Parameters:
        elem - the element containing the attribute
        name - the name of the attribute
        Returns:
        the attribute value (may be null if unspecified)
      • nodeSet

        public static java.util.Set<org.w3c.dom.Node> nodeSet(org.w3c.dom.NodeList nl)
        Returns a Set of Nodes, backed by the specified NodeList.
        Parameters:
        nl - the NodeList
        Returns:
        a Set of Nodes
      • getNSPrefix

        public static java.lang.String getNSPrefix(javax.xml.crypto.XMLCryptoContext context,
                                   java.lang.String nsURI)
        Returns the prefix associated with the specified namespace URI
        Parameters:
        context - contains the namespace map
        nsURI - the namespace URI
        Returns:
        the prefix associated with the specified namespace URI, or null if not set
      • getSignaturePrefix

        public static java.lang.String getSignaturePrefix(javax.xml.crypto.XMLCryptoContext context)
        Returns the prefix associated with the XML Signature namespace URI
        Parameters:
        context - contains the namespace map
        Returns:
        the prefix associated with the specified namespace URI, or null if not set
      • removeAllChildren

        public static void removeAllChildren(org.w3c.dom.Node node)
        Removes all children nodes from the specified node.
        Parameters:
        node - the parent node whose children are to be removed
      • nodesEqual

        public static boolean nodesEqual(org.w3c.dom.Node thisNode,
                         org.w3c.dom.Node otherNode)
        Compares 2 nodes for equality. Implementation is not complete.
      • appendChild

        public static void appendChild(org.w3c.dom.Node parent,
                       org.w3c.dom.Node child)
        Checks if child element has same owner document before appending to the parent, and imports it to the parent's document if necessary.
      • paramsEqual

        public static boolean paramsEqual(java.security.spec.AlgorithmParameterSpec spec1,
                          java.security.spec.AlgorithmParameterSpec spec2)

© Portions Copyright 2003, 2014 IBM Corporation. All rights reserved.
© Portions Copyright 2003, 2014 Oracle and/or its affiliates. All rights reserved.