|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.topologi.diffx.algorithm.GuanoAlgorithm
public final class GuanoAlgorithm
A matrix-based algorithm using weighted events which produces correct results, but may require minor adjustments during formatting.
Implementation note: this algorithm effectively detects the correct changes in the sequences, but will not necessarily return events that can be serialised as well-formed XML as they stand.
Known problem in this implementation: elements that contain themselves tend to generate events that are harder to serialise as XML.
This class is said 'fit' because it will adapt the matrix to the sequences that it is being given in order to improve performance.
Note: The name of this class comes from a contracted version of the features of this algorithm, as explained below:
Constructor Summary | |
---|---|
GuanoAlgorithm(EventSequence seq0,
EventSequence seq1)
Creates a new DiffXAlgorithmBase. |
Method Summary | |
---|---|
EventSequence |
getFirstSequence()
Returns the first sequence used for the diff-x comparison. |
EventSequence |
getSecondSequence()
Returns the second sequence used for the diff-x comparison. |
int |
length()
Returns the length of the longest common sequence. |
void |
process(DiffXFormatter formatter)
Writes the diff sequence using the specified formatter. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public GuanoAlgorithm(EventSequence seq0, EventSequence seq1)
seq0
- The first sequence to compare.seq1
- The second sequence to compare.Method Detail |
---|
public int length()
length
in interface DiffXAlgorithm
public void process(DiffXFormatter formatter) throws IOException
process
in interface DiffXAlgorithm
formatter
- The formatter that will handle the output.
IOException
- If thrown by the formatter.public final EventSequence getFirstSequence()
DiffXAlgorithm
getFirstSequence
in interface DiffXAlgorithm
DiffXAlgorithm.getFirstSequence()
public final EventSequence getSecondSequence()
DiffXAlgorithm
getSecondSequence
in interface DiffXAlgorithm
DiffXAlgorithm.getSecondSequence()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |