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:
SpanNearPayloadCheckQuery
,SpanPayloadCheckQuery
,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 protected static class
SpanPositionCheckQuery.AcceptStatus
Return value foracceptPosition(Spans)
.protected class
SpanPositionCheckQuery.PositionCheckSpan
-
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 SpanPositionCheckQuery.AcceptStatus
acceptPosition(Spans spans)
Implementing classes are required to return whether the current position is a match for the passed in "match"SpanQuery
.void
extractTerms(Set<Term> terms)
Expert: adds all terms occurring in this query to the terms set.String
getField()
Returns the name of the field matched by this query.SpanQuery
getMatch()
Spans
getSpans(AtomicReaderContext context, Bits acceptDocs, Map<Term,TermContext> termContexts)
Expert: Returns the matches for this query in an index.Query
rewrite(IndexReader reader)
Expert: called to re-write queries into primitive queries.-
Methods inherited from class org.apache.lucene.search.spans.SpanQuery
createWeight
-
-
-
-
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.Note that this may return null if the query matches no terms.
-
extractTerms
public void extractTerms(Set<Term> terms)
Description copied from class:Query
Expert: adds all terms occurring in this query to the terms set. Only works if this query is in itsrewritten
form.- Overrides:
extractTerms
in classQuery
-
acceptPosition
protected abstract SpanPositionCheckQuery.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 underlyingSpans.next()
for the match is successful- 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:
Spans.next()
-
getSpans
public Spans getSpans(AtomicReaderContext context, Bits acceptDocs, Map<Term,TermContext> termContexts) throws IOException
Description copied from class:SpanQuery
Expert: Returns the matches for this query in an index. Used internally to search for spans.- Specified by:
getSpans
in classSpanQuery
- 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
-
-