org.apache.lucene.codecs.lucene50

## Class Lucene50FieldInfosFormat

- java.lang.Object
- - org.apache.lucene.codecs.FieldInfosFormat
  - - org.apache.lucene.codecs.lucene50.Lucene50FieldInfosFormat

-     public final class Lucene50FieldInfosFormat
      extends FieldInfosFormat

  Lucene 5.0 Field Infos format.

  Field names are stored in the field info file, with suffix `.fnm`.

  FieldInfos (.fnm) --> Header,FieldsCount, <FieldName,FieldNumber, FieldBits,DocValuesBits,DocValuesGen,Attributes> FieldsCount,Footer

  Data types:

  - Header --> `IndexHeader`
  - FieldsCount --> `VInt`
  - FieldName --> `String`
  - FieldBits, IndexOptions, DocValuesBits --> `Byte`
  - FieldNumber --> `VInt`
  - Attributes --> `Map<String,String>`
  - DocValuesGen --> `Int64`
  - Footer --> `CodecFooter`
  Field Descriptions:
  - FieldsCount: the number of fields in this file.
  - FieldName: name of the field as a UTF-8 String.
  - FieldNumber: the field's number. Note that unlike previous versions of Lucene, the fields are not numbered implicitly by their order in the file, instead explicitly.
  - FieldBits: a byte containing field options.
    - The low order bit (0x1) is one for fields that have term vectors stored, and zero for fields without term vectors.
    - If the second lowest order-bit is set (0x2), norms are omitted for the indexed field.
    - If the third lowest-order bit is set (0x4), payloads are stored for the indexed field.
  - IndexOptions: a byte containing index options.
    - 0: not indexed
    - 1: indexed as DOCS_ONLY
    - 2: indexed as DOCS_AND_FREQS
    - 3: indexed as DOCS_AND_FREQS_AND_POSITIONS
    - 4: indexed as DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS
  - DocValuesBits: a byte containing per-document value types. The type recorded as two four-bit integers, with the high-order bits representing `norms` options, and the low-order bits representing `DocValues` options. Each four-bit integer can be decoded as such:
    - 0: no DocValues for this field.
    - 1: NumericDocValues. (`DocValuesType.NUMERIC`)
    - 2: BinaryDocValues. (`DocValuesType#BINARY`)
    - 3: SortedDocValues. (`DocValuesType#SORTED`)
  - DocValuesGen is the generation count of the field's DocValues. If this is -1, there are no DocValues updates to that field. Anything above zero means there are updates stored by `DocValuesFormat`.
  - Attributes: a key-value map of codec-private attributes.
  WARNING: This API is experimental and might change in incompatible ways in the next release.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `Lucene50FieldInfosFormat()` Sole constructor.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `FieldInfos` | `read(Directory directory, SegmentInfo segmentInfo, String segmentSuffix, IOContext context)` Read the `FieldInfos` previously written with `FieldInfosFormat.write(org.apache.lucene.store.Directory, org.apache.lucene.index.SegmentInfo, java.lang.String, org.apache.lucene.index.FieldInfos, org.apache.lucene.store.IOContext)`.
    `void` | `write(Directory directory, SegmentInfo segmentInfo, String segmentSuffix, FieldInfos infos, IOContext context)` Writes the provided `FieldInfos` to the directory.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### Lucene50FieldInfosFormat

          public Lucene50FieldInfosFormat()

      Sole constructor.

  - ### Method Detail

    - #### read

          public FieldInfos read(Directory directory,
                                 SegmentInfo segmentInfo,
                                 String segmentSuffix,
                                 IOContext context)
                          throws IOException

      Description copied from class: `FieldInfosFormat`
      Read the `FieldInfos` previously written with `FieldInfosFormat.write(org.apache.lucene.store.Directory, org.apache.lucene.index.SegmentInfo, java.lang.String, org.apache.lucene.index.FieldInfos, org.apache.lucene.store.IOContext)`.
      Specified by:
        `read` in class `FieldInfosFormat`
      Throws:
        `IOException`

    - #### write

          public void write(Directory directory,
                            SegmentInfo segmentInfo,
                            String segmentSuffix,
                            FieldInfos infos,
                            IOContext context)
                     throws IOException

      Description copied from class: `FieldInfosFormat`
      Writes the provided `FieldInfos` to the directory.
      Specified by:
        `write` in class `FieldInfosFormat`
      Throws:
        `IOException`

Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.