PositionedOutputStream (ORC Core 1.6.6 API)
Date: 2021-01-13

org.apache.orc.impl

## Class PositionedOutputStream

- java.lang.Object
- - java.io.OutputStream
  - - org.apache.orc.impl.PositionedOutputStream

- All Implemented Interfaces:
    Closeable, Flushable, AutoCloseable
  Direct Known Subclasses:
    OutStream

      public abstract class PositionedOutputStream
      extends OutputStream

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `PositionedOutputStream()`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract void` | `changeIv(Consumer<byte[]> modifier)` Change the current Initialization Vector (IV) for the encryption.
    `abstract long` | `getBufferSize()` Get the memory size currently allocated as buffer associated with this stream.
    `abstract void` | `getPosition(PositionRecorder recorder)` Record the current position to the recorder.

    - ### Methods inherited from class java.io.OutputStream

      `close, flush, write, write, write`

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

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

- - ### Constructor Detail

    - #### PositionedOutputStream

          public PositionedOutputStream()

  - ### Method Detail

    - #### getPosition

          public abstract void getPosition(PositionRecorder recorder)
                                    throws IOException

      Record the current position to the recorder.
      Parameters:
        `recorder` - the object that receives the position
      Throws:
        `IOException`

    - #### getBufferSize

          public abstract long getBufferSize()

      Get the memory size currently allocated as buffer associated with this stream.
      Returns:
        the number of bytes used by buffers.

    - #### changeIv

          public abstract void changeIv(Consumer<byte[]> modifier)

      Change the current Initialization Vector (IV) for the encryption. Has no effect if the stream is not encrypted.
      Parameters:
        `modifier` - a function to modify the IV in place

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