| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.util.AbstractCollection<E>
java.util.AbstractSet<E>
java.util.HashSet<Publication>
com.jalios.jcms.QueryResultSet
public class QueryResultSet
This class holds results of a query. 
 It keeps tracks of all results (Publication) from a query and their scores.
| Nested Class Summary | |
|---|---|
| static class | QueryResultSet.ScoreComparator<T extends Publication>This Comparatorcompares twoObjects using a score
 retrieved from a map ofObjecttofloat. | 
| Field Summary | |
|---|---|
| static String | REVISION | 
| Constructor Summary | |
|---|---|
| QueryResultSet() | |
| Method Summary | |
|---|---|
|  boolean | add(Publication pub,
    float score)Adds the given Publicationand its score to thisQueryResultSet. | 
|  boolean | addAll(Collection<? extends Publication> coll)Overrides AbstractCollection.addAll(Collection)to call 
 whenaddAll(QueryResultSet)if the specified collection is 
 aQueryResultSet. | 
|  boolean | addAll(Collection<? extends Publication> coll,
       float score)Adds all the Publicationin the specified collection to thisQueryResultSet. | 
|  boolean | addAll(PageResult<Publication> pr)Adds the given PageResultto thisQueryResultSet. | 
|  boolean | addAll(QueryResultSet resultSet)Adds all the Publicationin the specified result Set to thisQueryResultSet. | 
|  void | clear()Clear all Object from this result set (also remove associated score). | 
|  SortedSet<Publication> | getAsSortedSet()Gets all the results contained in this QueryResultSetas
 aSortedSet(aTreeSet) using theScoreComparator. | 
|  SortedSet<Publication> | getAsSortedSet(Class<? extends Publication> typeClazz,
               String comparatorName,
               boolean reverse)Gets all the results contained in this QueryResultSetas
 aSortedSet(aTreeSet) retrieving the appropriateComparatorthroughComparatorManager. | 
|  SortedSet<Publication> | getAsSortedSet(Comparator comparator)Gets all the results contained in this QueryResultSetas
 aSortedSet(aTreeSet) using the givenComparatoror none if null. | 
|  SortedSet<Publication> | getAsSortedSet(String comparatorName,
               boolean reverse)Gets all the results contained in this QueryResultSetas
 aSortedSet(aTreeSet) retrieving the appropriateComparatorthroughComparatorManager. | 
|  Object | getAttribute(String name)Returns the value of the named attribute as an Object,
 ornullif no attribute of the given name exists. | 
|  Map<String,Object> | getAttributeMap()Returns a java.util.Map of the attributes of this results. | 
|  float | getMaxScore()Retrieve the maximum score value available in this QueryResultSet. | 
|  int | getResultSize() | 
|  float | getScore(Object obj)Deprecated. use getScore(Publication) | 
|  float | getScore(Publication pub)Retrieve score of the specified Publication. | 
| static Comparator | getScoreComparator(QueryResultSet resultSet,
                   Comparator parentComparator)Gets a new instance of a ScoreComparatorfor relevance
 sorting of the givenQueryResultSet. | 
|  PageResult.Status | getStatus() | 
|  int | getTotalSize()Returns the total size of this QueryResultSet(it may be much larger than getResultSize().size() with DB query). | 
|  boolean | isHybrid() | 
|  Iterator<Publication> | iterator()Overrides HashSet.iterator()to wrap the 
 nativeIteratorinstance returned by the Java API with 
 a custom one making sure the max score is updated on removal. | 
|  boolean | remove(Object o)Remove the given Object from this result set (also remove associated score). | 
|  Object | removeAttribute(String name)Removes an attribute from this result. | 
|  boolean | retainAll(Collection<?> coll)Overrides AbstractCollection.retainAll(Collection)to call 
 whenretainAll(QueryResultSet)if the specified collection is 
 aQueryResultSet. | 
|  boolean | retainAll(QueryResultSet resultSet)Retains only the elements in this QueryResultSetthat are contained in the
 specifiedQueryResultSet. | 
|  Object | setAttribute(String name,
             Object obj)Stores an attribute in this result. | 
|  void | setHybrid(boolean isHybrid) | 
|  void | setStatus(PageResult.Status status) | 
|  void | setTotalSize(int totalSize)Assigns the totla size of this QueryResultSet. | 
| Methods inherited from class java.util.HashSet | 
|---|
| add, clone, contains, isEmpty, size | 
| Methods inherited from class java.util.AbstractSet | 
|---|
| equals, hashCode, removeAll | 
| Methods inherited from class java.util.AbstractCollection | 
|---|
| containsAll, toArray, toArray, toString | 
| Methods inherited from class java.lang.Object | 
|---|
| finalize, getClass, notify, notifyAll, wait, wait, wait | 
| Methods inherited from interface java.util.Set | 
|---|
| containsAll, equals, hashCode, removeAll, toArray, toArray | 
| Field Detail | 
|---|
public static final String REVISION
| Constructor Detail | 
|---|
public QueryResultSet()
| Method Detail | 
|---|
public Object setAttribute(String name,
                           Object obj)
removeAttribute(java.lang.String).
name - a String specifying the name of the attributeobj - the Object to be stored
public Object removeAttribute(String name)
name - a String specifying
public Object getAttribute(String name)
Object,
 or null if no attribute of the given name exists.
name - a String specifying the name of the attribute
Object containing the value of the attribute,
         or null if the attribute does not existpublic Map<String,Object> getAttributeMap()
public boolean add(Publication pub,
                   float score)
Publication  and its score to this
 QueryResultSet. Object was already in this
 QueryResultSet for a given element, its score is replaced.
pub - the Publication to add.score - the new score of the Publication
public boolean addAll(Collection<? extends Publication> coll,
                      float score)
