Package org.apache.lucene.search.spans
Class SpanPositionCheckQuery
- java.lang.Object
-
- org.apache.lucene.search.Query
-
- org.apache.lucene.search.spans.SpanQuery
-
- org.apache.lucene.search.spans.SpanPositionCheckQuery
-
- All Implemented Interfaces:
Cloneable
- Direct Known Subclasses:
SpanPositionRangeQuery
public abstract class SpanPositionCheckQuery extends SpanQuery implements Cloneable
Base class for filtering a SpanQuery based on the position of a match.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
SpanPositionCheckQuery.SpanPositionCheckWeight
-
Constructor Summary
Constructors Constructor Description SpanPositionCheckQuery(SpanQuery match)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract FilterSpans.AcceptStatus
acceptPosition(Spans spans)
Implementing classes are required to return whether the current position is a match for the passed in "match"SpanQuery
.SpanWeight
createWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost)
Expert: Constructs an appropriate Weight implementation for this query.boolean
equals(Object other)
Returns true iffother
is equal to this.String
getField()
Returns the name of the field matched by this query.SpanQuery
getMatch()
int
hashCode()
Override and implement query hash code properly in a subclass.Query
rewrite(IndexReader reader)
Expert: called to re-write queries into primitive queries.void
visit(QueryVisitor visitor)
Recurse through the query tree, visiting any child queries-
Methods inherited from class org.apache.lucene.search.spans.SpanQuery
getTermStates, getTermStates
-
Methods inherited from class org.apache.lucene.search.Query
classHash, sameClassAs, toString, toString
-
-
-
-
Field Detail
-
match
protected SpanQuery match
-
-
Constructor Detail
-
SpanPositionCheckQuery
public SpanPositionCheckQuery(SpanQuery match)
-
-
Method Detail
-
getMatch
public SpanQuery getMatch()
- Returns:
- the SpanQuery whose matches are filtered.
-
getField
public String getField()
Description copied from class:SpanQuery
Returns the name of the field matched by this query.
-
acceptPosition
protected abstract FilterSpans.AcceptStatus acceptPosition(Spans spans) throws IOException
Implementing classes are required to return whether the current position is a match for the passed in "match"SpanQuery
. This is only called if the underlying lastSpans.nextStartPosition()
for the match indicated a valid start position.- Parameters:
spans
- TheSpans
instance, positioned at the spot to check- Returns:
- whether the match is accepted, rejected, or rejected and should move to the next doc.
- Throws:
IOException
- See Also:
DocIdSetIterator.nextDoc()
-
createWeight
public SpanWeight createWeight(IndexSearcher searcher, ScoreMode scoreMode, float boost) throws IOException
Description copied from class:Query
Expert: Constructs an appropriate Weight implementation for this query.Only implemented by primitive queries, which re-write to themselves.
- Specified by:
createWeight
in classSpanQuery
scoreMode
- How the produced scorers will be consumed.boost
- The boost that is propagated by the parent queries.- Throws:
IOException
-
rewrite
public Query rewrite(IndexReader reader) throws IOException
Description copied from class:Query
Expert: called to re-write queries into primitive queries. For example, a PrefixQuery will be rewritten into a BooleanQuery that consists of TermQuerys.- Overrides:
rewrite
in classQuery
- Throws:
IOException
-
visit
public void visit(QueryVisitor visitor)
Description copied from class:Query
Recurse through the query tree, visiting any child queries
-
equals
public boolean equals(Object other)
Returns true iffother
is equal to this.- Specified by:
equals
in classQuery
- See Also:
Query.sameClassAs(Object)
,Query.classHash()
-
hashCode
public int hashCode()
Description copied from class:Query
Override and implement query hash code properly in a subclass. This is required so thatQueryCache
works properly.- Specified by:
hashCode
in classQuery
- See Also:
Query.equals(Object)
-
-