com.jalios.jcms
Class QueryResultSet.ScoreComparator<T extends Publication>
java.lang.Object
com.jalios.jstore.BasicStorable.CdateComparator<T>
com.jalios.jcms.comparator.BasicComparator<T>
com.jalios.jcms.QueryResultSet.ScoreComparator<T>
- Type Parameters:
T
-
- All Implemented Interfaces:
- Comparator<T>
- Enclosing class:
- QueryResultSet
public static class QueryResultSet.ScoreComparator<T extends Publication>
- extends BasicComparator<T>
This Comparator
compares two Object
s using a score
retrieved from a map of Object
to float
.
If two Storable have the same score, a "parent" compararator is used, default
"parent" comparator is MdateComparator
.
Note: because a high score must be first, it behaves in the opposite
way of what Comparator
says see the
compare(Object, Object)
method.
- Since:
- jcms-5.5.0
- Version:
- $Revision: 48646 $
- Author:
- Olivier Jaquemet
Method Summary |
int |
compare(T o1,
T o2)
Compare two Object using their score from the QueryResulSet. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PARENT_COMPARATOR
public static final String PARENT_COMPARATOR
- See Also:
- Constant Field Values
QUERY_RESULT_SET
public static final String QUERY_RESULT_SET
- See Also:
- Constant Field Values
QueryResultSet.ScoreComparator
public QueryResultSet.ScoreComparator()
- Initialize a
ScoreComparator
from the contextual information
retrieved through ComparatorManager parameter
- A parent
Comparator
, is retrieved using attribute
PARENT_COMPARATOR
, if null, default with MdateComparator
.
- The
QueryResultSet
, is retrieved using attribute
QUERY_RESULT_SET
, must not be null.
- Throws:
IllegalArgumentException
- if QueryResultSet is null
QueryResultSet.ScoreComparator
public QueryResultSet.ScoreComparator(QueryResultSet resultSet,
Comparator parentComparator)
- Initialize a
ScoreComparator
using the given parent
Comparator
, if null, default with MdateComparator
.
- Parameters:
resultSet
- the QueryResultSet
from which to retrieve
score of each Publication
.parentComparator
- the Comparator
to use when score of
compared Object
are identical.
- Throws:
IllegalArgumentException
- if QueryResultSet is null
compare
public int compare(T o1,
T o2)
- Compare two Object using their score from the QueryResulSet.
If score are equals, use the parent Comparator.
- Specified by:
compare
in interface Comparator<T extends Publication>
- Overrides:
compare
in class BasicStorable.CdateComparator<T extends Publication>
- Returns:
- 1 when o1 has a lower score than o2, -1 when has o1 higher
score than o2 and returns parentComparator.compare value when
scores are equals.
Copyright © 2001-2010 Jalios SA. All Rights Reserved.