com.topologi.diffx.format
Class StrictXMLFormatter

java.lang.Object
  extended bycom.topologi.diffx.format.StrictXMLFormatter
All Implemented Interfaces:
DiffXFormatter, XMLDiffXFormatter

public final class StrictXMLFormatter
extends Object
implements XMLDiffXFormatter

A simple XML formatter that writes strictly what it is given.

This formatter will write the events exactly in the order in which they are given, in other words, there is no way to prevent this class from writing malformed XML. On other hand, the SmartXMLFormatter will close XML elements automatically, therefore rectifying a lot of the errors that lead to malformed XML.

Version:
3 April 2005
Author:
Christophe Lauret

Constructor Summary
StrictXMLFormatter()
          Creates a new formatter on the standard output.
StrictXMLFormatter(Writer w)
          Creates a new formatter using the specified writer.
 
Method Summary
 void delete(DiffXEvent e)
          Formats the specified deleted event.
 void format(DiffXEvent e)
          Formats the specified event.
 void insert(DiffXEvent e)
          Formats the specified inserted event.
 void setConfig(DiffXConfig config)
          Sets the configuration to use with this formatter.
 void setDeleteTags(String start, String end)
          Sets the open and end tags for deleted text.
 void setInsertTags(String start, String end)
          Sets the open and end tags for inserted text.
 void setWriteXMLDeclaration(boolean show)
          Set whether the formatter should include the XML declaration or not.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StrictXMLFormatter

public StrictXMLFormatter()
Creates a new formatter on the standard output.


StrictXMLFormatter

public StrictXMLFormatter(Writer w)
Creates a new formatter using the specified writer.

Parameters:
w - The writer to use.
Method Detail

format

public void format(DiffXEvent e)
            throws IOException
Description copied from interface: DiffXFormatter
Formats the specified event.

Specified by:
format in interface DiffXFormatter
Parameters:
e - The event to format
Throws:
IOException - Should an I/O exception occurs whilst formatting.
See Also:
DiffXFormatter.format(DiffXEvent)

insert

public void insert(DiffXEvent e)
            throws IOException
Description copied from interface: DiffXFormatter
Formats the specified inserted event.

Specified by:
insert in interface DiffXFormatter
Parameters:
e - The event to format
Throws:
IOException - Should an I/O exception occurs whilst formatting.
See Also:
DiffXFormatter.insert(DiffXEvent)

delete

public void delete(DiffXEvent e)
            throws IOException,
                   IllegalStateException
Description copied from interface: DiffXFormatter
Formats the specified deleted event.

Specified by:
delete in interface DiffXFormatter
Parameters:
e - The event to format
Throws:
IOException - Should an I/O exception occurs whilst formatting.
IllegalStateException - If the formatter is not in a state to run this method.
See Also:
DiffXFormatter.delete(DiffXEvent)

setInsertTags

public void setInsertTags(String start,
                          String end)
                   throws NullPointerException
Sets the open and end tags for inserted text.

The default values are "<ins:>" and "</ins:>" respectively.

Parameters:
start - The open tag for inserts.
end - The close tag for inserts.
Throws:
NullPointerException - If any of the tags is null.

setDeleteTags

public void setDeleteTags(String start,
                          String end)
                   throws NullPointerException
Sets the open and end tags for deleted text.

The default values are "<del:>" and "</del:>" respectively.

Parameters:
start - The open tag for deletions.
end - The close tag for deletions.
Throws:
NullPointerException - If any of the tags is null.

setConfig

public void setConfig(DiffXConfig config)
Description copied from interface: DiffXFormatter
Sets the configuration to use with this formatter.

Specified by:
setConfig in interface DiffXFormatter
Parameters:
config - The configuration to use.
See Also:
com.topologi.diffx.format.DiffXFormatter#setConfig(com.topologi.diffx.DiffXConfig)

setWriteXMLDeclaration

public void setWriteXMLDeclaration(boolean show)
Description copied from interface: XMLDiffXFormatter
Set whether the formatter should include the XML declaration or not.

Specified by:
setWriteXMLDeclaration in interface XMLDiffXFormatter
Parameters:
show - true to get the formatter to write the XML declaration; false otherwise.
See Also:
XMLDiffXFormatter.setWriteXMLDeclaration(boolean)