Class FunctionScoreQueryBuilder
- java.lang.Object
-
- org.elasticsearch.index.query.AbstractQueryBuilder<FunctionScoreQueryBuilder>
-
- org.elasticsearch.index.query.functionscore.FunctionScoreQueryBuilder
-
- All Implemented Interfaces:
NamedWriteable
,Writeable
,ToXContent
,ToXContentObject
,QueryBuilder
,Rewriteable<QueryBuilder>
public class FunctionScoreQueryBuilder extends AbstractQueryBuilder<FunctionScoreQueryBuilder>
A query that uses a filters with a script associated with them to compute the score.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
FunctionScoreQueryBuilder.FilterFunctionBuilder
Function to be associated with an optional filter, meaning it will be executed only for the documents that match the given filter.-
Nested classes/interfaces inherited from interface org.elasticsearch.common.xcontent.ToXContent
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.Params
-
Nested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V>
-
-
Field Summary
Fields Modifier and Type Field Description static ParseField
BOOST_MODE_FIELD
static CombineFunction
DEFAULT_BOOST_MODE
static FunctionScoreQuery.ScoreMode
DEFAULT_SCORE_MODE
static ParseField
FILTER_FIELD
static ParseField
FUNCTIONS_FIELD
static ParseField
MAX_BOOST_FIELD
static ParseField
MIN_SCORE_FIELD
static java.lang.String
NAME
static ParseField
QUERY_FIELD
static ParseField
SCORE_MODE_FIELD
static ParseField
WEIGHT_FIELD
-
Fields inherited from class org.elasticsearch.index.query.AbstractQueryBuilder
boost, BOOST_FIELD, DEFAULT_BOOST, NAME_FIELD, queryName
-
Fields inherited from interface org.elasticsearch.index.query.Rewriteable
MAX_REWRITE_ROUNDS
-
Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent
EMPTY_PARAMS
-
-
Constructor Summary
Constructors Constructor Description FunctionScoreQueryBuilder(StreamInput in)
Read from a stream.FunctionScoreQueryBuilder(FunctionScoreQueryBuilder.FilterFunctionBuilder[] filterFunctionBuilders)
Creates a function_score query that executes the provided filters and functions on all documentsFunctionScoreQueryBuilder(ScoreFunctionBuilder<?> scoreFunctionBuilder)
Creates a function_score query that will execute the function provided on all documentsFunctionScoreQueryBuilder(QueryBuilder query)
Creates a function_score query without functionsFunctionScoreQueryBuilder(QueryBuilder query, FunctionScoreQueryBuilder.FilterFunctionBuilder[] filterFunctionBuilders)
Creates a function_score query that executes the provided filters and functions on documents that match a query.FunctionScoreQueryBuilder(QueryBuilder query, ScoreFunctionBuilder<?> scoreFunctionBuilder)
Creates a function_score query that will execute the function provided in the context of the provided query
-
Method Summary
Modifier and Type Method Description CombineFunction
boostMode()
Returns the boost mode, meaning how the combined result of score functions will influence the final score together with the sub query score.FunctionScoreQueryBuilder
boostMode(CombineFunction combineFunction)
Boost mode defines how the combined result of score functions will influence the final score together with the sub query score.protected boolean
doEquals(FunctionScoreQueryBuilder other)
Indicates whether some otherQueryBuilder
object of the same type is "equal to" this one.protected int
doHashCode()
protected QueryBuilder
doRewrite(QueryRewriteContext queryRewriteContext)
protected org.apache.lucene.search.Query
doToQuery(QueryShardContext context)
protected void
doWriteTo(StreamOutput out)
protected void
doXContent(XContentBuilder builder, ToXContent.Params params)
protected void
extractInnerHitBuilders(java.util.Map<java.lang.String,InnerHitContextBuilder> innerHits)
For internal usage only! Extracts the inner hits from the query tree.FunctionScoreQueryBuilder.FilterFunctionBuilder[]
filterFunctionBuilders()
Returns the filters and functionsstatic FunctionScoreQueryBuilder
fromXContent(XContentParser parser)
java.lang.Float
getMinScore()
java.lang.String
getWriteableName()
Returns the name of the writeable objectfloat
maxBoost()
Returns the maximum boost that will be applied by function score.FunctionScoreQueryBuilder
maxBoost(float maxBoost)
Sets the maximum boost that will be applied by function score.QueryBuilder
query()
Returns the query that defines which documents the function_score query will be executed on.FunctionScoreQuery.ScoreMode
scoreMode()
Returns the score mode, meaning how results of individual score functions will be aggregated.FunctionScoreQueryBuilder
scoreMode(FunctionScoreQuery.ScoreMode scoreMode)
Score mode defines how results of individual score functions will be aggregated.FunctionScoreQueryBuilder
setMinScore(float minScore)
-
Methods inherited from class org.elasticsearch.index.query.AbstractQueryBuilder
addValidationError, boost, boost, checkNegativeBoost, declareStandardFields, equals, getName, hashCode, parseInnerQueryBuilder, printBoostAndQueryName, queryName, queryName, requireValue, rewrite, throwParsingExceptionOnMultipleFields, toFilter, toQuery, toString, toString, toXContent, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.elasticsearch.common.xcontent.ToXContentObject
isFragment
-
-
-
-
Field Detail
-
NAME
public static final java.lang.String NAME
- See Also:
- Constant Field Values
-
WEIGHT_FIELD
public static final ParseField WEIGHT_FIELD
-
QUERY_FIELD
public static final ParseField QUERY_FIELD
-
FILTER_FIELD
public static final ParseField FILTER_FIELD
-
FUNCTIONS_FIELD
public static final ParseField FUNCTIONS_FIELD
-
SCORE_MODE_FIELD
public static final ParseField SCORE_MODE_FIELD
-
BOOST_MODE_FIELD
public static final ParseField BOOST_MODE_FIELD
-
MAX_BOOST_FIELD
public static final ParseField MAX_BOOST_FIELD
-
MIN_SCORE_FIELD
public static final ParseField MIN_SCORE_FIELD
-
DEFAULT_BOOST_MODE
public static final CombineFunction DEFAULT_BOOST_MODE
-
DEFAULT_SCORE_MODE
public static final FunctionScoreQuery.ScoreMode DEFAULT_SCORE_MODE
-
-
Constructor Detail
-
FunctionScoreQueryBuilder
public FunctionScoreQueryBuilder(QueryBuilder query)
Creates a function_score query without functions- Parameters:
query
- the query that needs to be custom scored
-
FunctionScoreQueryBuilder
public FunctionScoreQueryBuilder(FunctionScoreQueryBuilder.FilterFunctionBuilder[] filterFunctionBuilders)
Creates a function_score query that executes the provided filters and functions on all documents- Parameters:
filterFunctionBuilders
- the filters and functions
-
FunctionScoreQueryBuilder
public FunctionScoreQueryBuilder(ScoreFunctionBuilder<?> scoreFunctionBuilder)
Creates a function_score query that will execute the function provided on all documents- Parameters:
scoreFunctionBuilder
- score function that is executed
-
FunctionScoreQueryBuilder
public FunctionScoreQueryBuilder(QueryBuilder query, ScoreFunctionBuilder<?> scoreFunctionBuilder)
Creates a function_score query that will execute the function provided in the context of the provided query- Parameters:
query
- the query to custom scorescoreFunctionBuilder
- score function that is executed
-
FunctionScoreQueryBuilder
public FunctionScoreQueryBuilder(QueryBuilder query, FunctionScoreQueryBuilder.FilterFunctionBuilder[] filterFunctionBuilders)
Creates a function_score query that executes the provided filters and functions on documents that match a query.- Parameters:
query
- the query that defines which documents the function_score query will be executed on.filterFunctionBuilders
- the filters and functions
-
FunctionScoreQueryBuilder
public FunctionScoreQueryBuilder(StreamInput in) throws java.io.IOException
Read from a stream.- Throws:
java.io.IOException
-
-
Method Detail
-
doWriteTo
protected void doWriteTo(StreamOutput out) throws java.io.IOException
- Specified by:
doWriteTo
in classAbstractQueryBuilder<FunctionScoreQueryBuilder>
- Throws:
java.io.IOException
-
query
public QueryBuilder query()
Returns the query that defines which documents the function_score query will be executed on.
-
filterFunctionBuilders
public FunctionScoreQueryBuilder.FilterFunctionBuilder[] filterFunctionBuilders()
Returns the filters and functions
-
scoreMode
public FunctionScoreQueryBuilder scoreMode(FunctionScoreQuery.ScoreMode scoreMode)
Score mode defines how results of individual score functions will be aggregated.- See Also:
FunctionScoreQuery.ScoreMode
-
scoreMode
public FunctionScoreQuery.ScoreMode scoreMode()
Returns the score mode, meaning how results of individual score functions will be aggregated.- See Also:
FunctionScoreQuery.ScoreMode
-
boostMode
public FunctionScoreQueryBuilder boostMode(CombineFunction combineFunction)
Boost mode defines how the combined result of score functions will influence the final score together with the sub query score.- See Also:
CombineFunction
-
boostMode
public CombineFunction boostMode()
Returns the boost mode, meaning how the combined result of score functions will influence the final score together with the sub query score.- See Also:
CombineFunction
-
maxBoost
public FunctionScoreQueryBuilder maxBoost(float maxBoost)
Sets the maximum boost that will be applied by function score.
-
maxBoost
public float maxBoost()
Returns the maximum boost that will be applied by function score.
-
doXContent
protected void doXContent(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException
- Specified by:
doXContent
in classAbstractQueryBuilder<FunctionScoreQueryBuilder>
- Throws:
java.io.IOException
-
setMinScore
public FunctionScoreQueryBuilder setMinScore(float minScore)
-
getMinScore
public java.lang.Float getMinScore()
-
getWriteableName
public java.lang.String getWriteableName()
Description copied from interface:NamedWriteable
Returns the name of the writeable object
-
doEquals
protected boolean doEquals(FunctionScoreQueryBuilder other)
Description copied from class:AbstractQueryBuilder
Indicates whether some otherQueryBuilder
object of the same type is "equal to" this one.- Specified by:
doEquals
in classAbstractQueryBuilder<FunctionScoreQueryBuilder>
-
doHashCode
protected int doHashCode()
- Specified by:
doHashCode
in classAbstractQueryBuilder<FunctionScoreQueryBuilder>
-
doToQuery
protected org.apache.lucene.search.Query doToQuery(QueryShardContext context) throws java.io.IOException
- Specified by:
doToQuery
in classAbstractQueryBuilder<FunctionScoreQueryBuilder>
- Throws:
java.io.IOException
-
doRewrite
protected QueryBuilder doRewrite(QueryRewriteContext queryRewriteContext) throws java.io.IOException
- Overrides:
doRewrite
in classAbstractQueryBuilder<FunctionScoreQueryBuilder>
- Throws:
java.io.IOException
-
extractInnerHitBuilders
protected void extractInnerHitBuilders(java.util.Map<java.lang.String,InnerHitContextBuilder> innerHits)
Description copied from class:AbstractQueryBuilder
For internal usage only! Extracts the inner hits from the query tree. While it extracts inner hits, child inner hits are inlined into the inner hit builder they belong to.- Overrides:
extractInnerHitBuilders
in classAbstractQueryBuilder<FunctionScoreQueryBuilder>
-
fromXContent
public static FunctionScoreQueryBuilder fromXContent(XContentParser parser) throws java.io.IOException
- Throws:
java.io.IOException
-
-