Class DecayFunctionBuilder<DFB extends DecayFunctionBuilder<DFB>>
- java.lang.Object
-
- org.elasticsearch.index.query.functionscore.ScoreFunctionBuilder<DFB>
-
- org.elasticsearch.index.query.functionscore.DecayFunctionBuilder<DFB>
-
- All Implemented Interfaces:
NamedWriteable
,Writeable
,ToXContent
,ToXContentFragment
- Direct Known Subclasses:
ExponentialDecayFunctionBuilder
,GaussDecayFunctionBuilder
,LinearDecayFunctionBuilder
public abstract class DecayFunctionBuilder<DFB extends DecayFunctionBuilder<DFB>> extends ScoreFunctionBuilder<DFB>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
DecayFunctionBuilder.AbstractDistanceScoreFunction
This is the base class for scoring a single field.-
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 protected static java.lang.String
DECAY
static double
DEFAULT_DECAY
static MultiValueMode
DEFAULT_MULTI_VALUE_MODE
protected static java.lang.String
OFFSET
protected static java.lang.String
ORIGIN
protected static java.lang.String
SCALE
-
Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent
EMPTY_PARAMS
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
DecayFunctionBuilder(java.lang.String fieldName, java.lang.Object origin, java.lang.Object scale, java.lang.Object offset)
Convenience constructor that converts its parameters into json to parse on the data nodes.protected
DecayFunctionBuilder(java.lang.String fieldName, java.lang.Object origin, java.lang.Object scale, java.lang.Object offset, double decay)
Convenience constructor that converts its parameters into json to parse on the data nodes.protected
DecayFunctionBuilder(java.lang.String fieldName, BytesReference functionBytes)
protected
DecayFunctionBuilder(StreamInput in)
Read from a stream.
-
Method Summary
Modifier and Type Method Description protected boolean
doEquals(DFB functionBuilder)
Check that two instances of the same subclass of ScoreFunctionBuilder are equal.protected int
doHashCode()
Hashcode for fields defined in this subclass of ScoreFunctionBuilder.protected ScoreFunction
doToFunction(QueryShardContext context)
Build the Lucene ScoreFunction for this builder.protected void
doWriteTo(StreamOutput out)
Write the subclass's components into the stream.void
doXContent(XContentBuilder builder, ToXContent.Params params)
Convert this subclass's data into XContent.protected abstract DecayFunction
getDecayFunction()
Override this function if you want to produce your own scorer.java.lang.String
getFieldName()
BytesReference
getFunctionBytes()
MultiValueMode
getMultiValueMode()
DFB
setMultiValueMode(MultiValueMode multiValueMode)
-
Methods inherited from class org.elasticsearch.index.query.functionscore.ScoreFunctionBuilder
equals, getName, 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 Detail
-
ORIGIN
protected static final java.lang.String ORIGIN
- See Also:
- Constant Field Values
-
SCALE
protected static final java.lang.String SCALE
- See Also:
- Constant Field Values
-
DECAY
protected static final java.lang.String DECAY
- See Also:
- Constant Field Values
-
OFFSET
protected static final java.lang.String OFFSET
- See Also:
- Constant Field Values
-
DEFAULT_DECAY
public static double DEFAULT_DECAY
-
DEFAULT_MULTI_VALUE_MODE
public static MultiValueMode DEFAULT_MULTI_VALUE_MODE
-
-
Constructor Detail
-
DecayFunctionBuilder
protected DecayFunctionBuilder(java.lang.String fieldName, java.lang.Object origin, java.lang.Object scale, java.lang.Object offset)
Convenience constructor that converts its parameters into json to parse on the data nodes.
-
DecayFunctionBuilder
protected DecayFunctionBuilder(java.lang.String fieldName, java.lang.Object origin, java.lang.Object scale, java.lang.Object offset, double decay)
Convenience constructor that converts its parameters into json to parse on the data nodes.
-
DecayFunctionBuilder
protected DecayFunctionBuilder(java.lang.String fieldName, BytesReference functionBytes)
-
DecayFunctionBuilder
protected DecayFunctionBuilder(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
Description copied from class:ScoreFunctionBuilder
Write the subclass's components into the stream.- Specified by:
doWriteTo
in classScoreFunctionBuilder<DFB extends DecayFunctionBuilder<DFB>>
- Throws:
java.io.IOException
-
getFieldName
public java.lang.String getFieldName()
-
getFunctionBytes
public BytesReference getFunctionBytes()
-
doXContent
public void doXContent(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException
Description copied from class:ScoreFunctionBuilder
Convert this subclass's data into XContent.- Specified by:
doXContent
in classScoreFunctionBuilder<DFB extends DecayFunctionBuilder<DFB>>
- Throws:
java.io.IOException
-
setMultiValueMode
public DFB setMultiValueMode(MultiValueMode multiValueMode)
-
getMultiValueMode
public MultiValueMode getMultiValueMode()
-
doEquals
protected boolean doEquals(DFB functionBuilder)
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<DFB extends DecayFunctionBuilder<DFB>>
-
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<DFB extends DecayFunctionBuilder<DFB>>
-
doToFunction
protected ScoreFunction doToFunction(QueryShardContext context) throws java.io.IOException
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<DFB extends DecayFunctionBuilder<DFB>>
- Throws:
java.io.IOException
-
getDecayFunction
protected abstract DecayFunction getDecayFunction()
Override this function if you want to produce your own scorer.
-
-