Package groovy.xml

Class XmlUtil


  • public class XmlUtil
    extends Object
    Used for pretty printing XML content and other XML related utilities.
    • Constructor Summary

      Constructors 
      Constructor Description
      XmlUtil()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static String escapeControlCharacters​(String orig)
      Escape control characters (below 0x20) with their XML entities, e.g.
      static String escapeXml​(String orig)
      Escape the following characters " ' & < > with their XML entities, e.g.
      static SAXParser newSAXParser​(String schemaLanguage, boolean namespaceAware, boolean validating, File schema)
      Factory method to create a SAXParser configured to validate according to a particular schema language and a File containing the schema to validate against.
      static SAXParser newSAXParser​(String schemaLanguage, boolean namespaceAware, boolean validating, URL schema)
      Factory method to create a SAXParser configured to validate according to a particular schema language and an URL pointing to the schema to validate against.
      static SAXParser newSAXParser​(String schemaLanguage, boolean namespaceAware, boolean validating, Source... schemas)
      Factory method to create a SAXParser configured to validate according to a particular schema language and optionally providing the schema sources to validate with.
      static SAXParser newSAXParser​(String schemaLanguage, File schema)
      Factory method to create a SAXParser configured to validate according to a particular schema language and a File containing the schema to validate against.
      static SAXParser newSAXParser​(String schemaLanguage, URL schema)
      Factory method to create a SAXParser configured to validate according to a particular schema language and an URL pointing to the schema to validate against.
      static SAXParser newSAXParser​(String schemaLanguage, Source... schemas)
      Factory method to create a SAXParser configured to validate according to a particular schema language and optionally providing the schema sources to validate with.
      static String serialize​(Writable writable)
      Return a pretty String version of the XML content produced by the Writable.
      static void serialize​(Writable writable, OutputStream os)
      Write a pretty version of the XML content produced by the Writable to the OutputStream.
      static void serialize​(Writable writable, Writer w)
      Write a pretty version of the XML content produced by the Writable to the Writer.
      static String serialize​(Node node)
      Return a pretty String version of the Node.
      static void serialize​(Node node, OutputStream os)
      Write a pretty version of the Node to the OutputStream.
      static void serialize​(Node node, Writer w)
      Write a pretty version of the Node to the Writer.
      static String serialize​(GPathResult node)
      Return a pretty version of the GPathResult.
      static void serialize​(GPathResult node, OutputStream os)
      Write a pretty version of the GPathResult to the OutputStream.
      static void serialize​(GPathResult node, Writer w)
      Write a pretty version of the GPathResult to the Writer.
      static String serialize​(String xmlString)
      Return a pretty version of the XML content contained in the given String.
      static void serialize​(String xmlString, OutputStream os)
      Write a pretty version of the given XML string to the OutputStream.
      static void serialize​(String xmlString, Writer w)
      Write a pretty version of the given XML string to the Writer.
      static String serialize​(Element element)
      Return a pretty String version of the Element.
      static void serialize​(Element element, OutputStream os)
      Write a pretty version of the Element to the OutputStream.
      static void serialize​(Element element, Writer w)
      Write a pretty version of the Element to the Writer.
    • Constructor Detail

      • XmlUtil

        public XmlUtil()
    • Method Detail

      • serialize

        public static String serialize​(Element element)
        Return a pretty String version of the Element.
        Parameters:
        element - the Element to serialize
        Returns:
        the pretty String representation of the Element
      • serialize

        public static void serialize​(Element element,
                                     OutputStream os)
        Write a pretty version of the Element to the OutputStream.
        Parameters:
        element - the Element to serialize
        os - the OutputStream to write to
      • serialize

        public static void serialize​(Element element,
                                     Writer w)
        Write a pretty version of the Element to the Writer.
        Parameters:
        element - the Element to serialize
        w - the Writer to write to
      • serialize

        public static String serialize​(Node node)
        Return a pretty String version of the Node.
        Parameters:
        node - the Node to serialize
        Returns:
        the pretty String representation of the Node
      • serialize

        public static void serialize​(Node node,
                                     OutputStream os)
        Write a pretty version of the Node to the OutputStream.
        Parameters:
        node - the Node to serialize
        os - the OutputStream to write to
      • serialize

        public static void serialize​(Node node,
                                     Writer w)
        Write a pretty version of the Node to the Writer.
        Parameters:
        node - the Node to serialize
        w - the Writer to write to
      • serialize

        public static String serialize​(GPathResult node)
        Return a pretty version of the GPathResult.
        Parameters:
        node - a GPathResult to serialize to a String
        Returns:
        the pretty String representation of the GPathResult
      • serialize

        public static void serialize​(GPathResult node,
                                     OutputStream os)
        Write a pretty version of the GPathResult to the OutputStream.
        Parameters:
        node - a GPathResult to serialize
        os - the OutputStream to write to
      • serialize

        public static void serialize​(GPathResult node,
                                     Writer w)
        Write a pretty version of the GPathResult to the Writer.
        Parameters:
        node - a GPathResult to serialize
        w - the Writer to write to
      • serialize

        public static String serialize​(Writable writable)
        Return a pretty String version of the XML content produced by the Writable.
        Parameters:
        writable - the Writable to serialize
        Returns:
        the pretty String representation of the content from the Writable
      • serialize

        public static void serialize​(Writable writable,
                                     OutputStream os)
        Write a pretty version of the XML content produced by the Writable to the OutputStream.
        Parameters:
        writable - the Writable to serialize
        os - the OutputStream to write to
      • serialize

        public static void serialize​(Writable writable,
                                     Writer w)
        Write a pretty version of the XML content produced by the Writable to the Writer.
        Parameters:
        writable - the Writable to serialize
        w - the Writer to write to
      • serialize

        public static String serialize​(String xmlString)
        Return a pretty version of the XML content contained in the given String.
        Parameters:
        xmlString - the String to serialize
        Returns:
        the pretty String representation of the original content
      • serialize

        public static void serialize​(String xmlString,
                                     OutputStream os)
        Write a pretty version of the given XML string to the OutputStream.
        Parameters:
        xmlString - the String to serialize
        os - the OutputStream to write to
      • serialize

        public static void serialize​(String xmlString,
                                     Writer w)
        Write a pretty version of the given XML string to the Writer.
        Parameters:
        xmlString - the String to serialize
        w - the Writer to write to
      • newSAXParser

        public static SAXParser newSAXParser​(String schemaLanguage,
                                             boolean namespaceAware,
                                             boolean validating,
                                             Source... schemas)
                                      throws SAXException,
                                             ParserConfigurationException
        Factory method to create a SAXParser configured to validate according to a particular schema language and optionally providing the schema sources to validate with.
        Parameters:
        schemaLanguage - the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)
        namespaceAware - will the parser be namespace aware
        validating - will the parser also validate against DTDs
        schemas - the schemas to validate against
        Returns:
        the created SAXParser
        Throws:
        SAXException
        ParserConfigurationException
        Since:
        1.8.7
      • newSAXParser

        public static SAXParser newSAXParser​(String schemaLanguage,
                                             File schema)
                                      throws SAXException,
                                             ParserConfigurationException
        Factory method to create a SAXParser configured to validate according to a particular schema language and a File containing the schema to validate against. The created SAXParser will be namespace-aware and not validate against DTDs.
        Parameters:
        schemaLanguage - the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)
        schema - a file containing the schema to validate against
        Returns:
        the created SAXParser
        Throws:
        SAXException
        ParserConfigurationException
        Since:
        1.8.7
        See Also:
        newSAXParser(String, boolean, boolean, File)
      • newSAXParser

        public static SAXParser newSAXParser​(String schemaLanguage,
                                             boolean namespaceAware,
                                             boolean validating,
                                             File schema)
                                      throws SAXException,
                                             ParserConfigurationException
        Factory method to create a SAXParser configured to validate according to a particular schema language and a File containing the schema to validate against.
        Parameters:
        schemaLanguage - the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)
        namespaceAware - will the parser be namespace aware
        validating - will the parser also validate against DTDs
        schema - a file containing the schema to validate against
        Returns:
        the created SAXParser
        Throws:
        SAXException
        ParserConfigurationException
        Since:
        1.8.7
      • newSAXParser

        public static SAXParser newSAXParser​(String schemaLanguage,
                                             URL schema)
                                      throws SAXException,
                                             ParserConfigurationException
        Factory method to create a SAXParser configured to validate according to a particular schema language and an URL pointing to the schema to validate against. The created SAXParser will be namespace-aware and not validate against DTDs.
        Parameters:
        schemaLanguage - the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)
        schema - a URL pointing to the schema to validate against
        Returns:
        the created SAXParser
        Throws:
        SAXException
        ParserConfigurationException
        Since:
        1.8.7
        See Also:
        newSAXParser(String, boolean, boolean, URL)
      • newSAXParser

        public static SAXParser newSAXParser​(String schemaLanguage,
                                             boolean namespaceAware,
                                             boolean validating,
                                             URL schema)
                                      throws SAXException,
                                             ParserConfigurationException
        Factory method to create a SAXParser configured to validate according to a particular schema language and an URL pointing to the schema to validate against.
        Parameters:
        schemaLanguage - the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)
        namespaceAware - will the parser be namespace aware
        validating - will the parser also validate against DTDs
        schema - a URL pointing to the schema to validate against
        Returns:
        the created SAXParser
        Throws:
        SAXException
        ParserConfigurationException
        Since:
        1.8.7
      • escapeXml

        public static String escapeXml​(String orig)
        Escape the following characters " ' & < > with their XML entities, e.g. "bread" & "butter" becomes &quot;bread&quot; &amp; &quot;butter&quot. Notes:
        • Supports only the five basic XML entities (gt, lt, quot, amp, apos)
        • Does not escape control characters
        • Does not support DTDs or external entities
        • Does not treat surrogate pairs specially
        • Does not perform Unicode validation on its input
        Parameters:
        orig - the original String
        Returns:
        A new string in which all characters that require escaping have been replaced with the corresponding XML entities.
        See Also:
        escapeControlCharacters(String)
      • escapeControlCharacters

        public static String escapeControlCharacters​(String orig)
        Escape control characters (below 0x20) with their XML entities, e.g. carriage return (Ctrl-M or \r) becomes &#13; Notes:
        • Does not escape non-ascii characters above 0x7e
        • Does not treat surrogate pairs specially
        • Does not perform Unicode validation on its input
        Parameters:
        orig - the original String
        Returns:
        A new string in which all characters that require escaping have been replaced with the corresponding XML entities.
        See Also:
        escapeXml(String)