org.apache.lucene.search

Class PhrasePrefixQuery

Implemented Interfaces:
Cloneable, java.io.Serializable

public class PhrasePrefixQuery
extends Query

PhrasePrefixQuery is a generalized version of PhraseQuery, with an added method add(Term[]). To use this class, to search for the phrase "Microsoft app*" first use add(Term) on the term "Microsoft", then find all terms that has "app" as prefix using IndexReader.terms(Term), and use PhrasePrefixQuery.add(Term[] terms) to add them to the query.

Version:
1.0

Author:
Anders Nielsen

See Also:
Serialized Form

Method Summary

void
add(Term term)
Add a single term at the next position in the phrase.
void
add(Term[] terms)
Add multiple terms at the next position in the phrase.
void
add(Term[] terms, int position)
Allows to specify the relative position of terms within the phrase.
protected Weight
createWeight(Searcher searcher)
Expert: Constructs an appropriate Weight implementation for this query.
int[]
getPositions()
Returns the relative positions of terms in this phrase.
int
getSlop()
Sets the phrase slop for this query.
void
setSlop(int s)
Sets the phrase slop for this query.
String
toString(String f)
Prints a user-readable version of this query.

Methods inherited from class org.apache.lucene.search.Query

clone, combine, createWeight, getBoost, getSimilarity, mergeBooleanQueries, rewrite, setBoost, toString, toString, weight

Method Details

add

public void add(Term term)
Add a single term at the next position in the phrase.

See Also:
PhraseQuery.add(Term)


add

public void add(Term[] terms)
Add multiple terms at the next position in the phrase. Any of the terms may match.

See Also:
PhraseQuery.add(Term)


add

public void add(Term[] terms,
                int position)
Allows to specify the relative position of terms within the phrase.

Parameters:
terms -
position -

See Also:
PhraseQuery.add(Term,int)


createWeight

protected Weight createWeight(Searcher searcher)
Expert: Constructs an appropriate Weight implementation for this query.

Only implemented by primitive queries, which re-write to themselves.

Overrides:
createWeight in interface Query


getPositions

public int[] getPositions()
Returns the relative positions of terms in this phrase.


getSlop

public int getSlop()
Sets the phrase slop for this query.

See Also:
PhraseQuery.getSlop()


setSlop

public void setSlop(int s)
Sets the phrase slop for this query.

See Also:
PhraseQuery.setSlop(int)


toString

public final String toString(String f)
Prints a user-readable version of this query.
Overrides:
toString in interface Query


Copyright © 2000-2005 Apache Software Foundation. All Rights Reserved.