Methods Summary |
---|
public void | close()Note that the underlying IndexReader is not closed, if
IndexSearcher was constructed with IndexSearcher(IndexReader r).
If the IndexReader was supplied implicitly by specifying a directory, then
the IndexReader gets closed.
if(closeReader)
reader.close();
|
public org.apache.lucene.document.Document | doc(int i)
return reader.document(i);
|
public int | docFreq(org.apache.lucene.index.Term term)
return reader.docFreq(term);
|
public org.apache.lucene.search.Explanation | explain(org.apache.lucene.search.Weight weight, int doc)
return weight.explain(reader, doc);
|
public org.apache.lucene.index.IndexReader | getIndexReader()Return the {@link IndexReader} this searches.
return reader;
|
public int | maxDoc()
return reader.maxDoc();
|
public org.apache.lucene.search.Query | rewrite(org.apache.lucene.search.Query original)
Query query = original;
for (Query rewrittenQuery = query.rewrite(reader); rewrittenQuery != query;
rewrittenQuery = query.rewrite(reader)) {
query = rewrittenQuery;
}
return query;
|
public org.apache.lucene.search.TopDocs | search(org.apache.lucene.search.Weight weight, org.apache.lucene.search.Filter filter, int nDocs)
if (nDocs <= 0) // null might be returned from hq.top() below.
throw new IllegalArgumentException("nDocs must be > 0");
TopDocCollector collector = new TopDocCollector(nDocs);
search(weight, filter, collector);
return collector.topDocs();
|
public org.apache.lucene.search.TopFieldDocs | search(org.apache.lucene.search.Weight weight, org.apache.lucene.search.Filter filter, int nDocs, org.apache.lucene.search.Sort sort)
TopFieldDocCollector collector =
new TopFieldDocCollector(reader, sort, nDocs);
search(weight, filter, collector);
return (TopFieldDocs)collector.topDocs();
|
public void | search(org.apache.lucene.search.Weight weight, org.apache.lucene.search.Filter filter, org.apache.lucene.search.HitCollector results)
HitCollector collector = results;
if (filter != null) {
final BitSet bits = filter.bits(reader);
collector = new HitCollector() {
public final void collect(int doc, float score) {
if (bits.get(doc)) { // skip docs not in bits
results.collect(doc, score);
}
}
};
}
Scorer scorer = weight.scorer(reader);
if (scorer == null)
return;
scorer.score(collector);
|