Groovy 2.2.0

groovy.xml
[Groovy] Class StreamingMarkupBuilder

java.lang.Object
  groovy.xml.streamingmarkupsupport.AbstractStreamingBuilder
      groovy.xml.StreamingMarkupBuilder

class StreamingMarkupBuilder
extends AbstractStreamingBuilder

A builder class for creating XML markup. This implementation uses a StreamingMarkupWriter to handle output.

Example:

System.out << new StreamingMarkupBuilder().bind {
   root {
     a( a1:'one' ) {
       b { mkp.yield( '3 < 5' ) }
       c( a2:'two', 'blah' )
     }
   }
 }
Will output the following String, without newlines or indentation:
<root>
   <a a1='one'>
     <b>3 &lt; 5</b>
     <c a2='two'>blah</c>
   </a>
 </root>
Notes:


Property Summary
def builder

def commentClosure

Invoked by calling mkp.comment

def declarationClosure

Invoked by calling mkp.xmlDeclaration

def encoding

boolean expandEmptyElements

def noopClosure

Invoked by calling mkp.yield.

def pendingStack

def piClosure

Invoked by calling mkp.pi

def tagClosure

def unescapedClosure

Invoked by calling mkp.yieldUnescaped.

boolean useDoubleQuotes

 
Constructor Summary
StreamingMarkupBuilder()

 
Method Summary
def bind(def closure)

Returns a Writable object, which may be used to render the markup directly to a String, or send the output to a stream.

def bindNode(def node)

Convenience method for binding a single node.

def getQt()

 
Methods inherited from class Object
wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll
 

Property Detail

builder

def builder


commentClosure

def commentClosure
Invoked by calling mkp.comment


declarationClosure

def declarationClosure
Invoked by calling mkp.xmlDeclaration


encoding

def encoding


expandEmptyElements

boolean expandEmptyElements


noopClosure

def noopClosure
Invoked by calling mkp.yield. Used to render text to the output stream. Any XML reserved characters will be escaped to ensure well-formedness.


pendingStack

def pendingStack


piClosure

def piClosure
Invoked by calling mkp.pi


tagClosure

def tagClosure


unescapedClosure

def unescapedClosure
Invoked by calling mkp.yieldUnescaped. Used to render literal text or markup to the output stream. No escaping is done on the output.


useDoubleQuotes

boolean useDoubleQuotes


 
Constructor Detail

StreamingMarkupBuilder

StreamingMarkupBuilder()


 
Method Detail

bind

def bind(def closure)
Returns a Writable object, which may be used to render the markup directly to a String, or send the output to a stream.

Examples:

 // get the markup as a string:
 new StreamingMarkupBuilder().bind { div { out << "hello world" } }.toString()
 
 // send the output directly to a file:
 new StreamingMarkupBuilder().bind { div { out << "hello world" } } \
      .writeTo( new File('myFile.xml').newWriter() )
 
Returns:
a Writable to render the markup


bindNode

def bindNode(def node)
Convenience method for binding a single node. The call bindNode(node) is equivalent to bind{ out << node }. Returns a Writable object, which may be used to render the markup directly to a String, or send the output to a stream.
Returns:
a Writable to render the markup
See Also:
bind(Closure)


getQt

def getQt()


 

Copyright &copy; 2003-2013 The Codehaus. All rights reserved.