org.apache.lucene.search
Class TopFieldDocCollector

java.lang.Object
  extended by org.apache.lucene.search.HitCollector
      extended by org.apache.lucene.search.TopDocCollector
          extended by org.apache.lucene.search.TopFieldDocCollector

Deprecated. Please use TopFieldCollector instead.

public class TopFieldDocCollector
extends TopDocCollector

A HitCollector implementation that collects the top-sorting documents, returning them as a TopFieldDocs. This is used by IndexSearcher to implement TopFieldDocs-based search.

This may be extended, overriding the collect method to, e.g., conditionally invoke super() in order to filter which documents are collected.


Field Summary
 
Fields inherited from class org.apache.lucene.search.TopDocCollector
hq, totalHits
 
Constructor Summary
TopFieldDocCollector(IndexReader reader, Sort sort, int numHits)
          Deprecated. Construct to collect a given number of hits.
 
Method Summary
 void collect(int doc, float score)
          Deprecated. Called once for every document matching a query, with the document number and its raw score.
 TopDocs topDocs()
          Deprecated. The top-scoring hits.
 
Methods inherited from class org.apache.lucene.search.TopDocCollector
getTotalHits
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TopFieldDocCollector

public TopFieldDocCollector(IndexReader reader,
                            Sort sort,
                            int numHits)
                     throws IOException
Deprecated. 
Construct to collect a given number of hits.

Parameters:
reader - the index to be searched
sort - the sort criteria
numHits - the maximum number of hits to collect
Throws:
IOException
Method Detail

collect

public void collect(int doc,
                    float score)
Deprecated. 
Description copied from class: HitCollector
Called once for every document matching a query, with the document number and its raw score.

If, for example, an application wished to collect all of the hits for a query in a BitSet, then it might:

   Searcher searcher = new IndexSearcher(indexReader);
   final BitSet bits = new BitSet(indexReader.maxDoc());
   searcher.search(query, new HitCollector() {
       public void collect(int doc, float score) {
         bits.set(doc);
       }
     });
 

Note: This is called in an inner search loop. For good search performance, implementations of this method should not call Searcher.doc(int) or IndexReader.document(int) on every document number encountered. Doing so can slow searches by an order of magnitude or more.

Note: The score passed to this method is a raw score. In other words, the score will not necessarily be a float whose value is between 0 and 1.

Overrides:
collect in class TopDocCollector

topDocs

public TopDocs topDocs()
Deprecated. 
Description copied from class: TopDocCollector
The top-scoring hits.

Overrides:
topDocs in class TopDocCollector


Copyright © 2000-2010 Apache Software Foundation. All Rights Reserved.