Module org.apache.lucene.core
Package org.apache.lucene.search
Class MultiCollector.MultiLeafCollector
- java.lang.Object
-
- org.apache.lucene.search.MultiCollector.MultiLeafCollector
-
- All Implemented Interfaces:
LeafCollector
- Enclosing class:
- MultiCollector
private static class MultiCollector.MultiLeafCollector extends java.lang.Object implements LeafCollector
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
cacheScores
private LeafCollector[]
collectors
private float[]
minScores
private boolean
skipNonCompetitiveScores
-
Constructor Summary
Constructors Modifier Constructor Description private
MultiLeafCollector(java.util.List<LeafCollector> collectors, boolean cacheScores, boolean skipNonCompetitive)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private boolean
allCollectorsTerminated()
void
collect(int doc)
Called once for every document matching a query, with the unbased document number.void
finish()
Hook that gets called once the leaf that is associated with this collector has finished collecting successfully, including when aCollectionTerminatedException
is thrown.void
setScorer(Scorable scorer)
Called before successive calls toLeafCollector.collect(int)
.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.lucene.search.LeafCollector
collect, competitiveIterator
-
-
-
-
Field Detail
-
cacheScores
private final boolean cacheScores
-
collectors
private final LeafCollector[] collectors
-
minScores
private final float[] minScores
-
skipNonCompetitiveScores
private final boolean skipNonCompetitiveScores
-
-
Constructor Detail
-
MultiLeafCollector
private MultiLeafCollector(java.util.List<LeafCollector> collectors, boolean cacheScores, boolean skipNonCompetitive)
-
-
Method Detail
-
setScorer
public void setScorer(Scorable scorer) throws java.io.IOException
Description copied from interface:LeafCollector
Called before successive calls toLeafCollector.collect(int)
. Implementations that need the score of the current document (passed-in toLeafCollector.collect(int)
), should save the passed-in Scorer and call scorer.score() when needed.- Specified by:
setScorer
in interfaceLeafCollector
- Throws:
java.io.IOException
-
collect
public void collect(int doc) throws java.io.IOException
Description copied from interface:LeafCollector
Called once for every document matching a query, with the unbased document number.Note: The collection of the current segment can be terminated by throwing a
CollectionTerminatedException
. In this case, the last docs of the currentLeafReaderContext
will be skipped andIndexSearcher
will swallow the exception and continue collection with the next leaf.Note: This is called in an inner search loop. For good search performance, implementations of this method should not call
StoredFields.document(int)
on every hit. Doing so can slow searches by an order of magnitude or more.- Specified by:
collect
in interfaceLeafCollector
- Throws:
java.io.IOException
-
finish
public void finish() throws java.io.IOException
Description copied from interface:LeafCollector
Hook that gets called once the leaf that is associated with this collector has finished collecting successfully, including when aCollectionTerminatedException
is thrown. This is typically useful to compile data that has been collected on this leaf, e.g. to convert facet counts on leaf ordinals to facet counts on global ordinals. The default implementation does nothing.Note: It can be assumed that this method will only be called once per LeafCollector instance.
- Specified by:
finish
in interfaceLeafCollector
- Throws:
java.io.IOException
-
allCollectorsTerminated
private boolean allCollectorsTerminated()
-
-