org.apache.lucene.search
Class TopFieldDocCollector
- java.lang.Object
-
- org.apache.lucene.search.HitCollector
-
- org.apache.lucene.search.TopDocCollector
-
- org.apache.lucene.search.TopFieldDocCollector
-
public class TopFieldDocCollector extends TopDocCollector
AHitCollectorimplementation that collects the top-sorting documents, returning them as aTopFieldDocs. This is used byIndexSearcherto implementTopFieldDocs-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
Constructors Constructor and Description TopFieldDocCollector(IndexReader reader, Sort sort, int numHits)Construct to collect a given number of hits.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidcollect(int doc, float score)Called once for every document matching a query, with the document number and its raw score.TopDocstopDocs()The top-scoring hits.-
Methods inherited from class org.apache.lucene.search.TopDocCollector
getTotalHits
-
-
-
-
Constructor Detail
-
TopFieldDocCollector
public TopFieldDocCollector(IndexReader reader, Sort sort, int numHits) throws java.io.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- Throws:
java.io.IOException
-
-
Method Detail
-
collect
public void collect(int doc, float score)Description copied from class:HitCollectorCalled 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)orIndexReader.document(int)on every document number encountered. Doing so can slow searches by an order of magnitude or more.Note: The
scorepassed 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:
collectin classTopDocCollector
-
topDocs
public TopDocs topDocs()
Description copied from class:TopDocCollectorThe top-scoring hits.- Overrides:
topDocsin classTopDocCollector
-
-
DataMelt 3.0 © DataMelt by jWork.ORG