protected static class Weight.DefaultBulkScorer extends BulkScorer
| Constructor and Description |
|---|
DefaultBulkScorer(Scorer scorer)
Sole constructor.
|
| Modifier and Type | Method and Description |
|---|---|
long |
cost()
Same as
DocIdSetIterator.cost() for bulk scorers. |
int |
score(LeafCollector collector,
Bits acceptDocs,
int min,
int max)
Collects matching documents in a range and return an estimation of the
next matching document which is on or after
max. |
scorepublic DefaultBulkScorer(Scorer scorer)
public long cost()
BulkScorerDocIdSetIterator.cost() for bulk scorers.cost in class BulkScorerpublic int score(LeafCollector collector, Bits acceptDocs, int min, int max) throws IOException
BulkScorermax.
The return value must be:
max,DocIdSetIterator.NO_MORE_DOCS if there are no more matches,max otherwise.min is the minimum document to be considered for matching. All
documents strictly before this value must be ignored.
Although max would be a legal return value for this method, higher
values might help callers skip more efficiently over non-matching portions
of the docID space.
For instance, a Scorer-based implementation could look like
below:
private final Scorer scorer; // set via constructor
public int score(LeafCollector collector, Bits acceptDocs, int min, int max) throws IOException {
collector.setScorer(scorer);
int doc = scorer.docID();
if (doc < min) {
doc = scorer.advance(min);
}
while (doc < max) {
if (acceptDocs == null || acceptDocs.get(doc)) {
collector.collect(doc);
}
doc = scorer.nextDoc();
}
return doc;
}
score in class BulkScorercollector - The collector to which all matching documents are passed.acceptDocs - Bits that represents the allowed documents to match, or
null if they are all allowed to match.min - Score starting at, including, this documentmax - Score up to, but not including, this docIOExceptionCopyright © 2000-2018 Apache Software Foundation. All Rights Reserved.