Class FunctionScoreQuery
java.lang.Object
org.apache.lucene.search.Query
org.elasticsearch.common.lucene.search.function.FunctionScoreQuery
public class FunctionScoreQuery
extends org.apache.lucene.search.Query
A query that allows for a pluggable boost function / filter. If it matches
the filter, it will be boosted by the formula.
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
FunctionScoreQuery.FilterScoreFunction
static class
FunctionScoreQuery.ScoreMode
-
Field Summary
Fields Modifier and Type Field Description static float
DEFAULT_MAX_BOOST
-
Constructor Summary
Constructors Constructor Description FunctionScoreQuery(org.apache.lucene.search.Query subQuery, java.lang.Float minScore, float maxBoost)
Creates a FunctionScoreQuery without function.FunctionScoreQuery(org.apache.lucene.search.Query subQuery, FunctionScoreQuery.ScoreMode scoreMode, ScoreFunction[] functions, CombineFunction combineFunction, java.lang.Float minScore, float maxBoost)
Creates a FunctionScoreQuery with multiple score functionsFunctionScoreQuery(org.apache.lucene.search.Query subQuery, ScoreFunction function)
Creates a FunctionScoreQuery with a singleScoreFunction
FunctionScoreQuery(org.apache.lucene.search.Query subQuery, ScoreFunction function, CombineFunction combineFunction, java.lang.Float minScore, float maxBoost)
Creates a FunctionScoreQuery with a single function -
Method Summary
Modifier and Type Method Description org.apache.lucene.search.Weight
createWeight(org.apache.lucene.search.IndexSearcher searcher, org.apache.lucene.search.ScoreMode scoreMode, float boost)
boolean
equals(java.lang.Object o)
CombineFunction
getCombineFunction()
ScoreFunction[]
getFunctions()
java.lang.Float
getMinScore()
org.apache.lucene.search.Query
getSubQuery()
int
hashCode()
org.apache.lucene.search.Query
rewrite(org.apache.lucene.index.IndexReader reader)
java.lang.String
toString(java.lang.String field)
void
visit(org.apache.lucene.search.QueryVisitor visitor)
-
Field Details
-
DEFAULT_MAX_BOOST
public static final float DEFAULT_MAX_BOOST- See Also:
- Constant Field Values
-
-
Constructor Details
-
FunctionScoreQuery
public FunctionScoreQuery(org.apache.lucene.search.Query subQuery, java.lang.Float minScore, float maxBoost)Creates a FunctionScoreQuery without function.- Parameters:
subQuery
- The query to match.minScore
- The minimum score to consider a document.maxBoost
- The maximum applicable boost.
-
FunctionScoreQuery
Creates a FunctionScoreQuery with a singleScoreFunction
- Parameters:
subQuery
- The query to match.function
- TheScoreFunction
to apply.
-
FunctionScoreQuery
public FunctionScoreQuery(org.apache.lucene.search.Query subQuery, ScoreFunction function, CombineFunction combineFunction, java.lang.Float minScore, float maxBoost)Creates a FunctionScoreQuery with a single function- Parameters:
subQuery
- The query to match.function
- TheScoreFunction
to apply.combineFunction
- Defines how the query and function score should be applied.minScore
- The minimum score to consider a document.maxBoost
- The maximum applicable boost.
-
FunctionScoreQuery
public FunctionScoreQuery(org.apache.lucene.search.Query subQuery, FunctionScoreQuery.ScoreMode scoreMode, ScoreFunction[] functions, CombineFunction combineFunction, java.lang.Float minScore, float maxBoost)Creates a FunctionScoreQuery with multiple score functions- Parameters:
subQuery
- The query to match.scoreMode
- Defines how the different score functions should be combined.functions
- TheScoreFunction
s to apply.combineFunction
- Defines how the query and function score should be applied.minScore
- The minimum score to consider a document.maxBoost
- The maximum applicable boost.
-
-
Method Details
-
getSubQuery
public org.apache.lucene.search.Query getSubQuery() -
getFunctions
-
getMinScore
public java.lang.Float getMinScore() -
getCombineFunction
-
visit
public void visit(org.apache.lucene.search.QueryVisitor visitor)- Overrides:
visit
in classorg.apache.lucene.search.Query
-
rewrite
public org.apache.lucene.search.Query rewrite(org.apache.lucene.index.IndexReader reader) throws java.io.IOException- Overrides:
rewrite
in classorg.apache.lucene.search.Query
- Throws:
java.io.IOException
-
createWeight
public org.apache.lucene.search.Weight createWeight(org.apache.lucene.search.IndexSearcher searcher, org.apache.lucene.search.ScoreMode scoreMode, float boost) throws java.io.IOException- Overrides:
createWeight
in classorg.apache.lucene.search.Query
- Throws:
java.io.IOException
-
toString
public java.lang.String toString(java.lang.String field)- Specified by:
toString
in classorg.apache.lucene.search.Query
-
equals
public boolean equals(java.lang.Object o)- Specified by:
equals
in classorg.apache.lucene.search.Query
-
hashCode
public int hashCode()- Specified by:
hashCode
in classorg.apache.lucene.search.Query
-