Package org.apache.lucene.util
Class QueryBuilder
- java.lang.Object
 - 
- org.apache.lucene.util.QueryBuilder
 
 
- 
public class QueryBuilder extends java.lang.ObjectCreates queries from theAnalyzerchain.Example usage:
QueryBuilder builder = new QueryBuilder(analyzer); Query a = builder.createBooleanQuery("body", "just a test"); Query b = builder.createPhraseQuery("body", "another test"); Query c = builder.createMinShouldMatchQuery("body", "another test", 0.5f);This can also be used as a subclass for query parsers to make it easier to interact with the analysis chain. Factory methods such as
newTermQueryare provided so that the generated queries can be customized. 
- 
- 
Constructor Summary
Constructors Constructor Description QueryBuilder(Analyzer analyzer)Creates a new QueryBuilder using the given analyzer. 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description QuerycreateBooleanQuery(java.lang.String field, java.lang.String queryText)Creates a boolean query from the query text.QuerycreateBooleanQuery(java.lang.String field, java.lang.String queryText, BooleanClause.Occur operator)Creates a boolean query from the query text.QuerycreateMinShouldMatchQuery(java.lang.String field, java.lang.String queryText, float fraction)Creates a minimum-should-match query from the query text.QuerycreatePhraseQuery(java.lang.String field, java.lang.String queryText)Creates a phrase query from the query text.QuerycreatePhraseQuery(java.lang.String field, java.lang.String queryText, int phraseSlop)Creates a phrase query from the query text.AnalyzergetAnalyzer()Returns the analyzer.booleangetEnablePositionIncrements()Returns true if position increments are enabled.voidsetAnalyzer(Analyzer analyzer)Sets the analyzer used to tokenize text.voidsetEnablePositionIncrements(boolean enable)Set totrueto enable position increments in result query. 
 - 
 
- 
- 
Constructor Detail
- 
QueryBuilder
public QueryBuilder(Analyzer analyzer)
Creates a new QueryBuilder using the given analyzer. 
 - 
 
- 
Method Detail
- 
createBooleanQuery
public Query createBooleanQuery(java.lang.String field, java.lang.String queryText)
Creates a boolean query from the query text.This is equivalent to
createBooleanQuery(field, queryText, Occur.SHOULD)- Parameters:
 field- field namequeryText- text to be passed to the analyzer- Returns:
 TermQueryorBooleanQuery, based on the analysis ofqueryText
 
- 
createBooleanQuery
public Query createBooleanQuery(java.lang.String field, java.lang.String queryText, BooleanClause.Occur operator)
Creates a boolean query from the query text.- Parameters:
 field- field namequeryText- text to be passed to the analyzeroperator- operator used for clauses between analyzer tokens.- Returns:
 TermQueryorBooleanQuery, based on the analysis ofqueryText
 
- 
createPhraseQuery
public Query createPhraseQuery(java.lang.String field, java.lang.String queryText)
Creates a phrase query from the query text.This is equivalent to
createPhraseQuery(field, queryText, 0)- Parameters:
 field- field namequeryText- text to be passed to the analyzer- Returns:
 TermQuery,BooleanQuery,PhraseQuery, orMultiPhraseQuery, based on the analysis ofqueryText
 
- 
createPhraseQuery
public Query createPhraseQuery(java.lang.String field, java.lang.String queryText, int phraseSlop)
Creates a phrase query from the query text.- Parameters:
 field- field namequeryText- text to be passed to the analyzerphraseSlop- number of other words permitted between words in query phrase- Returns:
 TermQuery,BooleanQuery,PhraseQuery, orMultiPhraseQuery, based on the analysis ofqueryText
 
- 
createMinShouldMatchQuery
public Query createMinShouldMatchQuery(java.lang.String field, java.lang.String queryText, float fraction)
Creates a minimum-should-match query from the query text.- Parameters:
 field- field namequeryText- text to be passed to the analyzerfraction- of query terms[0..1]that should match- Returns:
 TermQueryorBooleanQuery, based on the analysis ofqueryText
 
- 
getAnalyzer
public Analyzer getAnalyzer()
Returns the analyzer.- See Also:
 setAnalyzer(Analyzer)
 
- 
setAnalyzer
public void setAnalyzer(Analyzer analyzer)
Sets the analyzer used to tokenize text. 
- 
getEnablePositionIncrements
public boolean getEnablePositionIncrements()
Returns true if position increments are enabled.- See Also:
 setEnablePositionIncrements(boolean)
 
- 
setEnablePositionIncrements
public void setEnablePositionIncrements(boolean enable)
Set totrueto enable position increments in result query.When set, result phrase and multi-phrase queries will be aware of position increments. Useful when e.g. a StopFilter increases the position increment of the token that follows an omitted token.
Default: true.
 
 - 
 
 -