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
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final boolean
private final LeafCollector[]
private final float[]
private final boolean
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
MultiLeafCollector
(List<LeafCollector> collectors, boolean cacheScores, boolean skipNonCompetitive) -
Method Summary
Modifier and TypeMethodDescriptionprivate boolean
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
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 Details
-
cacheScores
private final boolean cacheScores -
collectors
-
minScores
private final float[] minScores -
skipNonCompetitiveScores
private final boolean skipNonCompetitiveScores
-
-
Constructor Details
-
MultiLeafCollector
private MultiLeafCollector(List<LeafCollector> collectors, boolean cacheScores, boolean skipNonCompetitive)
-
-
Method Details
-
setScorer
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:
IOException
-
collect
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:
IOException
-
finish
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:
IOException
-
allCollectorsTerminated
private boolean allCollectorsTerminated()
-