Package org.testng.reporters
Class XMLStringBuffer
- java.lang.Object
-
- org.testng.reporters.XMLStringBuffer
-
public class XMLStringBuffer extends Object
This class allows you to generate an XML text document by pushing and popping tags from a stack maintained internally.- Author:
- Cedric Beust Jul 21, 2003
-
-
Constructor Summary
Constructors Constructor Description XMLStringBuffer()
XMLStringBuffer(String start)
XMLStringBuffer(IBuffer buffer, String start)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addCDATA(String content)
Add a CDATA tag.void
addComment(String comment)
void
addEmptyElement(String tagName)
Add an empty element tag (e.g.void
addEmptyElement(String tagName, String... attributes)
void
addEmptyElement(String tagName, Properties attributes)
Add an empty element tag (e.g.void
addOptional(String tagName, Boolean value)
Add an optional Boolean element to the current tag.void
addOptional(String tagName, Boolean value, Properties attributes)
Add an optional Boolean element to the current tag.void
addOptional(String tagName, String value)
Add an optional String element to the current tag.void
addOptional(String tagName, String value, String... attributes)
void
addOptional(String tagName, String value, Properties attributes)
Add an optional String element to the current tag.void
addRequired(String tagName, String value)
Add a required element to the current tag.void
addRequired(String tagName, String value, String... attributes)
void
addRequired(String tagName, String value, Properties attributes)
Add a required element to the current tag.void
addString(String s)
String
getCurrentIndent()
IBuffer
getStringBuffer()
void
pop()
Pop the last pushed element without verifying it if matches the previously pushed tag.void
pop(String tagName)
Pop the last pushed element and throws an AssertionError if it doesn't match the corresponding tag that was pushed earlier.void
push(String tagName)
Push a new tag.void
push(String tagName, String schema)
Push a new tag.void
push(String tagName, String... attributes)
void
push(String tagName, String schema, Properties attributes)
Push a new tag.void
push(String tagName, Properties attributes)
Push a new tag.void
setDefaultComment(String defaultComment)
void
setDocType(String docType)
Set the doctype for this document.void
setXmlDetails(String v, String enc)
Set the xml version and encoding for this document.void
toWriter(Writer fw)
String
toXML()
-
-
-
Field Detail
-
EOL
public static final String EOL
End of line, value of 'line.separator' system property or '\n'
-
-
Constructor Detail
-
XMLStringBuffer
public XMLStringBuffer()
-
XMLStringBuffer
public XMLStringBuffer(String start)
- Parameters:
start
- A string of spaces indicating the indentation at which to start the generation. This constructor will not insert an
-
-
Method Detail
-
setXmlDetails
public void setXmlDetails(String v, String enc)
Set the xml version and encoding for this document.- Parameters:
v
- the XML versionenc
- the XML encoding
-
setDocType
public void setDocType(String docType)
Set the doctype for this document.- Parameters:
docType
- The DOCTYPE string, without the "<!DOCTYPE " ">"
-
push
public void push(String tagName, @Nullable String schema, @Nullable Properties attributes)
Push a new tag. Its value is stored and will be compared against the parameter passed to pop().- Parameters:
tagName
- The name of the tag.schema
- The schema to use (can be null or an empty string).attributes
- A Properties file representing the attributes (or null)
-
push
public void push(String tagName, @Nullable String schema)
Push a new tag. Its value is stored and will be compared against the parameter passed to pop().- Parameters:
tagName
- The name of the tag.schema
- The schema to use (can be null or an empty string).
-
push
public void push(String tagName, @Nullable Properties attributes)
Push a new tag. Its value is stored and will be compared against the parameter passed to pop().- Parameters:
tagName
- The name of the tag.attributes
- A Properties file representing the attributes (or null)
-
push
public void push(String tagName)
Push a new tag. Its value is stored and will be compared against the parameter passed to pop().- Parameters:
tagName
- The name of the tag.
-
pop
public void pop()
Pop the last pushed element without verifying it if matches the previously pushed tag.
-
pop
public void pop(String tagName)
Pop the last pushed element and throws an AssertionError if it doesn't match the corresponding tag that was pushed earlier.- Parameters:
tagName
- The name of the tag this pop() is supposed to match.
-
addRequired
public void addRequired(String tagName, @Nullable String value)
Add a required element to the current tag. An opening and closing tag will be generated even if value is null.- Parameters:
tagName
- The name of the tagvalue
- The value for this tag
-
addRequired
public void addRequired(String tagName, @Nullable String value, @Nullable Properties attributes)
Add a required element to the current tag. An opening and closing tag will be generated even if value is null.- Parameters:
tagName
- The name of the tagvalue
- The value for this tagattributes
- A Properties file containing the attributes (or null)
-
addOptional
public void addOptional(String tagName, @Nullable String value, @Nullable Properties attributes)
Add an optional String element to the current tag. If value is null, nothing is added.- Parameters:
tagName
- The name of the tagvalue
- The value for this tagattributes
- A Properties file containing the attributes (or null)
-
addOptional
public void addOptional(String tagName, @Nullable String value)
Add an optional String element to the current tag. If value is null, nothing is added.- Parameters:
tagName
- The name of the tagvalue
- The value for this tag
-
addOptional
public void addOptional(String tagName, @Nullable Boolean value, @Nullable Properties attributes)
Add an optional Boolean element to the current tag. If value is null, nothing is added.- Parameters:
tagName
- The name of the tagvalue
- The value for this tagattributes
- A Properties file containing the attributes (or null)
-
addOptional
public void addOptional(String tagName, @Nullable Boolean value)
Add an optional Boolean element to the current tag. If value is null, nothing is added.- Parameters:
tagName
- The name of the tagvalue
- The value for this tag
-
addEmptyElement
public void addEmptyElement(String tagName)
Add an empty element tag (e.g.) - Parameters:
tagName
- The name of the tag
-
addEmptyElement
public void addEmptyElement(String tagName, @Nullable Properties attributes)
Add an empty element tag (e.g.) - Parameters:
tagName
- The name of the tagattributes
- A Properties file containing the attributes (or null)
-
addComment
public void addComment(String comment)
-
addString
public void addString(String s)
-
setDefaultComment
public void setDefaultComment(String defaultComment)
-
addCDATA
public void addCDATA(String content)
Add a CDATA tag.
-
getStringBuffer
public IBuffer getStringBuffer()
- Returns:
- The StringBuffer used to create the document.
-
toXML
public String toXML()
- Returns:
- The String representation of the XML for this XMLStringBuffer.
-
getCurrentIndent
public String getCurrentIndent()
-
toWriter
public void toWriter(Writer fw)
-
-