Class DOMUtils


  • public class DOMUtils
    extends Object
    • Constructor Detail

      • DOMUtils

        public DOMUtils()
    • Method Detail

      • getAttributes

        public static List getAttributes​(Element el)
        Returns a list of attributes of an element. Returns an empty list if the element has no attributes. Does not include namespace declarations.
        Parameters:
        el - Element whose attributes are returned
        Returns:
        the List of Attr
      • getAttribute

        public static String getAttribute​(Element el,
                                          String attrName)
        Returns the value of an attribute of an element. Returns null if the attribute is not found (whereas Element.getAttribute returns "" if an attrib is not found). This method should be used for elements that support extension attributes because it does not track unexpected attributes.
        Parameters:
        el - Element whose attrib is looked for
        attrName - name of attribute to look for
        Returns:
        the attribute value
      • getAttribute

        public static String getAttribute​(Element el,
                                          String attrName,
                                          List remainingAttrs)
        Returns the value of an attribute of an element. Returns null if the attribute is not found (whereas Element.getAttribute returns "" if an attrib is not found). This method should be used for elements that do not support extension attributes because it tracks the element's remaining attributes so that eventually any unexpected attributes can be identified.
        Parameters:
        el - Element whose attrib is looked for
        attrName - name of attribute to look for
        remainingAttrs - List of remaining attributes
        Returns:
        the attribute value
      • getAttributeNS

        public static String getAttributeNS​(Element el,
                                            String namespaceURI,
                                            String localPart)
        Returns the value of an attribute of an element. Returns null if the attribute is not found (whereas Element.getAttributeNS returns "" if an attrib is not found).
        Parameters:
        el - Element whose attrib is looked for
        namespaceURI - namespace URI of attribute to look for
        localPart - local part of attribute to look for
        Returns:
        the attribute value
      • getChildCharacterData

        public static String getChildCharacterData​(Element parentEl)
        Concat all the text and cdata node children of this elem and return the resulting text.
        Parameters:
        parentEl - the element whose cdata/text node values are to be combined.
        Returns:
        the concatanated string.
      • getFirstChildElement

        public static Element getFirstChildElement​(Element elem)
        Return the first child element of the given element. Null if no children are found.
        Parameters:
        elem - Element whose child is to be returned
        Returns:
        the first child element.
      • getNextSiblingElement

        public static Element getNextSiblingElement​(Element elem)
        Return the next sibling element of the given element. Null if no more sibling elements are found.
        Parameters:
        elem - Element whose sibling element is to be returned
        Returns:
        the next sibling element.
      • findChildElementWithAttribute

        public static Element findChildElementWithAttribute​(Element elem,
                                                            String attrName,
                                                            String attrValue)
        Return the first child element of the given element which has the given attribute with the given value.
        Parameters:
        elem - the element whose children are to be searched
        attrName - the attrib that must be present
        attrValue - the desired value of the attribute
        Returns:
        the first matching child element.
      • countKids

        public static int countKids​(Element elem,
                                    short nodeType)
        Count number of children of a certain type of the given element.
        Parameters:
        elem - the element whose kids are to be counted
        Returns:
        the number of matching kids.
      • getNamespaceURIFromPrefix

        public static String getNamespaceURIFromPrefix​(Node context,
                                                       String prefix)
        Given a prefix and a node, return the namespace URI that the prefix has been associated with. This method is useful in resolving the namespace URI of attribute values which are being interpreted as QNames. If prefix is null, this method will return the default namespace.
        Parameters:
        context - the starting node (looks up recursively from here)
        prefix - the prefix to find an xmlns:prefix=uri for
        Returns:
        the namespace URI or null if not found
      • registerUniquePrefix

        public static void registerUniquePrefix​(String prefix,
                                                String namespaceURI,
                                                Definition def)
      • getQualifiedAttributeValue

        public static QName getQualifiedAttributeValue​(Element el,
                                                       String attrName,
                                                       String elDesc,
                                                       boolean isRequired,
                                                       Definition def)
                                                throws WSDLException
        This method should be used for elements that support extension attributes because it does not track the remaining attributes to test for unexpected attributes.
        Throws:
        WSDLException
      • getQualifiedAttributeValue

        public static QName getQualifiedAttributeValue​(Element el,
                                                       String attrName,
                                                       String elDesc,
                                                       boolean isRequired,
                                                       Definition def,
                                                       List remainingAttrs)
                                                throws WSDLException
        This method should be used for elements that do not support extension attributes because it tracks the remaining attributes so that eventually any unexpected attributes can be identified.
        Throws:
        WSDLException
      • cleanString

        public static String cleanString​(String orig)