org.apache.lucene.search.spans
Class SpanNearQuery

java.lang.Object
  extended by org.apache.lucene.search.Query
      extended by org.apache.lucene.search.spans.SpanQuery
          extended by org.apache.lucene.search.spans.SpanNearQuery
All Implemented Interfaces:
Serializable, Cloneable
Direct Known Subclasses:
PayloadNearQuery

public class SpanNearQuery
extends SpanQuery
implements Cloneable

Matches spans which are near one another. One can specify slop, the maximum number of intervening unmatched positions, as well as whether matches are required to be in-order.

See Also:
Serialized Form

Field Summary
protected  List<SpanQuery> clauses
           
protected  String field
           
protected  boolean inOrder
           
protected  int slop
           
 
Constructor Summary
SpanNearQuery(SpanQuery[] clauses, int slop, boolean inOrder)
          Construct a SpanNearQuery.
SpanNearQuery(SpanQuery[] clauses, int slop, boolean inOrder, boolean collectPayloads)
           
 
Method Summary
 Object clone()
          Returns a clone of this query.
 boolean equals(Object o)
          Returns true iff o is equal to this.
 void extractTerms(Set<Term> terms)
          Expert: adds all terms occurring in this query to the terms set.
 SpanQuery[] getClauses()
          Return the clauses whose spans are matched.
 String getField()
          Returns the name of the field matched by this query.
 int getSlop()
          Return the maximum number of intervening unmatched positions permitted.
 Spans getSpans(IndexReader reader)
          Expert: Returns the matches for this query in an index.
 int hashCode()
           
 boolean isInOrder()
          Return true if matches are required to be in-order.
 Query rewrite(IndexReader reader)
          Expert: called to re-write queries into primitive queries.
 String toString(String field)
          Prints a query to a string, with field assumed to be the default field and omitted.
 
Methods inherited from class org.apache.lucene.search.spans.SpanQuery
createWeight
 
Methods inherited from class org.apache.lucene.search.Query
combine, getBoost, getSimilarity, mergeBooleanQueries, setBoost, toString, weight
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

clauses

protected List<SpanQuery> clauses

slop

protected int slop

inOrder

protected boolean inOrder

field

protected String field
Constructor Detail

SpanNearQuery

public SpanNearQuery(SpanQuery[] clauses,
                     int slop,
                     boolean inOrder)
Construct a SpanNearQuery. Matches spans matching a span from each clause, with up to slop total unmatched positions between them. * When inOrder is true, the spans from each clause must be * ordered as in clauses.

Parameters:
clauses - the clauses to find near each other
slop - The slop value
inOrder - true if order is important

SpanNearQuery

public SpanNearQuery(SpanQuery[] clauses,
                     int slop,
                     boolean inOrder,
                     boolean collectPayloads)
Method Detail

getClauses

public SpanQuery[] getClauses()
Return the clauses whose spans are matched.


getSlop

public int getSlop()
Return the maximum number of intervening unmatched positions permitted.


isInOrder

public boolean isInOrder()
Return true if matches are required to be in-order.


getField

public String getField()
Description copied from class: SpanQuery
Returns the name of the field matched by this query.

Specified by:
getField in class SpanQuery

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 its rewritten form.

Overrides:
extractTerms in class Query

toString

public String toString(String field)
Description copied from class: Query
Prints a query to a string, with field assumed to be the default field and omitted.

The representation used is one that is supposed to be readable by QueryParser. However, there are the following limitations:

Specified by:
toString in class Query

getSpans

public Spans getSpans(IndexReader reader)
               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 class SpanQuery
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 class Query
Throws:
IOException

clone

public Object clone()
Description copied from class: Query
Returns a clone of this query.

Overrides:
clone in class Query

equals

public boolean equals(Object o)
Returns true iff o is equal to this.

Overrides:
equals in class Query

hashCode

public int hashCode()
Overrides:
hashCode in class Query