Class NodeComparator

java.lang.Object
org.dom4j.util.NodeComparator
All Implemented Interfaces:
Comparator

public class NodeComparator extends Object implements Comparator

NodeComparator is a Comparatorof Node instances which is capable of comparing Nodes for equality based on their values.

Version:
$Revision: 1.10 $
Author:
James Strachan
  • Constructor Details

    • NodeComparator

      public NodeComparator()
  • Method Details

    • compare

      public int compare(Object o1, Object o2)
      Compares its two arguments for order. Returns a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.

      The implementor must ensure that sgn(compare(x, y)) == -sgn(compare(y, x)) for all x and y. (This implies that compare(x, y) must throw an exception if and only if compare(y, x) throws an exception.)

      The implementor must also ensure that the relation is transitive: ((compare(x, y)>0) && (compare(y, z)>0)) implies compare(x, z)>0.

      Finally, the implementer must ensure that compare(x, y)==0 implies that sgn(compare(x, z))==sgn(compare(y, z)) for all z.

      It is generally the case, but not strictly required that (compare(x, y)==0) == (x.equals(y)). Generally speaking, any comparator that violates this condition should clearly indicate this fact. The recommended language is "Note: this comparator imposes orderings that are inconsistent with equals."

      Specified by:
      compare in interface Comparator
      Parameters:
      o1 - the first object to be compared.
      o2 - the second object to be compared.
      Returns:
      a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.
    • compare

      public int compare(Node n1, Node n2)
    • compare

      public int compare(Document n1, Document n2)
    • compare

      public int compare(Element n1, Element n2)
    • compare

      public int compare(Attribute n1, Attribute n2)
    • compare

      public int compare(QName n1, QName n2)
    • compare

      public int compare(Namespace n1, Namespace n2)
    • compare

      public int compare(CharacterData t1, CharacterData t2)
    • compare

      public int compare(DocumentType o1, DocumentType o2)
    • compare

      public int compare(Entity n1, Entity n2)
    • compare

      public int compare(ProcessingInstruction n1, ProcessingInstruction n2)
    • compareContent

      public int compareContent(Branch b1, Branch b2)
    • compare

      public int compare(String o1, String o2)