groovy.xml
[Groovy] Class StaxBuilder
java.lang.Object
groovy.lang.GroovyObjectSupport
groovy.util.BuilderSupport
groovy.xml.StaxBuilder
class StaxBuilder
extends BuilderSupport
A Groovy builder that works with Stax processors.
Using Java 6, typical usage is as follows:
def factory = XMLOutputFactory.newInstance()
def writer = new StringWriter()
def builder = new StaxBuilder(factory.createXMLStreamWriter(writer))
builder.root1(a:5, b:7) {
elem1('hello1')
elem2('hello2')
elem3(x:7)
}
assert writer == """hello1hello2"""
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"}}}'''
- Authors:
- Dejan Bosanac
- Paul King
Methods inherited from class BuilderSupport
|
createNode, createNode, createNode, createNode, doInvokeMethod, getCurrent, getName, invokeMethod, invokeMethod, nodeCompleted, postNodeCompletion, setClosureDelegate, setCurrent, setParent |
writer
def writer
-
StaxBuilder
StaxBuilder(def xmlStreamWriter)
-
createNode
protected def createNode(def name)
-
createNode
protected def createNode(def name, def value)
-
createNode
protected def createNode(def name, Map attributes)
-
createNode
protected def createNode(def name, Map attributes, def value)
-
nodeCompleted
protected void nodeCompleted(def parent, def node)
-
setParent
protected void setParent(def parent, def child)
-
Copyright © 2003-2010 The Codehaus. All rights reserved.