You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@lucene.apache.org by do...@apache.org on 2008/09/04 01:18:51 UTC

svn commit: r691824 - in /lucene/java/trunk: CHANGES.txt src/java/org/apache/lucene/search/TopDocCollector.java src/java/org/apache/lucene/search/TopFieldDocCollector.java

Author: doronc
Date: Wed Sep  3 16:18:51 2008
New Revision: 691824

URL: http://svn.apache.org/viewvc?rev=691824&view=rev
Log:
LUCENE-1356: Allow easy extensions of TopDocCollector.

Modified:
    lucene/java/trunk/CHANGES.txt
    lucene/java/trunk/src/java/org/apache/lucene/search/TopDocCollector.java
    lucene/java/trunk/src/java/org/apache/lucene/search/TopFieldDocCollector.java

Modified: lucene/java/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/java/trunk/CHANGES.txt?rev=691824&r1=691823&r2=691824&view=diff
==============================================================================
--- lucene/java/trunk/CHANGES.txt (original)
+++ lucene/java/trunk/CHANGES.txt Wed Sep  3 16:18:51 2008
@@ -140,6 +140,10 @@
 
 22. LUCENE-1371: Added convenience method TopDocs Searcher.search(Query query, int n).
     (Mike McCandless)
+    
+23. LUCENE-1356: Allow easy extensions of TopDocCollector by turning
+    constructor and fields from package to protected. (Shai Erera
+    via Doron Cohen) 
 
 Bug fixes
     

Modified: lucene/java/trunk/src/java/org/apache/lucene/search/TopDocCollector.java
URL: http://svn.apache.org/viewvc/lucene/java/trunk/src/java/org/apache/lucene/search/TopDocCollector.java?rev=691824&r1=691823&r2=691824&view=diff
==============================================================================
--- lucene/java/trunk/src/java/org/apache/lucene/search/TopDocCollector.java (original)
+++ lucene/java/trunk/src/java/org/apache/lucene/search/TopDocCollector.java Wed Sep  3 16:18:51 2008
@@ -30,21 +30,34 @@
 public class TopDocCollector extends HitCollector {
 
   private ScoreDoc reusableSD;
-
-  int totalHits;
-  PriorityQueue hq;
+  
+  /** The total number of hits the collector encountered. */
+  protected int totalHits;
+  
+  /** The priority queue which holds the top-scoring documents. */
+  protected PriorityQueue hq;
     
   /** Construct to collect a given number of hits.
    * @param numHits the maximum number of hits to collect
    */
   public TopDocCollector(int numHits) {
-    this(numHits, new HitQueue(numHits));
+    this(new HitQueue(numHits));
   }
 
+  /** @deprecated use TopDocCollector(hq) instead. numHits is not used by this
+   * constructor. It will be removed in a future release.
+   */
   TopDocCollector(int numHits, PriorityQueue hq) {
     this.hq = hq;
   }
 
+  /** Constructor to collect the top-scoring documents by using the given PQ.
+   * @hq the PQ to use by this instance.
+   */
+  protected TopDocCollector(PriorityQueue hq) {
+    this.hq = hq;
+  }
+
   // javadoc inherited
   public void collect(int doc, float score) {
     if (score > 0.0f) {

Modified: lucene/java/trunk/src/java/org/apache/lucene/search/TopFieldDocCollector.java
URL: http://svn.apache.org/viewvc/lucene/java/trunk/src/java/org/apache/lucene/search/TopFieldDocCollector.java?rev=691824&r1=691823&r2=691824&view=diff
==============================================================================
--- lucene/java/trunk/src/java/org/apache/lucene/search/TopFieldDocCollector.java (original)
+++ lucene/java/trunk/src/java/org/apache/lucene/search/TopFieldDocCollector.java Wed Sep  3 16:18:51 2008
@@ -40,7 +40,7 @@
    */
   public TopFieldDocCollector(IndexReader reader, Sort sort, int numHits)
     throws IOException {
-    super(numHits, new FieldSortedHitQueue(reader, sort.fields, numHits));
+    super(new FieldSortedHitQueue(reader, sort.fields, numHits));
   }
 
   // javadoc inherited