Class FieldInfos

  • All Implemented Interfaces:
    Iterable<FieldInfo>

    public final class FieldInfos
    extends Object
    implements Iterable<FieldInfo>
    Collection of FieldInfos (accessible by number or by name).
    WARNING: This API is experimental and might change in incompatible ways in the next release.
    • Constructor Detail

      • FieldInfos

        public FieldInfos()
      • FieldInfos

        public FieldInfos​(Directory d,
                          String name)
                   throws IOException
        Construct a FieldInfos object using the directory and the name of the file IndexInput
        Parameters:
        d - The directory to open the IndexInput from
        name - The name of the file to open the IndexInput from in the Directory
        Throws:
        IOException
    • Method Detail

      • clone

        public Object clone()
        Returns a deep clone of this FieldInfos instance.
        Overrides:
        clone in class Object
      • add

        public void add​(Document doc)
        Adds field info for a Document.
      • hasProx

        public boolean hasProx()
        Returns true if any fields do not omitTermFreqAndPositions
      • add

        public void add​(String name,
                        boolean isIndexed)
        Calls 5 parameter add with false for all TermVector parameters.
        Parameters:
        name - The name of the Fieldable
        isIndexed - true if the field is indexed
        See Also:
        add(String, boolean, boolean)
      • add

        public void add​(String name,
                        boolean isIndexed,
                        boolean storeTermVector)
        Calls 5 parameter add with false for term vector positions and offsets.
        Parameters:
        name - The name of the field
        isIndexed - true if the field is indexed
        storeTermVector - true if the term vector should be stored
      • add

        public void add​(String name,
                        boolean isIndexed,
                        boolean storeTermVector,
                        boolean omitNorms)
        If the field is not yet known, adds it. If it is known, checks to make sure that the isIndexed flag is the same as was given previously for this field. If not - marks it as being indexed. Same goes for the TermVector parameters.
        Parameters:
        name - The name of the field
        isIndexed - true if the field is indexed
        storeTermVector - true if the term vector should be stored
        omitNorms - true if the norms for the indexed field should be omitted
      • add

        public FieldInfo add​(String name,
                             boolean isIndexed,
                             boolean storeTermVector,
                             boolean omitNorms,
                             boolean storePayloads,
                             FieldInfo.IndexOptions indexOptions)
        If the field is not yet known, adds it. If it is known, checks to make sure that the isIndexed flag is the same as was given previously for this field. If not - marks it as being indexed. Same goes for the TermVector parameters.
        Parameters:
        name - The name of the field
        isIndexed - true if the field is indexed
        storeTermVector - true if the term vector should be stored
        omitNorms - true if the norms for the indexed field should be omitted
        storePayloads - true if payloads should be stored for this field
        indexOptions - if term freqs should be omitted for this field
      • fieldNumber

        public int fieldNumber​(String fieldName)
        lookup the number of a field by name.
        Parameters:
        fieldName - field's name
        Returns:
        number of field, or -1 if it does not exist.
      • fieldName

        public String fieldName​(int fieldNumber)
        Return the fieldName identified by its number.
        Parameters:
        fieldNumber -
        Returns:
        the fieldName or an empty string when the field with the given number doesn't exist.
      • fieldInfo

        public FieldInfo fieldInfo​(int fieldNumber)
        Return the fieldinfo object referenced by the fieldNumber.
        Parameters:
        fieldNumber -
        Returns:
        the FieldInfo object or null when the given fieldNumber doesn't exist.
      • size

        public int size()
        Returns:
        number of fields
      • hasVectors

        public boolean hasVectors()
        Returns:
        true if at least one field has any vectors