[Java] Class XmlNodePrinter
- groovy.util.XmlNodePrinter
Prints a groovy.util.Node
(as used with XmlParser
) including all children in XML format. Typical usage:
def xml = '<html><head><title>Title</title></head><body><h1>Header</h1></body></html>' def root = new XmlParser().parseText(xml) new XmlNodePrinter(preserveWhitespace:true).print(root.body[0])which when run produces this on stdout (or use your own
PrintWriter
to direct elsewhere): <body> <h1>Header</h1> </body>
- Authors:
- Christian Stein
- See Also:
- NodePrinter
- XmlUtil.serialize
Nested Class Summary
Modifiers | Name | Description |
---|---|---|
protected static class | XmlNodePrinter.NamespaceContext |
Field Summary
Modifiers | Name | Description |
---|---|---|
protected IndentPrinter | out |
Constructor Summary
Constructor and description |
---|
XmlNodePrinter
(PrintWriter out) |
XmlNodePrinter
(PrintWriter out, String indent) |
XmlNodePrinter
(PrintWriter out, String indent, String quote) |
XmlNodePrinter
(IndentPrinter out) |
XmlNodePrinter
(IndentPrinter out, String quote) |
XmlNodePrinter
() |
Methods Summary
Type Params | Return Type | Name and description |
---|---|---|
String |
getQuote() Get Quote to use when printing attributes. | |
boolean |
isExpandEmptyElements() Whether empty elements are expanded from <tagName/> to <tagName></tagName>. | |
boolean |
isNamespaceAware() Check if namespace handling is enabled. | |
boolean |
isPreserveWhitespace() Check if whitespace preservation is enabled. | |
void |
print(Node node) | |
protected void |
print(Node node, XmlNodePrinter.NamespaceContext ctx) | |
protected void |
printLineBegin() | |
protected void |
printLineEnd() | |
protected void |
printLineEnd(String comment) | |
protected void |
printList(List list, XmlNodePrinter.NamespaceContext ctx) | |
protected void |
printName(Node node, XmlNodePrinter.NamespaceContext ctx, boolean begin, boolean preserve) | |
protected void |
printNameAttributes(Map attributes, XmlNodePrinter.NamespaceContext ctx) | |
protected void |
printNamespace(Object object, XmlNodePrinter.NamespaceContext ctx) | |
protected void |
printSimpleItem(Object value) | |
protected boolean |
printSpecialNode(Node node) | |
void |
setExpandEmptyElements(boolean expandEmptyElements) Whether empty elements are expanded from <tagName/> to <tagName></tagName>. | |
void |
setNamespaceAware(boolean namespaceAware) Enable and/or disable namespace handling. | |
void |
setPreserveWhitespace(boolean preserveWhitespace) Enable and/or disable preservation of whitespace. | |
void |
setQuote(String quote) Set Quote to use when printing attributes. |
Inherited Methods Summary
Methods inherited from class | Name |
---|---|
class Object | wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll |
Field Detail
protected final IndentPrinter out
Constructor Detail
public XmlNodePrinter(PrintWriter out)
public XmlNodePrinter(PrintWriter out, String indent)
public XmlNodePrinter(PrintWriter out, String indent, String quote)
public XmlNodePrinter(IndentPrinter out)
public XmlNodePrinter(IndentPrinter out, String quote)
public XmlNodePrinter()
Method Detail
public String getQuote()
Get Quote to use when printing attributes.
- Returns:
- the quote character
public boolean isExpandEmptyElements()
Whether empty elements are expanded from <tagName/> to <tagName></tagName>.
- Returns:
-
true
, if empty elements will be represented by an opening tag followed immediately by a closing tag.
public boolean isNamespaceAware()
Check if namespace handling is enabled. Defaults to true
.
- Returns:
- true if namespace handling is enabled
public boolean isPreserveWhitespace()
Check if whitespace preservation is enabled. Defaults to false
.
- Returns:
- true if whitespaces are honoured when printing simple text nodes
public void print(Node node)
protected void print(Node node, XmlNodePrinter.NamespaceContext ctx)
protected void printLineBegin()
protected void printLineEnd()
protected void printLineEnd(String comment)
protected void printList(List list, XmlNodePrinter.NamespaceContext ctx)
protected void printName(Node node, XmlNodePrinter.NamespaceContext ctx, boolean begin, boolean preserve)
protected void printNameAttributes(Map attributes, XmlNodePrinter.NamespaceContext ctx)
protected void printNamespace(Object object, XmlNodePrinter.NamespaceContext ctx)
protected void printSimpleItem(Object value)
protected boolean printSpecialNode(Node node)
public void setExpandEmptyElements(boolean expandEmptyElements)
Whether empty elements are expanded from <tagName/> to <tagName></tagName>.
- Parameters:
-
expandEmptyElements
- iftrue
, empty elements will be represented by an opening tag followed immediately by a closing tag. Defaults tofalse
.
public void setNamespaceAware(boolean namespaceAware)
Enable and/or disable namespace handling.
- Parameters:
-
namespaceAware
- the new desired value
public void setPreserveWhitespace(boolean preserveWhitespace)
Enable and/or disable preservation of whitespace.
- Parameters:
-
preserveWhitespace
- the new desired value
public void setQuote(String quote)
Set Quote to use when printing attributes.
- Parameters:
-
quote
- the quote character
© 2003-2020 The Apache Software Foundation
Licensed under the Apache license.
https://docs.groovy-lang.org/2.4.21/html/gapi/groovy/util/XmlNodePrinter.html