Package org.apache.lucene.codecs.uniformsplit.sharedterms

## Class STBlockLine.Serializer

- java.lang.Object
- - org.apache.lucene.codecs.uniformsplit.BlockLine.Serializer
  - - org.apache.lucene.codecs.uniformsplit.sharedterms.STBlockLine.Serializer

- All Implemented Interfaces:
    `Accountable`
  Enclosing class:
    STBlockLine

      public static class STBlockLine.Serializer
      extends BlockLine.Serializer

  Reads block lines encoded incrementally, with all fields corresponding to the term of the line.

  This class extends `BlockLine.Serializer`, so it keeps a state of the previous term read to decode the next term.

- - ### Field Summary

    - ### Fields inherited from class org.apache.lucene.codecs.uniformsplit.BlockLine.Serializer

      `currentTerm`

    - ### Fields inherited from interface org.apache.lucene.util.Accountable

      `NULL_ACCOUNTABLE`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Serializer()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `int[]` | `readFieldIds​(DataInput termStatesInput, int numFields)` | Reads all the field ids in the current block line of the provided input.
    `void` | `readFieldTermStatesMap​(DataInput termStatesInput, DeltaBaseTermStateSerializer termStateSerializer, BlockHeader blockHeader, FieldInfos fieldInfos, Map<String,​BlockTermState> fieldTermStatesMap)` | Reads all the `BlockTermState` of all the field in the current block line of the provided input.
    `BlockTermState` | `readTermStateForField​(int fieldId, DataInput termStatesInput, DeltaBaseTermStateSerializer termStateSerializer, BlockHeader blockHeader, FieldInfos fieldInfos, BlockTermState reuse)` | Reads a single `BlockTermState` for the provided field in the current block line of the provided input.
    `void` | `writeLineTermStates​(DataOutput termStatesOutput, STBlockLine line, DeltaBaseTermStateSerializer encoder)` | Writes all the `BlockTermState` of the provided `STBlockLine` to the given output.

    - ### Methods inherited from class org.apache.lucene.codecs.uniformsplit.BlockLine.Serializer

      `numBitsToEncode, ramBytesUsed, readBytes, readIncrementallyEncodedTerm, readLine, writeIncrementallyEncodedTerm, writeLine, writeLineTermState`

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

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

    - ### Methods inherited from interface org.apache.lucene.util.Accountable

      `getChildResources`

- - ### Constructor Detail

    - #### Serializer

          public Serializer()

  - ### Method Detail

    - #### writeLineTermStates

          public void writeLineTermStates​(DataOutput termStatesOutput,
                                          STBlockLine line,
                                          DeltaBaseTermStateSerializer encoder)
                                   throws IOException

      Writes all the `BlockTermState` of the provided `STBlockLine` to the given output.
      Throws:
        `IOException`

    - #### readTermStateForField

          public BlockTermState readTermStateForField​(int fieldId,
                                                      DataInput termStatesInput,
                                                      DeltaBaseTermStateSerializer termStateSerializer,
                                                      BlockHeader blockHeader,
                                                      FieldInfos fieldInfos,
                                                      BlockTermState reuse)
                                               throws IOException

      Reads a single `BlockTermState` for the provided field in the current block line of the provided input.
      Parameters:
        `termStatesInput` - Data input to read the `BlockTermState` from.
        `blockHeader` - Current block header.
        `reuse` - A previous `BlockTermState` to reuse; or null to create a new one.
      Returns:
        The `BlockTermState` corresponding to the provided field id; or null if the field does not occur in the line.
      Throws:
        `IOException`

    - #### readFieldTermStatesMap

          public void readFieldTermStatesMap​(DataInput termStatesInput,
                                             DeltaBaseTermStateSerializer termStateSerializer,
                                             BlockHeader blockHeader,
                                             FieldInfos fieldInfos,
                                             Map<String,​BlockTermState> fieldTermStatesMap)
                                      throws IOException

      Reads all the `BlockTermState` of all the field in the current block line of the provided input.
      Parameters:
        `fieldTermStatesMap` - Map filled with the term states for each field. It is cleared first.
      Throws:
        `IOException`
      See Also:
        `readTermStateForField(int, org.apache.lucene.store.DataInput, org.apache.lucene.codecs.uniformsplit.DeltaBaseTermStateSerializer, org.apache.lucene.codecs.uniformsplit.BlockHeader, org.apache.lucene.index.FieldInfos, org.apache.lucene.codecs.BlockTermState)`

    - #### readFieldIds

          public int[] readFieldIds​(DataInput termStatesInput,
                                    int numFields)
                             throws IOException

      Reads all the field ids in the current block line of the provided input.
      Throws:
        `IOException`