org.apache.lucene.search

Class HitCollector

public abstract class HitCollector extends Object

Lower-level search API.

Version: $Id: HitCollector.java,v 1.6 2004/03/29 22:48:03 cutting Exp $

See Also: search

Method Summary
abstract voidcollect(int doc, float score)
Called once for every non-zero scoring document, with the document number and its score.

Method Detail

collect

public abstract 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 call {@link Searcher#doc(int)} or {@link org.apache.lucene.index.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.

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