code: public CRC32 recoverBlockToFileFromStripeInfo(
        FileSystem srcFs, Path srcPath, Block lostBlock, File localBlockFile, 
        long blockSize, long lostBlockOffset, long limit, 
        StripeInfo si, Context context) throws IOException {
      OutputStream out = null;
      try {
        out = new FileOutputStream(localBlockFile);
        CRC32 crc = null;
        if (checksumStore != null) {
          crc = new CRC32();
        }
        fixErasedBlockImpl(srcFs, srcPath, srcFs, null, true, blockSize,
                          lostBlockOffset, limit, false, out, 
                          context, crc, si, true, lostBlock);
        return crc;
      } finally {
        if (null != out) {
          out.close();
        }
      }
    }
docs: Recover a corrupt block to local file. Using the stripe information
  stored in the Stripe Store.
  
  @param srcFs The filesystem containing the source file.
  @param srcPath The damaged source file.
  @param lostBlock The missing/corrupted block
  @param localBlockFile The file to write the block to.
  @param blockSize The block size of the file.
  @param lostBlockOffset The start offset of the block in the file.
  @param limit The maximum number of bytes to be written out.
  @param si  The StripeInfo retrieved from Stripe Store.
  @param context
  @return
  @throws IOException