Class RandomScoreFunctionBuilder
java.lang.Object
org.elasticsearch.index.query.functionscore.ScoreFunctionBuilder<RandomScoreFunctionBuilder>
org.elasticsearch.index.query.functionscore.RandomScoreFunctionBuilder
- All Implemented Interfaces:
NamedWriteable
,Writeable
,org.elasticsearch.common.xcontent.ToXContent
,org.elasticsearch.common.xcontent.ToXContentFragment
A function that computes a random score for the matched documents
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.elasticsearch.common.xcontent.ToXContent
org.elasticsearch.common.xcontent.ToXContent.DelegatingMapParams, org.elasticsearch.common.xcontent.ToXContent.MapParams, org.elasticsearch.common.xcontent.ToXContent.Params
Nested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V>
-
Field Summary
Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent
EMPTY_PARAMS
-
Constructor Summary
ConstructorDescriptionRead from a stream. -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
doEquals(RandomScoreFunctionBuilder functionBuilder)
Check that two instances of the same subclass of ScoreFunctionBuilder are equal.protected int
Hashcode for fields defined in this subclass of ScoreFunctionBuilder.protected ScoreFunction
doToFunction(SearchExecutionContext context)
Build the Lucene ScoreFunction for this builder.protected void
doWriteTo(StreamOutput out)
Write the subclass's components into the stream.void
doXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params)
Convert this subclass's data into XContent.static RandomScoreFunctionBuilder
fromXContent(org.elasticsearch.common.xcontent.XContentParser parser)
getField()
Get the field to use for random number generation.getName()
The name of this score function.getSeed()
seed(int seed)
Sets the seed based on which the random number will be generated.seed(long seed)
seed variant taking a long value.seed variant taking a String value.Set the field to be used for random number generation.Methods inherited from class org.elasticsearch.index.query.functionscore.ScoreFunctionBuilder
equals, getWeight, getWriteableName, hashCode, setWeight, toFunction, toXContent, writeTo
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.elasticsearch.common.xcontent.ToXContentFragment
isFragment
-
Field Details
-
NAME
- See Also:
- Constant Field Values
-
-
Constructor Details
-
RandomScoreFunctionBuilder
public RandomScoreFunctionBuilder() -
RandomScoreFunctionBuilder
Read from a stream.- Throws:
IOException
-
-
Method Details
-
doWriteTo
Description copied from class:ScoreFunctionBuilder
Write the subclass's components into the stream.- Specified by:
doWriteTo
in classScoreFunctionBuilder<RandomScoreFunctionBuilder>
- Throws:
IOException
-
getName
Description copied from class:ScoreFunctionBuilder
The name of this score function.- Specified by:
getName
in classScoreFunctionBuilder<RandomScoreFunctionBuilder>
-
seed
Sets the seed based on which the random number will be generated. Using the same seed is guaranteed to generate the same random number for a specific doc.- Parameters:
seed
- The seed.
-
seed
seed variant taking a long value.- See Also:
seed(int)
-
seed
seed variant taking a String value.- See Also:
seed(int)
-
getSeed
-
setField
Set the field to be used for random number generation. This parameter is compulsory when aseed
is set and ignored otherwise. Note that documents that have the same value for a field will get the same score. -
getField
Get the field to use for random number generation.- See Also:
setField(String)
-
doXContent
public void doXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params) throws IOExceptionDescription copied from class:ScoreFunctionBuilder
Convert this subclass's data into XContent.- Specified by:
doXContent
in classScoreFunctionBuilder<RandomScoreFunctionBuilder>
- Throws:
IOException
-
doEquals
Description copied from class:ScoreFunctionBuilder
Check that two instances of the same subclass of ScoreFunctionBuilder are equal. Implementers don't need to check any fields in ScoreFunctionBuilder, just fields that they define.- Specified by:
doEquals
in classScoreFunctionBuilder<RandomScoreFunctionBuilder>
-
doHashCode
protected int doHashCode()Description copied from class:ScoreFunctionBuilder
Hashcode for fields defined in this subclass of ScoreFunctionBuilder. Implementers should ignore fields defined in ScoreFunctionBuilder because they will already be in the hashCode.- Specified by:
doHashCode
in classScoreFunctionBuilder<RandomScoreFunctionBuilder>
-
doToFunction
Description copied from class:ScoreFunctionBuilder
Build the Lucene ScoreFunction for this builder. Implementers should ignore things defined in ScoreFunctionBuilder like weight as they will be handled by the function that calls this one.- Specified by:
doToFunction
in classScoreFunctionBuilder<RandomScoreFunctionBuilder>
-
fromXContent
public static RandomScoreFunctionBuilder fromXContent(org.elasticsearch.common.xcontent.XContentParser parser) throws IOException, ParsingException- Throws:
IOException
ParsingException
-