|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object blackboard.base.BaseComparator
public abstract class BaseComparator
Base comparator class that implements ascending/descending and chaining. Comparators may be chained together in a linked list to support a succession of orderings.
Field Summary | |
---|---|
static boolean |
ASCENDING
ASCENDING constant for use in this class's constructor. |
static boolean |
DESCENDING
DESCENDING constant for use in this class's constructor. |
Constructor Summary | |
---|---|
protected |
BaseComparator(boolean ascending)
Constructor. |
Method Summary | |
---|---|
void |
appendSecondaryComparator(java.util.Comparator comparator)
Appends the provided Comparator to the end of this linked list of comparators. |
int |
compare(java.lang.Object o1,
java.lang.Object o2)
Applies the lined list of comparators to resolve the objects relationship. |
static BaseComparator |
convertToBaseComparator(java.util.Comparator comparator)
Wraps any comparator in an instance of BaseComparator that proxies through to the supplied comparator. |
protected abstract int |
doCompare(java.lang.Object o1,
java.lang.Object o2)
Subclasses must override this method to provide functionality. |
boolean |
isAscending()
Returns true if this comparator has been set to compare objects in ascending order. |
void |
setAscending(boolean ascending)
Sets this comparators ascending/descending mode. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface java.util.Comparator |
---|
equals |
Field Detail |
---|
public static final boolean ASCENDING
public static final boolean DESCENDING
Constructor Detail |
---|
protected BaseComparator(boolean ascending)
ascending
- Provides a generic way to reverse the ordering without having to implement
an additional comparator class. An object's natural ordering is by definition
ascending.Method Detail |
---|
public final boolean isAscending()
public final void setAscending(boolean ascending)
comparator.setAscending( !comparator.isAscending() );
public final void appendSecondaryComparator(java.util.Comparator comparator)
public final int compare(java.lang.Object o1, java.lang.Object o2) throws java.lang.ClassCastException, java.lang.IllegalArgumentException
compare
in interface java.util.Comparator
java.lang.ClassCastException
java.lang.IllegalArgumentException
protected abstract int doCompare(java.lang.Object o1, java.lang.Object o2) throws java.lang.ClassCastException, java.lang.IllegalArgumentException
java.lang.ClassCastException
java.lang.IllegalArgumentException
public static BaseComparator convertToBaseComparator(java.util.Comparator comparator)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |