rat.report.xml.writer
Interface IXmlWriter

All Known Implementing Classes:
XmlWriter

public interface IXmlWriter

Simple interface for creating basic xml documents. Performs basic validation and escaping. Not namespace aware (may reconsider this later).


Method Summary
 IXmlWriter attribute(CharSequence name, CharSequence value)
          Writes an attribute of an element.
 IXmlWriter closeDocument()
          Closes all pending elements.
 IXmlWriter closeElement()
          Closes the last element written.
 IXmlWriter content(CharSequence content)
          Writes content.
 IXmlWriter openElement(CharSequence elementName)
          Writes the start of an element.
 IXmlWriter startDocument()
          Starts a document by writing a prolog.
 

Method Detail

startDocument

IXmlWriter startDocument()
                         throws IOException
Starts a document by writing a prolog. Calling this method is optional. When writing a document fragment, it should not be called.

Returns:
this object
Throws:
OperationNotAllowedException - if called after the first element has been written or once a prolog has already been written
IOException

openElement

IXmlWriter openElement(CharSequence elementName)
                       throws IOException
Writes the start of an element.

Parameters:
elementName - the name of the element, not null
Returns:
this object
Throws:
InvalidXmlException - if the name is not valid for an xml element
OperationNotAllowedException - if called after the first element has been closed
IOException

attribute

IXmlWriter attribute(CharSequence name,
                     CharSequence value)
                     throws IOException
Writes an attribute of an element. Note that this is only allowed directly after openElement(CharSequence) or attribute(java.lang.CharSequence, java.lang.CharSequence).

Parameters:
name - the attribute name, not null
value - the attribute value, not null
Returns:
this object
Throws:
InvalidXmlException - if the name is not valid for an xml attribute or if a value for the attribute has already been written
OperationNotAllowedException - if called after content(java.lang.CharSequence) or #closeElement() or before any call to {@link #openElement}
IOException

content

IXmlWriter content(CharSequence content)
                   throws IOException
Writes content. Calling this method will automatically Note that this method does not use CDATA.

Parameters:
content - the content to write
Returns:
this object
Throws:
OperationNotAllowedException - if called before any call to openElement(java.lang.CharSequence) or after the first element has been closed
IOException

closeElement

IXmlWriter closeElement()
                        throws IOException
Closes the last element written.

Returns:
this object
Throws:
OperationNotAllowedException - if called before any call to openElement(java.lang.CharSequence) or after the first element has been closed
IOException

closeDocument

IXmlWriter closeDocument()
                         throws IOException
Closes all pending elements. When appropriate, resources are also flushed and closed. No exception is raised when called upon a document whose root element has already been closed.

Returns:
this object
Throws:
OperationNotAllowedException - if called before any call to openElement(java.lang.CharSequence)
IOException


Copyright © 2006-2011. All Rights Reserved.