Class ScaleFloatFunction
java.lang.Object
org.apache.lucene.queries.function.ValueSource
org.apache.lucene.queries.function.valuesource.ScaleFloatFunction
Scales values to be between min and max.
This implementation currently traverses all of the source values to obtain their min and max.
This implementation currently cannot distinguish when documents have been deleted or documents that have no value, and 0.0 values will be used for these cases. This means that if values are normally all greater than 0.0, one can still end up with 0.0 as the min value to map from. In these cases, an appropriate map() function could be used as a workaround to change 0.0 to a value in the real range.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final floatprotected final floatprotected final ValueSource -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidcreateWeight(Map<Object, Object> context, IndexSearcher searcher) Implementations should propagate createWeight to sub-ValueSources which can optionally store weight info in the context.description of field, used in explain()booleangetValues(Map<Object, Object> context, LeafReaderContext readerContext) Gets the values for this reader and the context that was previously passed to createWeight().inthashCode()Methods inherited from class org.apache.lucene.queries.function.ValueSource
asDoubleValuesSource, asLongValuesSource, fromDoubleValuesSource, getSortField, newContext, toString
-
Field Details
-
source
-
min
protected final float min -
max
protected final float max
-
-
Constructor Details
-
ScaleFloatFunction
-
-
Method Details
-
description
Description copied from class:ValueSourcedescription of field, used in explain()- Specified by:
descriptionin classValueSource
-
getValues
public FunctionValues getValues(Map<Object, Object> context, LeafReaderContext readerContext) throws IOExceptionDescription copied from class:ValueSourceGets the values for this reader and the context that was previously passed to createWeight(). The values must be consumed in a forward docID manner, and you must call this method again to iterate through the values again.- Specified by:
getValuesin classValueSource- Throws:
IOException
-
createWeight
Description copied from class:ValueSourceImplementations should propagate createWeight to sub-ValueSources which can optionally store weight info in the context. The context object will be passed to getValues() where this info can be retrieved.- Overrides:
createWeightin classValueSource- Throws:
IOException
-
hashCode
public int hashCode()- Specified by:
hashCodein classValueSource
-
equals
- Specified by:
equalsin classValueSource
-