TopFieldCollector instead.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.
hq, totalHits| Constructor and Description |
|---|
TopFieldDocCollector(IndexReader reader,
Sort sort,
int numHits)
Deprecated.
Construct to collect a given number of hits.
|
| Modifier and Type | Method and Description |
|---|---|
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.
|
getTotalHitspublic TopFieldDocCollector(IndexReader reader, Sort sort, int numHits) throws java.io.IOException
reader - the index to be searchedsort - the sort criterianumHits - the maximum number of hits to collectjava.io.IOExceptionpublic void collect(int doc,
float score)
HitCollectorIf, 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.
collect in class TopDocCollectorpublic TopDocs topDocs()
TopDocCollectortopDocs in class TopDocCollectorCopyright © 2000-2016 Apache Software Foundation. All Rights Reserved.