private static class ExitableDirectoryReader.ExitableIntersectVisitor extends java.lang.Object implements PointValues.IntersectVisitor
Modifier and Type | Field and Description |
---|---|
private int |
calls |
private PointValues.IntersectVisitor |
in |
private static int |
MAX_CALLS_BEFORE_QUERY_TIMEOUT_CHECK |
private QueryTimeout |
queryTimeout |
Modifier | Constructor and Description |
---|---|
private |
ExitableIntersectVisitor(PointValues.IntersectVisitor in,
QueryTimeout queryTimeout) |
Modifier and Type | Method and Description |
---|---|
private void |
checkAndThrow() |
private void |
checkAndThrowWithSampling()
Throws
ExitableDirectoryReader.ExitingReaderException if QueryTimeout.shouldExit() returns true,
or if Thread.interrupted() returns true. |
PointValues.Relation |
compare(byte[] minPackedValue,
byte[] maxPackedValue)
Called for non-leaf cells to test how the cell relates to the query, to
determine how to further recurse down the tree.
|
void |
grow(int count)
Notifies the caller that this many documents are about to be visited
|
void |
visit(int docID)
Called for all documents in a leaf cell that's fully contained by the query.
|
void |
visit(int docID,
byte[] packedValue)
Called for all documents in a leaf cell that crosses the query.
|
private static final int MAX_CALLS_BEFORE_QUERY_TIMEOUT_CHECK
private final PointValues.IntersectVisitor in
private final QueryTimeout queryTimeout
private int calls
private ExitableIntersectVisitor(PointValues.IntersectVisitor in, QueryTimeout queryTimeout)
private void checkAndThrowWithSampling()
ExitableDirectoryReader.ExitingReaderException
if QueryTimeout.shouldExit()
returns true,
or if Thread.interrupted()
returns true.private void checkAndThrow()
public void visit(int docID) throws java.io.IOException
PointValues.IntersectVisitor
visit
in interface PointValues.IntersectVisitor
java.io.IOException
public void visit(int docID, byte[] packedValue) throws java.io.IOException
PointValues.IntersectVisitor
visit
in interface PointValues.IntersectVisitor
java.io.IOException
public PointValues.Relation compare(byte[] minPackedValue, byte[] maxPackedValue)
PointValues.IntersectVisitor
compare
in interface PointValues.IntersectVisitor
public void grow(int count)
PointValues.IntersectVisitor
grow
in interface PointValues.IntersectVisitor