[Groovy] Class StaxBuilder
- groovy.xml.StaxBuilder
class StaxBuilder extends BuilderSupport
A Groovy builder that works with Stax processors. A typical usage is as follows:
import javax.xml.stream.XMLOutputFactory
def factory = XMLOutputFactory.newInstance()
def writer = new StringWriter()
def builder = new groovy.xml.StaxBuilder(factory.createXMLStreamWriter(writer))
builder.root1(a:5, b:7) {
elem1('hello1')
elem2('hello2')
elem3(x:7)
}
assert writer.toString() == 'hello1 hello2 '
Or an external library such as Jettison can be used as follows:
@Grab('org.codehaus.jettison:jettison:1.2')
import org.codehaus.jettison.mapped.*
import javax.xml.stream.XMLStreamException
def conv = new MappedNamespaceConvention()
def writer = new StringWriter()
def mappedWriter = new MappedXMLStreamWriter(conv, writer)
def builder = new groovy.xml.StaxBuilder(mappedWriter)
builder.root1(a:5, b:7) {
elem1('hello1')
elem2('hello2')
elem3(x:7)
}
assert writer.toString() == '''{"root1":{"@a":"5","@b":"7","elem1":"hello1","elem2":"hello2","elem3":{"@x":"7"}}}'''
Properties Summary
| Type | Name and description |
|---|---|
Object |
writer |
Constructor Summary
| Constructor and description |
|---|
StaxBuilder
(Object xmlStreamWriter) |
Methods Summary
| Type Params | Return Type | Name and description |
|---|---|---|
protected Object |
createNode(Object name) | |
protected Object |
createNode(Object name, Object value) | |
protected Object |
createNode(Object name, Map attributes) | |
protected Object |
createNode(Object name, Map attributes, Object value) | |
protected void |
nodeCompleted(Object parent, Object node) | |
protected void |
setParent(Object parent, Object child) |
Inherited Methods Summary
| Methods inherited from class | Name |
|---|---|
class BuilderSupport | createNode, createNode, createNode, createNode, doInvokeMethod, getCurrent, getName, invokeMethod, invokeMethod, nodeCompleted, postNodeCompletion, setClosureDelegate, setCurrent, setParent |
class GroovyObjectSupport | getMetaClass, setMetaClass |
Property Detail
Object writer
Constructor Detail
StaxBuilder(Object xmlStreamWriter)
Method Detail
protected Object createNode(Object name)
protected Object createNode(Object name, Object value)
protected Object createNode(Object name, Map attributes)
protected Object createNode(Object name, Map attributes, Object value)
protected void nodeCompleted(Object parent, Object node)
protected void setParent(Object parent, Object child)
© 2003-2020 The Apache Software Foundation
Licensed under the Apache license.
https://docs.groovy-lang.org/3.0.7/html/gapi/groovy/xml/StaxBuilder.html