Interface IndexableField
- All Known Implementing Classes:
BinaryDocValuesField
,ByteDocValuesField
,DerefBytesDocValuesField
,DoubleDocValuesField
,DoubleField
,Field
,FloatDocValuesField
,FloatField
,IntDocValuesField
,IntField
,LongDocValuesField
,LongField
,NumericDocValuesField
,PackedLongDocValuesField
,ShortDocValuesField
,SortedBytesDocValuesField
,SortedDocValuesField
,SortedSetDocValuesField
,StoredField
,StraightBytesDocValuesField
,StringField
,TextField
-
Method Summary
Modifier and TypeMethodDescriptionNon-null if this field has a binary valuefloat
boost()
Returns the field's index-time boost.IndexableFieldType
describing the properties of this field.name()
Field nameNon-null if this field has a numeric valueNon-null if this field has a Reader valueNon-null if this field has a string valuetokenStream
(Analyzer analyzer) Creates the TokenStream used for indexing this field.
-
Method Details
-
name
String name()Field name -
fieldType
IndexableFieldType fieldType()IndexableFieldType
describing the properties of this field. -
boost
float boost()Returns the field's index-time 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 byDefaultSimilarity.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.indexed()
is false) or omits normalization values (IndexableFieldType.omitNorms()
returns true). -
binaryValue
BytesRef binaryValue()Non-null if this field has a binary value -
stringValue
String stringValue()Non-null if this field has a string value -
readerValue
Reader readerValue()Non-null if this field has a Reader value -
numericValue
Number numericValue()Non-null if this field has a numeric value -
tokenStream
Creates the TokenStream used for indexing this field. If appropriate, implementations should use the given Analyzer to create the TokenStreams.- Parameters:
analyzer
- Analyzer that should be used to create the TokenStreams from- Returns:
- TokenStream value for indexing the document. Should always return a non-null value if the field is to be indexed
- Throws:
IOException
- Can be thrown while creating the TokenStream
-