public class GenericAtomicComparer extends Object implements AtomicComparer, Comparator, Serializable
| Constructor and Description |
|---|
GenericAtomicComparer(Comparator collator,
Configuration config) |
GenericAtomicComparer(Comparator collator,
XPathContext conversion)
Create an GenericAtomicComparer
|
| Modifier and Type | Method and Description |
|---|---|
int |
compare(Object a,
Object b)
Compare two AtomicValue objects according to the rules for their data type.
|
boolean |
comparesEqual(AtomicValue a,
AtomicValue b)
Compare two AtomicValue objects for equality according to the rules for their data type.
|
ComparisonKey |
getComparisonKey(AtomicValue a)
Get a comparison key for an object.
|
static AtomicComparer |
makeAtomicComparer(int type0,
int type1,
Comparator collator,
Configuration config)
Factory method to make a GenericAtomicComparer for values of known types
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcomparing, comparing, comparingDouble, comparingInt, comparingLong, equals, naturalOrder, nullsFirst, nullsLast, reversed, reverseOrder, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLongpublic GenericAtomicComparer(Comparator collator, XPathContext conversion)
collator - the collation to be usedconversion - a context, used when converting untyped atomic values to the target type.public GenericAtomicComparer(Comparator collator, Configuration config)
public static AtomicComparer makeAtomicComparer(int type0, int type1, Comparator collator, Configuration config)
type0 - primitive type of the first operandtype1 - primitive type of the second operandcollator - the collation to be used, if anyconfig - the configurationpublic int compare(Object a, Object b)
compare in interface Comparatorcompare in interface AtomicComparera - the first object to be compared. It is intended that this should be an instance
of AtomicValue, though this restriction is not enforced. If it is a StringValue, the
collator is used to compare the values, otherwise the value must implement the java.util.Comparable
interface.b - the second object to be compared. This must be comparable with the first object: for
example, if one is a string, they must both be strings.ClassCastException - if the objects are not comparablepublic boolean comparesEqual(AtomicValue a, AtomicValue b)
comparesEqual in interface AtomicComparera - the first object to be compared. It is intended that this should be an instance
of AtomicValue, though this restriction is not enforced. If it is a StringValue, the
collator is used to compare the values, otherwise the value must implement the equals() method.b - the second object to be compared. This must be comparable with the first object: for
example, if one is a string, they must both be strings.ClassCastException - if the objects are not comparablepublic ComparisonKey getComparisonKey(AtomicValue a)
getComparisonKey in interface AtomicComparer