Package org.apache.lucene.index
Class FieldInfo
- java.lang.Object
-
- org.apache.lucene.index.FieldInfo
-
public final class FieldInfo extends Object
Access to the Field Info file that describes document fields and whether or not they are indexed. Each segment has a separate Field Info file. Objects of this class are thread-safe for multiple readers, but only one thread can be adding documents at a time, with no other reader or writer threads accessing this object.
-
-
Constructor Summary
Constructors Constructor Description FieldInfo(String name, int number, boolean storeTermVector, boolean omitNorms, boolean storePayloads, IndexOptions indexOptions, DocValuesType docValues, long dvGen, Map<String,String> attributes, int pointDimensionCount, int pointIndexDimensionCount, int pointNumBytes, int vectorDimension, VectorEncoding vectorEncoding, VectorSimilarityFunction vectorSimilarityFunction, boolean softDeletesField, boolean isParentField)Sole constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Map<String,String>attributes()Returns internal codec attributes map.voidcheckConsistency()Check correctness of the FieldInfo optionsStringgetAttribute(String key)Get a codec attribute value, or null if it does not existlonggetDocValuesGen()Returns the docValues generation of this field, or -1 if no docValues updates exist for it.DocValuesTypegetDocValuesType()ReturnsDocValuesTypeof the docValues; this isDocValuesType.NONEif the field has no docvalues.intgetFieldNumber()Returns the field numberIndexOptionsgetIndexOptions()Returns IndexOptions for the field, or IndexOptions.NONE if the field is not indexedStringgetName()Returns name of this fieldintgetPointDimensionCount()Return point data dimension countintgetPointIndexDimensionCount()Return point data dimension countintgetPointNumBytes()Return number of bytes per dimensionintgetVectorDimension()Returns the number of dimensions of the vector valueVectorEncodinggetVectorEncoding()Returns the number of dimensions of the vector valueVectorSimilarityFunctiongetVectorSimilarityFunction()ReturnsVectorSimilarityFunctionfor the fieldbooleanhasNorms()Returns true if this field actually has any norms.booleanhasPayloads()Returns true if any payloads exist for this field.booleanhasVectors()Returns true if any term vectors exist for this field.booleanhasVectorValues()Returns whether any (numeric) vector values exist for this fieldbooleanisParentField()Returns true if this field is configured and used as the parent document field field.booleanisSoftDeletesField()Returns true if this field is configured and used as the soft-deletes field.booleanomitsNorms()Returns true if norms are explicitly omitted for this fieldStringputAttribute(String key, String value)Puts a codec attribute value.voidsetDocValuesType(DocValuesType type)Record that this field is indexed with docvalues, with the specified typevoidsetOmitsNorms()Omit norms for this field.voidsetPointDimensions(int dimensionCount, int indexDimensionCount, int numBytes)Record that this field is indexed with points, with the specified number of dimensions and bytes per dimension.
-
-
-
Field Detail
-
name
public final String name
Field's name
-
number
public final int number
Internal field number
-
-
Constructor Detail
-
FieldInfo
public FieldInfo(String name, int number, boolean storeTermVector, boolean omitNorms, boolean storePayloads, IndexOptions indexOptions, DocValuesType docValues, long dvGen, Map<String,String> attributes, int pointDimensionCount, int pointIndexDimensionCount, int pointNumBytes, int vectorDimension, VectorEncoding vectorEncoding, VectorSimilarityFunction vectorSimilarityFunction, boolean softDeletesField, boolean isParentField)
Sole constructor.- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
-
Method Detail
-
checkConsistency
public void checkConsistency()
Check correctness of the FieldInfo options- Throws:
IllegalArgumentException- if some options are incorrect
-
setPointDimensions
public void setPointDimensions(int dimensionCount, int indexDimensionCount, int numBytes)Record that this field is indexed with points, with the specified number of dimensions and bytes per dimension.
-
getPointDimensionCount
public int getPointDimensionCount()
Return point data dimension count
-
getPointIndexDimensionCount
public int getPointIndexDimensionCount()
Return point data dimension count
-
getPointNumBytes
public int getPointNumBytes()
Return number of bytes per dimension
-
getVectorDimension
public int getVectorDimension()
Returns the number of dimensions of the vector value
-
getVectorEncoding
public VectorEncoding getVectorEncoding()
Returns the number of dimensions of the vector value
-
getVectorSimilarityFunction
public VectorSimilarityFunction getVectorSimilarityFunction()
ReturnsVectorSimilarityFunctionfor the field
-
setDocValuesType
public void setDocValuesType(DocValuesType type)
Record that this field is indexed with docvalues, with the specified type
-
getIndexOptions
public IndexOptions getIndexOptions()
Returns IndexOptions for the field, or IndexOptions.NONE if the field is not indexed
-
getName
public String getName()
Returns name of this field- Returns:
- name
-
getFieldNumber
public int getFieldNumber()
Returns the field number- Returns:
- field number
-
getDocValuesType
public DocValuesType getDocValuesType()
ReturnsDocValuesTypeof the docValues; this isDocValuesType.NONEif the field has no docvalues.
-
getDocValuesGen
public long getDocValuesGen()
Returns the docValues generation of this field, or -1 if no docValues updates exist for it.
-
omitsNorms
public boolean omitsNorms()
Returns true if norms are explicitly omitted for this field
-
setOmitsNorms
public void setOmitsNorms()
Omit norms for this field.
-
hasNorms
public boolean hasNorms()
Returns true if this field actually has any norms.
-
hasPayloads
public boolean hasPayloads()
Returns true if any payloads exist for this field.
-
hasVectors
public boolean hasVectors()
Returns true if any term vectors exist for this field.
-
hasVectorValues
public boolean hasVectorValues()
Returns whether any (numeric) vector values exist for this field
-
getAttribute
public String getAttribute(String key)
Get a codec attribute value, or null if it does not exist
-
putAttribute
public String putAttribute(String key, String value)
Puts a codec attribute value.This is a key-value mapping for the field that the codec can use to store additional metadata, and will be available to the codec when reading the segment via
getAttribute(String)If a value already exists for the key in the field, it will be replaced with the new value. If the value of the attributes for a same field is changed between the documents, the behaviour after merge is undefined.
-
isSoftDeletesField
public boolean isSoftDeletesField()
Returns true if this field is configured and used as the soft-deletes field. SeeLiveIndexWriterConfig.softDeletesField
-
isParentField
public boolean isParentField()
Returns true if this field is configured and used as the parent document field field. SeeIndexWriterConfig.setParentField(String)
-
-