Package org.apache.lucene.index
Class FieldInfos
- java.lang.Object
-
- org.apache.lucene.index.FieldInfos
-
- All Implemented Interfaces:
java.lang.Iterable<FieldInfo>
- Direct Known Subclasses:
PerFieldMergeState.FilterFieldInfos
public class FieldInfos extends java.lang.Object implements java.lang.Iterable<FieldInfo>
Collection ofFieldInfos (accessible by number or by name).
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static classFieldInfos.Builder(package private) static classFieldInfos.FieldDimensions(package private) static classFieldInfos.FieldNumbers
-
Field Summary
Fields Modifier and Type Field Description private java.util.HashMap<java.lang.String,FieldInfo>byNameprivate FieldInfo[]byNumberstatic FieldInfosEMPTYAn instance without any fields.private booleanhasDocValuesprivate booleanhasFreqprivate booleanhasNormsprivate booleanhasOffsetsprivate booleanhasPayloadsprivate booleanhasPointValuesprivate booleanhasProxprivate booleanhasVectorsprivate java.lang.StringsoftDeletesFieldprivate java.util.Collection<FieldInfo>values
-
Constructor Summary
Constructors Constructor Description FieldInfos(FieldInfo[] infos)Constructs a new FieldInfos from an array of FieldInfo objects
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description FieldInfofieldInfo(int fieldNumber)Return the fieldinfo object referenced by the fieldNumber.FieldInfofieldInfo(java.lang.String fieldName)Return the fieldinfo object referenced by the field namestatic java.util.Collection<java.lang.String>getIndexedFields(IndexReader reader)Returns a set of names of fields that have a terms index.static FieldInfosgetMergedFieldInfos(IndexReader reader)Call this to get the (merged) FieldInfos for a composite reader.java.lang.StringgetSoftDeletesField()Returns the soft-deletes field name if exists; otherwise returns nullbooleanhasDocValues()Returns true if any fields have DocValuesbooleanhasFreq()Returns true if any fields have freqsbooleanhasNorms()Returns true if any fields have normsbooleanhasOffsets()Returns true if any fields have offsetsbooleanhasPayloads()Returns true if any fields have payloadsbooleanhasPointValues()Returns true if any fields have PointValuesbooleanhasProx()Returns true if any fields have positionsbooleanhasVectors()Returns true if any fields have vectorsjava.util.Iterator<FieldInfo>iterator()Returns an iterator over all the fieldinfo objects present, ordered by ascending field numberintsize()Returns the number of fields
-
-
-
Field Detail
-
EMPTY
public static final FieldInfos EMPTY
An instance without any fields.
-
hasFreq
private final boolean hasFreq
-
hasProx
private final boolean hasProx
-
hasPayloads
private final boolean hasPayloads
-
hasOffsets
private final boolean hasOffsets
-
hasVectors
private final boolean hasVectors
-
hasNorms
private final boolean hasNorms
-
hasDocValues
private final boolean hasDocValues
-
hasPointValues
private final boolean hasPointValues
-
softDeletesField
private final java.lang.String softDeletesField
-
byNumber
private final FieldInfo[] byNumber
-
byName
private final java.util.HashMap<java.lang.String,FieldInfo> byName
-
values
private final java.util.Collection<FieldInfo> values
-
-
Constructor Detail
-
FieldInfos
public FieldInfos(FieldInfo[] infos)
Constructs a new FieldInfos from an array of FieldInfo objects
-
-
Method Detail
-
getMergedFieldInfos
public static FieldInfos getMergedFieldInfos(IndexReader reader)
Call this to get the (merged) FieldInfos for a composite reader.NOTE: the returned field numbers will likely not correspond to the actual field numbers in the underlying readers, and codec metadata (
FieldInfo.getAttribute(String)will be unavailable.
-
getIndexedFields
public static java.util.Collection<java.lang.String> getIndexedFields(IndexReader reader)
Returns a set of names of fields that have a terms index. The order is undefined.
-
hasFreq
public boolean hasFreq()
Returns true if any fields have freqs
-
hasProx
public boolean hasProx()
Returns true if any fields have positions
-
hasPayloads
public boolean hasPayloads()
Returns true if any fields have payloads
-
hasOffsets
public boolean hasOffsets()
Returns true if any fields have offsets
-
hasVectors
public boolean hasVectors()
Returns true if any fields have vectors
-
hasNorms
public boolean hasNorms()
Returns true if any fields have norms
-
hasDocValues
public boolean hasDocValues()
Returns true if any fields have DocValues
-
hasPointValues
public boolean hasPointValues()
Returns true if any fields have PointValues
-
getSoftDeletesField
public java.lang.String getSoftDeletesField()
Returns the soft-deletes field name if exists; otherwise returns null
-
size
public int size()
Returns the number of fields
-
iterator
public java.util.Iterator<FieldInfo> iterator()
Returns an iterator over all the fieldinfo objects present, ordered by ascending field number- Specified by:
iteratorin interfacejava.lang.Iterable<FieldInfo>
-
fieldInfo
public FieldInfo fieldInfo(java.lang.String fieldName)
Return the fieldinfo object referenced by the field name- Returns:
- the FieldInfo object or null when the given fieldName doesn't exist.
-
fieldInfo
public FieldInfo fieldInfo(int fieldNumber)
Return the fieldinfo object referenced by the fieldNumber.- Parameters:
fieldNumber- field's number.- Returns:
- the FieldInfo object or null when the given fieldNumber doesn't exist.
- Throws:
java.lang.IllegalArgumentException- if fieldNumber is negative
-
-