Package groovy.xml

Class XmlUtil

java.lang.Object
groovy.xml.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

    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.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • XmlUtil

      public XmlUtil()
  • Method Details

    • 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, 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. 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)
      schemas - the schemas to validate against
      Returns:
      the created SAXParser
      Throws:
      SAXException
      ParserConfigurationException
      Since:
      1.8.7
      See Also:
      newSAXParser(String, boolean, boolean, Source...)
    • 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)