com.flat502.rox.utils
Class XmlPlainPrinter

java.lang.Object
  extended by com.flat502.rox.utils.XmlPlainPrinter
All Implemented Interfaces:
XmlPrinter

public class XmlPlainPrinter
extends java.lang.Object
implements XmlPrinter

An implementation of XmlPrinter that produces compact XML.

This implementation avoids uses line breaks and any indentation. As a result this implementation produces relatively efficient XML at the cost of readability.


Constructor Summary
XmlPlainPrinter(java.io.OutputStream out)
           
 
Method Summary
 void closeTag(java.lang.String name)
          Invoked when a tag is closed.
 void finishDocument()
          Invoked as the final call to an instance of this interface.
 void openTag(java.lang.String name)
          Invoked when a tag is opened.
 void writeHeader(java.lang.String version, java.nio.charset.Charset charSet)
          Invoked as the first method on an instance of this interface.
 void writeValue(java.lang.String value)
          Invoked when a value is being output.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XmlPlainPrinter

public XmlPlainPrinter(java.io.OutputStream out)
Method Detail

writeHeader

public void writeHeader(java.lang.String version,
                        java.nio.charset.Charset charSet)
                 throws java.io.IOException
Description copied from interface: XmlPrinter
Invoked as the first method on an instance of this interface.

Implementations should produce an appropriate XML header, ideally including the information provided.

Implementations are not required to act on this call until XmlPrinter.finishDocument() is invoked.

Specified by:
writeHeader in interface XmlPrinter
Parameters:
version - The XML version this document should comply with.
charSet - The character encoding this document is being encoded with.
Throws:
java.io.IOException

openTag

public void openTag(java.lang.String name)
             throws java.io.IOException
Description copied from interface: XmlPrinter
Invoked when a tag is opened.

Implementations are not required to act on this call until XmlPrinter.finishDocument() is invoked.

Specified by:
openTag in interface XmlPrinter
Parameters:
name - The name of the tag being opened.
Throws:
java.io.IOException

writeValue

public void writeValue(java.lang.String value)
                throws java.io.IOException
Description copied from interface: XmlPrinter
Invoked when a value is being output.

Implementations are not required to act on this call until XmlPrinter.finishDocument() is invoked.

Specified by:
writeValue in interface XmlPrinter
Parameters:
value - The value associated with the most recently opened tag.
Throws:
java.io.IOException

closeTag

public void closeTag(java.lang.String name)
              throws java.io.IOException
Description copied from interface: XmlPrinter
Invoked when a tag is closed.

Implementations are not required to act on this call until XmlPrinter.finishDocument() is invoked.

Specified by:
closeTag in interface XmlPrinter
Parameters:
name - The name of the tag being closed.
Throws:
java.io.IOException

finishDocument

public void finishDocument()
                    throws java.io.IOException
Description copied from interface: XmlPrinter
Invoked as the final call to an instance of this interface.

This gives implementations a chance to flush any cached information.

Specified by:
finishDocument in interface XmlPrinter
Throws:
java.io.IOException