com.topologi.diffx.event.impl
Class XMLBranchEvent

java.lang.Object
  extended by com.topologi.diffx.event.impl.XMLBranchEvent
All Implemented Interfaces:
DiffXEvent, XMLFormattable, XMLWritable

public final class XMLBranchEvent
extends Object
implements DiffXEvent

A branch of XML data.

A branch of XML data must start and end with the same element.

Implementation note: this class wraps an array of DiffX events and does not give access to this array, so it can be considered immutable.

Version:
27 March 2010
Author:
Christophe Lauret

Constructor Summary
XMLBranchEvent(DiffXEvent[] events)
          Creates a new XML branch.
 
Method Summary
 boolean equals(DiffXEvent e)
          Returns true if the diffX events in the branch are all equal.
 boolean equals(Object o)
          Invokes the DiffXEvent.equals(DiffXEvent) method if the specified object if not null and is an instance of DiffXEvent.
 int getWeight()
          Returns the weight of this event.
 int hashCode()
          
 void setWeight(int weight)
          Sets the weight of this event.
 String toXML()
          Returns a xml representation of the object of the implementing class.
 StringBuffer toXML(StringBuffer xml)
          Appends the XML representation of the object of the implementing class.
 void toXML(XMLWriter xml)
          Write the DiffX events in order.
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.topologi.diffx.event.DiffXEvent
getWeight, setWeight
 
Methods inherited from interface com.topologi.diffx.xml.XMLFormattable
toXML
 

Constructor Detail

XMLBranchEvent

public XMLBranchEvent(DiffXEvent[] events)
Creates a new XML branch.

Parameters:
events - The array of events that make up the branch.
Method Detail

hashCode

public int hashCode()


equals

public boolean equals(DiffXEvent e)
Returns true if the diffX events in the branch are all equal. Indicates whether the specified event is equal to this event.

Specified by:
equals in interface DiffXEvent
Parameters:
e - The event to compare it with thsi one.
Returns:
true if considered equals; false otherwise.

toXML

public void toXML(XMLWriter xml)
           throws IOException
Write the DiffX events in order. Writes the XML representation of the implementing instance using the specified XMLWriter.

Specified by:
toXML in interface XMLWritable
Parameters:
xml - The XMLWriter to use.
Throws:
IOException - IF an I/O exception occurs whilst writing.

toXML

public StringBuffer toXML(StringBuffer xml)
                   throws NullPointerException
Description copied from interface: XMLFormattable
Appends the XML representation of the object of the implementing class.

Implementations must ensure that the returned string buffer is the same object as the specified string buffer.

Specified by:
toXML in interface XMLFormattable
Parameters:
xml - The string buffer to which the XML representation is appended to.
Returns:
The modified string buffer.
Throws:
NullPointerException - if the specified character sequence is null.

equals

public final boolean equals(Object o)
Invokes the DiffXEvent.equals(DiffXEvent) method if the specified object if not null and is an instance of DiffXEvent.

Overrides:
equals in class Object
Parameters:
o - The object to compare.
Returns:
true if the specified object is equal; false otherwise.

toXML

public String toXML()
Description copied from interface: XMLFormattable

Returns a xml representation of the object of the implementing class.

Most implementation should use the following code to ensure consistent data with the other toXML method:

return this.toXML(new StringBuffer()).toString();

Specified by:
toXML in interface XMLFormattable
Returns:
a XML representation of the object of the implementing class.

getWeight

public int getWeight()
Description copied from interface: DiffXEvent
Returns the weight of this event.

The default weight should be 1.

Specified by:
getWeight in interface DiffXEvent
Returns:
The weight of this event.

setWeight

public void setWeight(int weight)
Description copied from interface: DiffXEvent
Sets the weight of this event.

This method is intended for use by algorithms, optimisers and loaders in order to adjust the importance of an event.

Specified by:
setWeight in interface DiffXEvent
Parameters:
weight - The weight of this event.