Package groovy.xml

## Class DOMBuilder

- java.lang.Object
- - groovy.lang.GroovyObjectSupport
  - - groovy.util.BuilderSupport
    - - groovy.xml.DOMBuilder

- All Implemented Interfaces:
    `GroovyObject`

      public class DOMBuilder
      extends BuilderSupport

  A helper class for creating a W3C DOM tree

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `DOMBuilder​(javax.xml.parsers.DocumentBuilder documentBuilder)` |
    `DOMBuilder​(org.w3c.dom.Document document)` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | `appendNamespaceAttributes​(org.w3c.dom.Element element, java.util.Map<java.lang.Object,​java.lang.Object> attributes)` |
    `protected org.w3c.dom.Document` | `createDocument()` |
    `protected java.lang.Object` | `createNode​(java.lang.Object name)` |
    `protected java.lang.Object` | `createNode​(java.lang.Object name, java.lang.Object value)` |
    `protected java.lang.Object` | `createNode​(java.lang.Object name, java.util.Map attributes)` |
    `protected java.lang.Object` | `createNode​(java.lang.Object name, java.util.Map attributes, java.lang.Object value)` |
    `static DOMBuilder` | `newInstance()` |
    `static DOMBuilder` | `newInstance​(boolean validating, boolean namespaceAware)` |
    `static org.w3c.dom.Document` | `parse​(java.io.Reader reader)` | Creates a DocumentBuilder and uses it to parse the XML text read from the given reader.
    `static org.w3c.dom.Document` | `parse​(java.io.Reader reader, boolean validating, boolean namespaceAware)` | Creates a DocumentBuilder and uses it to parse the XML text read from the given reader, allowing parser validation and namespace awareness to be controlled.
    `static org.w3c.dom.Document` | `parse​(java.io.Reader reader, boolean validating, boolean namespaceAware, boolean allowDocTypeDeclaration)` | Creates a DocumentBuilder and uses it to parse the XML text read from the given reader, allowing parser validation, namespace awareness and permission of DOCTYPE declarations to be controlled.
    `org.w3c.dom.Document` | `parseText​(java.lang.String text)` | A helper method to parse the given text as XML.
    `protected void` | `setParent​(java.lang.Object parent, java.lang.Object child)` |

    - ### Methods inherited from class groovy.util.BuilderSupport

      `doInvokeMethod, getCurrent, getName, invokeMethod, invokeMethod, nodeCompleted, postNodeCompletion, setClosureDelegate, setCurrent`

    - ### Methods inherited from class groovy.lang.GroovyObjectSupport

      `getMetaClass, getProperty, setMetaClass, setProperty`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### DOMBuilder

          public DOMBuilder​(org.w3c.dom.Document document)

    - #### DOMBuilder

          public DOMBuilder​(javax.xml.parsers.DocumentBuilder documentBuilder)

  - ### Method Detail

    - #### newInstance

          public static DOMBuilder newInstance()
                                        throws javax.xml.parsers.ParserConfigurationException

      Throws:
        `javax.xml.parsers.ParserConfigurationException`

    - #### newInstance

          public static DOMBuilder newInstance​(boolean validating,
                                               boolean namespaceAware)
                                        throws javax.xml.parsers.ParserConfigurationException

      Throws:
        `javax.xml.parsers.ParserConfigurationException`

    - #### parse

          public static org.w3c.dom.Document parse​(java.io.Reader reader)
                                            throws org.xml.sax.SAXException,
                                                   java.io.IOException,
                                                   javax.xml.parsers.ParserConfigurationException

      Creates a DocumentBuilder and uses it to parse the XML text read from the given reader. A non-validating, namespace aware parser which does not allow DOCTYPE declarations is used.
      Parameters:
        `reader` - the reader to read the XML text from
      Returns:
        the root node of the parsed tree of Nodes
      Throws:
        `org.xml.sax.SAXException` - Any SAX exception, possibly wrapping another exception.
        `java.io.IOException` - An IO exception from the parser, possibly from a byte stream or character stream supplied by the application.
        `javax.xml.parsers.ParserConfigurationException` - if a DocumentBuilder cannot be created which satisfies the configuration requested.
      See Also:
        `parse(Reader, boolean, boolean)`

    - #### parse

          public static org.w3c.dom.Document parse​(java.io.Reader reader,
                                                   boolean validating,
                                                   boolean namespaceAware)
                                            throws org.xml.sax.SAXException,
                                                   java.io.IOException,
                                                   javax.xml.parsers.ParserConfigurationException

      Creates a DocumentBuilder and uses it to parse the XML text read from the given reader, allowing parser validation and namespace awareness to be controlled. Documents are not allowed to contain DOCYTYPE declarations.
      Parameters:
        `reader` - the reader to read the XML text from
        `validating` - whether to validate the XML
        `namespaceAware` - whether the parser should be namespace aware
      Returns:
        the root node of the parsed tree of Nodes
      Throws:
        `org.xml.sax.SAXException` - Any SAX exception, possibly wrapping another exception.
        `java.io.IOException` - An IO exception from the parser, possibly from a byte stream or character stream supplied by the application.
        `javax.xml.parsers.ParserConfigurationException` - if a DocumentBuilder cannot be created which satisfies the configuration requested.

    - #### parse

          public static org.w3c.dom.Document parse​(java.io.Reader reader,
                                                   boolean validating,
                                                   boolean namespaceAware,
                                                   boolean allowDocTypeDeclaration)
                                            throws org.xml.sax.SAXException,
                                                   java.io.IOException,
                                                   javax.xml.parsers.ParserConfigurationException

      Creates a DocumentBuilder and uses it to parse the XML text read from the given reader, allowing parser validation, namespace awareness and permission of DOCTYPE declarations to be controlled.
      Parameters:
        `reader` - the reader to read the XML text from
        `validating` - whether to validate the XML
        `namespaceAware` - whether the parser should be namespace aware
        `allowDocTypeDeclaration` - whether the parser should allow DOCTYPE declarations
      Returns:
        the root node of the parsed tree of Nodes
      Throws:
        `org.xml.sax.SAXException` - Any SAX exception, possibly wrapping another exception.
        `java.io.IOException` - An IO exception from the parser, possibly from a byte stream or character stream supplied by the application.
        `javax.xml.parsers.ParserConfigurationException` - if a DocumentBuilder cannot be created which satisfies the configuration requested.

    - #### parseText

          public org.w3c.dom.Document parseText​(java.lang.String text)
                                         throws org.xml.sax.SAXException,
                                                java.io.IOException,
                                                javax.xml.parsers.ParserConfigurationException

      A helper method to parse the given text as XML.
      Parameters:
        `text` - the XML text to parse
      Returns:
        the root node of the parsed tree of Nodes
      Throws:
        `org.xml.sax.SAXException` - Any SAX exception, possibly wrapping another exception.
        `java.io.IOException` - An IO exception from the parser, possibly from a byte stream or character stream supplied by the application.
        `javax.xml.parsers.ParserConfigurationException` - if a DocumentBuilder cannot be created which satisfies the configuration requested.
      See Also:
        `parse(Reader)`

    - #### setParent

          protected void setParent​(java.lang.Object parent,
                                   java.lang.Object child)

      Specified by:
        `setParent` in class `BuilderSupport`

    - #### createNode

          protected java.lang.Object createNode​(java.lang.Object name)

      Specified by:
        `createNode` in class `BuilderSupport`

    - #### createDocument

          protected org.w3c.dom.Document createDocument()

    - #### createNode

          protected java.lang.Object createNode​(java.lang.Object name,
                                                java.lang.Object value)

      Specified by:
        `createNode` in class `BuilderSupport`

    - #### createNode

          protected java.lang.Object createNode​(java.lang.Object name,
                                                java.util.Map attributes,
                                                java.lang.Object value)

      Specified by:
        `createNode` in class `BuilderSupport`

    - #### createNode

          protected java.lang.Object createNode​(java.lang.Object name,
                                                java.util.Map attributes)

      Specified by:
        `createNode` in class `BuilderSupport`

    - #### appendNamespaceAttributes

          protected void appendNamespaceAttributes​(org.w3c.dom.Element element,
                                                   java.util.Map<java.lang.Object,​java.lang.Object> attributes)