ErasureDecodingStep (Apache Hadoop Common 3.5.0 API)
Description: declaration: package: org.apache.hadoop.io.erasurecode.coder, class: ErasureDecodingStep

Package org.apache.hadoop.io.erasurecode.coder

# Class ErasureDecodingStep

java.lang.Object
org.apache.hadoop.io.erasurecode.coder.ErasureDecodingStep

All Implemented Interfaces:
  `ErasureCodingStep`

@Private public class ErasureDecodingStep extends Object implements ErasureCodingStep
Erasure decoding step, a wrapper of all the necessary information to perform a decoding step involved in the whole process of decoding a block group.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ErasureDecodingStep(ECBlock[] inputBlocks, int[] erasedIndexes, ECBlock[] outputBlocks, RawErasureDecoder rawDecoder)`
  The constructor with all the necessary info.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `finish()`
  Notify erasure coder that all the chunks of input blocks are processed so the coder can be able to update internal states, considering next step.
  `ECBlock[]`
  `getInputBlocks()`
  Input blocks of readable data involved in this step, may be data blocks or parity blocks.
  `ECBlock[]`
  `getOutputBlocks()`
  Output blocks of writable buffers involved in this step, may be data blocks or parity blocks.
  `void`
  `performCoding(ECChunk[] inputChunks, ECChunk[] outputChunks)`
  Perform encoding or decoding given the input chunks, and generated results will be written to the output chunks.

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

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

- ## Constructor Details

  - ### ErasureDecodingStep

    public ErasureDecodingStep(ECBlock[] inputBlocks, int[] erasedIndexes, ECBlock[] outputBlocks, RawErasureDecoder rawDecoder)
    The constructor with all the necessary info.
    Parameters:
      `inputBlocks` - inputBlocks.
      `erasedIndexes` - the indexes of erased blocks in inputBlocks array
      `outputBlocks` - outputBlocks.
      `rawDecoder` - rawDecoder.

- ## Method Details

  - ### performCoding

    public void performCoding(ECChunk[] inputChunks, ECChunk[] outputChunks) throws IOException
    Description copied from interface: `ErasureCodingStep`
    Perform encoding or decoding given the input chunks, and generated results will be written to the output chunks.
    Specified by:
      `performCoding` in interface `ErasureCodingStep`
    Parameters:
      `inputChunks` - inputChunks.
      `outputChunks` - outputChunks.
    Throws:
      `IOException` - raised on errors performing I/O.

  - ### getInputBlocks

    public ECBlock[] getInputBlocks()
    Description copied from interface: `ErasureCodingStep`
    Input blocks of readable data involved in this step, may be data blocks or parity blocks.
    Specified by:
      `getInputBlocks` in interface `ErasureCodingStep`
    Returns:
      input blocks

  - ### getOutputBlocks

    public ECBlock[] getOutputBlocks()
    Description copied from interface: `ErasureCodingStep`
    Output blocks of writable buffers involved in this step, may be data blocks or parity blocks.
    Specified by:
      `getOutputBlocks` in interface `ErasureCodingStep`
    Returns:
      output blocks

  - ### finish

    public void finish()
    Description copied from interface: `ErasureCodingStep`
    Notify erasure coder that all the chunks of input blocks are processed so the coder can be able to update internal states, considering next step.
    Specified by:
      `finish` in interface `ErasureCodingStep`