Publication in the specified collection to this
 QueryResultSet. Collection for a given element,
 its score is replaced.
coll - collection whose elements are to be added to this collection.score - the score of the Publication in the
        Collection (should be between 0.0f and 1.0f)
public boolean addAll(QueryResultSet resultSet)
Publication in the specified result Set to this
 QueryResultSet. Also puts all attribute of the specified
 QueryResultSet into this QueryResultSet.Publication was already in this QueryResultSet,
 it is replaced with its score in the given QueryResultSet.
resultSet - QueryResultSet whose elements are to be added to this QueryResultSet.
public boolean retainAll(QueryResultSet resultSet)
QueryResultSet that are contained in the
 specified QueryResultSet.  In other words, removes
 from this QueryResultSet all of its elements that are not contained in the
 specified QueryResultSet. 
 
 Also updates scores of elements kept in this QueryResultSet if their 
 existing score are below the score of the specified QueryResultSet.
resultSet - elements to be retained in this collection.
QueryResultSet changed as a result of the call.public Iterator<Publication> iterator()
HashSet.iterator() to wrap the 
 native Iterator instance returned by the Java API with 
 a custom one making sure the max score is updated on removal.
 Needed for bug fix JCMS-3368.
iterator in interface Iterable<Publication>iterator in interface Collection<Publication>iterator in interface Set<Publication>iterator in class HashSet<Publication>HashSet.iterator()public boolean addAll(Collection<? extends Publication> coll)
AbstractCollection.addAll(Collection) to call 
 when addAll(QueryResultSet) if the specified collection is 
 a QueryResultSet.
addAll in interface Collection<Publication>addAll in interface Set<Publication>addAll in class AbstractCollection<Publication>addAll(QueryResultSet), 
AbstractCollection.addAll(Collection)public boolean retainAll(Collection<?> coll)
AbstractCollection.retainAll(Collection) to call 
 when retainAll(QueryResultSet) if the specified collection is 
 a QueryResultSet.
retainAll in interface Collection<Publication>retainAll in interface Set<Publication>retainAll in class AbstractCollection<Publication>retainAll(QueryResultSet), 
AbstractCollection.retainAll(Collection)public boolean addAll(PageResult<Publication> pr)
PageResult to this QueryResultSet.
pr - the PageResult
true if this QueryResultSet changed as a result of the call.public boolean remove(Object o)
remove in interface Collection<Publication>remove in interface Set<Publication>remove in class HashSet<Publication>HashSet.remove(java.lang.Object)public void clear()
clear in interface Collection<Publication>clear in interface Set<Publication>clear in class HashSet<Publication>HashSet.clear()@Deprecated public float getScore(Object obj)
getScore(Publication)
Object (a Publication).
obj - the Object (a Publication)
        from which to retrieve the score.
obj or 0.0f
         if no score is available for this Object.public float getScore(Publication pub)
Publication.
pub - the Publication
        from which to retrieve the score.
obj or 0.0f
         if no score is available for this Publication.public float getMaxScore()
QueryResultSet.
public SortedSet<Publication> getAsSortedSet()
QueryResultSet as
 a SortedSet (a TreeSet) using the
 ScoreComparator.
 Because this method sort all the result in a new TreeSet,
 this method is expensive, be careful when using it.
SortedSet (a TreeSet)
         using ScoreComparator.QueryResultSet.ScoreComparatorpublic SortedSet<Publication> getAsSortedSet(Comparator comparator)
QueryResultSet as
 a SortedSet (a TreeSet) using the given
 Comparator or none if null.
 Because this method sort all the result in a new TreeSet,
 this method is expensive, be careful when using it.
comparator - the Comparator to use in the
        SortedSet, can be null to sort using natural order.
SortedSet (a TreeSet)
         using ScoreComparator.QueryResultSet.ScoreComparator
public SortedSet<Publication> getAsSortedSet(String comparatorName,
                                             boolean reverse)
QueryResultSet as
 a SortedSet (a TreeSet) retrieving the appropriate
 Comparator through ComparatorManager.
 Because this method sort all the result in a new TreeSet,
 this method is expensive, be careful when using it.
comparatorName - the name of the Comparator to use in the
        SortedSet, as available through ComparatorManager.reverse - a boolean indicating whether the comparator should have
        its behavior reversed (true) or unchanged (false)
SortedSet
public SortedSet<Publication> getAsSortedSet(Class<? extends Publication> typeClazz,
                                             String comparatorName,
                                             boolean reverse)
QueryResultSet as
 a SortedSet (a TreeSet) retrieving the appropriate
 Comparator through ComparatorManager.
 Because this method sort all the result in a new TreeSet,
 this method is expensive, be careful when using it.
typeClazz - the Class of Publication to sortcomparatorName - the name of the Comparator to use in the
        SortedSet, as available through ComparatorManager.reverse - a boolean indicating whether the comparator should have
        its behavior reversed (true) or unchanged (false)
SortedSet
public static Comparator getScoreComparator(QueryResultSet resultSet,
                                            Comparator parentComparator)
ScoreComparator for relevance
 sorting of the given QueryResultSet.
resultSet - the QueryResultSet from which to retrieve 
        score of each Publication.parentComparator - the Comparator to use when score of
        compared Object are identical.
ScoreComparator using the given parent Comparator.QueryResultSet.ScoreComparatorpublic int getTotalSize()
QueryResultSet (it may be much larger than getResultSize().size() with DB query).
QueryResultSet.public void setTotalSize(int totalSize)
QueryResultSet.
totalSize - the new total size.public int getResultSize()
public boolean isHybrid()
public void setHybrid(boolean isHybrid)
public void setStatus(PageResult.Status status)
public PageResult.Status getStatus()
| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||