org.apache.sysds.runtime.transform.decode

## Class DecoderRecode

- java.lang.Object
- - org.apache.sysds.runtime.transform.decode.Decoder
  - - org.apache.sysds.runtime.transform.decode.DecoderRecode

- All Implemented Interfaces:
    Externalizable, Serializable

      public class DecoderRecode
      extends Decoder

  Simple atomic decoder for recoded columns. This decoder builds internally inverted recode maps from the given frame meta data.
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `DecoderRecode()`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `FrameBlock` | `decode(MatrixBlock in, FrameBlock out)` Block decode API converting a matrix block into a frame block.
    `void` | `initMetaData(FrameBlock meta)`
    `static void` | `parseRecodeMapEntry(String entry, Pair<String,String> pair)` Parses a line of <token, ID, count> into <token, ID> pairs, where quoted tokens (potentially including separators) are supported.
    `void` | `readExternal(ObjectInput in)` Redirects the default java serialization via externalizable to our default hadoop writable serialization for efficient broadcast/rdd deserialization.
    `Decoder` | `subRangeDecoder(int colStart, int colEnd, int dummycodedOffset)` Returns a new Decoder that only handles a sub range of columns.
    `void` | `writeExternal(ObjectOutput out)` Redirects the default java serialization via externalizable to our default hadoop writable serialization for efficient broadcast/rdd serialization.

    - ### Methods inherited from class org.apache.sysds.runtime.transform.decode.Decoder

      `getColnames, getSchema, setColnames, updateIndexRanges`

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

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

- - ### Constructor Detail

    - #### DecoderRecode

          public DecoderRecode()

  - ### Method Detail

    - #### decode

          public FrameBlock decode(MatrixBlock in,
                                   FrameBlock out)

      Description copied from class: `Decoder`
      Block decode API converting a matrix block into a frame block.
      Specified by:
        `decode` in class `Decoder`
      Parameters:
        `in` - input matrix block
        `out` - output frame block
      Returns:
        returns given output frame block for convenience

    - #### subRangeDecoder

          public Decoder subRangeDecoder(int colStart,
                                         int colEnd,
                                         int dummycodedOffset)

      Description copied from class: `Decoder`
      Returns a new Decoder that only handles a sub range of columns. The sub-range refers to the columns after decoding.
      Overrides:
        `subRangeDecoder` in class `Decoder`
      Parameters:
        `colStart` - the start index of the sub-range (1-based, inclusive)
        `colEnd` - the end index of the sub-range (1-based, exclusive)
        `dummycodedOffset` - the offset of dummycoded segments before colStart
      Returns:
        a decoder of the same type, just for the sub-range

    - #### initMetaData

          public void initMetaData(FrameBlock meta)

      Specified by:
        `initMetaData` in class `Decoder`

    - #### parseRecodeMapEntry

          public static void parseRecodeMapEntry(String entry,
                                                 Pair<String,String> pair)

      Parses a line of <token, ID, count> into <token, ID> pairs, where quoted tokens (potentially including separators) are supported.
      Parameters:
        `entry` - entry line (token, ID, count)
        `pair` - token-ID pair

    - #### writeExternal

          public void writeExternal(ObjectOutput out)
                             throws IOException

      Description copied from class: `Decoder`
      Redirects the default java serialization via externalizable to our default hadoop writable serialization for efficient broadcast/rdd serialization.
      Specified by:
        `writeExternal` in interface `Externalizable`
      Overrides:
        `writeExternal` in class `Decoder`
      Parameters:
        `out` - object output
      Throws:
        `IOException` - if IOException occurs

    - #### readExternal

          public void readExternal(ObjectInput in)
                            throws IOException

      Description copied from class: `Decoder`
      Redirects the default java serialization via externalizable to our default hadoop writable serialization for efficient broadcast/rdd deserialization.
      Specified by:
        `readExternal` in interface `Externalizable`
      Overrides:
        `readExternal` in class `Decoder`
      Parameters:
        `in` - object input
      Throws:
        `IOException` - if IOException occur

Copyright © 2021 The Apache Software Foundation. All rights reserved.