public interface IndexableField
Modifier and Type | Method and Description |
---|---|
BytesRef |
binaryValue()
Non-null if this field has a binary value
|
float |
boost()
Returns the field's index-time boost.
|
IndexableFieldType |
fieldType()
IndexableFieldType describing the properties
of this field. |
String |
name()
Field name
|
Number |
numericValue()
Non-null if this field has a numeric value
|
Reader |
readerValue()
Non-null if this field has a Reader value
|
String |
stringValue()
Non-null if this field has a string value
|
TokenStream |
tokenStream(Analyzer analyzer,
TokenStream reuse)
Creates the TokenStream used for indexing this field.
|
String name()
IndexableFieldType fieldType()
IndexableFieldType
describing the properties
of this field.TokenStream tokenStream(Analyzer analyzer, TokenStream reuse)
analyzer
- Analyzer that should be used to create the TokenStreams fromreuse
- TokenStream for a previous instance of this field name. This allows
custom field types (like StringField and NumericField) that do not use
the analyzer to still have good performance. Note: the passed-in type
may be inappropriate, for example if you mix up different types of Fields
for the same field name. So it's the responsibility of the implementation to
check.float boost()
Only fields can have an index-time boost, if you want to simulate a "document boost", then you must pre-multiply it across all the relevant fields yourself.
The boost is used to compute the norm factor for the field. By
default, in the Similarity.computeNorm(FieldInvertState)
method,
the boost value is multiplied by the length normalization factor and then
rounded by ClassicSimilarity.encodeNormValue(float)
before it is stored in the
index. One should attempt to ensure that this product does not overflow
the range of that encoding.
It is illegal to return a boost other than 1.0f for a field that is not
indexed (IndexableFieldType.indexOptions()
is IndexOptions.NONE) or
omits normalization values (IndexableFieldType.omitNorms()
returns true).
BytesRef binaryValue()
String stringValue()
Reader readerValue()
Number numericValue()
Copyright © 2000-2017 Apache Software Foundation. All Rights Reserved.