Prev Class | Next Class | Frames | No Frames |
Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
java.lang.Object
org.apache.lucene.search.HitCollector
org.apache.lucene.search.TopDocCollector
org.apache.lucene.search.TopFieldDocCollector
public class TopFieldDocCollector
extends TopDocCollector
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.
Constructor Summary | |
|
Method Summary | |
void |
|
TopDocs |
|
Methods inherited from class org.apache.lucene.search.TopDocCollector | |
collect , getTotalHits , topDocs |
Methods inherited from class org.apache.lucene.search.HitCollector | |
collect |
public TopFieldDocCollector(IndexReader reader, Sort sort, int numHits) throws IOException
Construct to collect a given number of hits.
- Parameters:
reader
- the index to be searchedsort
- the sort criterianumHits
- the maximum number of hits to collect
public void collect(int doc, float score)
Called once for every non-zero scoring document, with the document number and its 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 callSearcher.doc(int)
orIndexReader.document(int)
on every document number encountered. Doing so can slow searches by an order of magnitude or more. Note: Thescore
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 interface TopDocCollector