Class InputStreamWrapper

java.lang.Object
java.io.InputStream
com.mku.streams.InputStreamWrapper
All Implemented Interfaces:
Closeable, AutoCloseable

public class InputStreamWrapper extends InputStream
Wrapper stream of RandomAccessStream to a native InputStream implementation. Use this class to wrap any RandomAccessStream to a Java InputStream.
  • Constructor Details

    • InputStreamWrapper

      public InputStreamWrapper(RandomAccessStream stream)
      Instantiates an InputStreamWrapper from a RandomAccessStream.
      Parameters:
      stream - The stream that you want to wrap.
  • Method Details

    • read

      public int read() throws IOException
      Read a byte from the stream. Blocking is dependent on the base stream.
      Specified by:
      read in class InputStream
      Returns:
      -1 if there are no more bytes from the stream otherwise the next byte value (0-255).
      Throws:
      IOException - Thrown if there is an IO error.
    • read

      public int read(byte[] buffer, int offset, int count) throws IOException
      Read a sequance of bytes from the base stream into the buffer provided.
      Overrides:
      read in class InputStream
      Parameters:
      buffer - the buffer into which the data is read.
      offset - the start offset in array b at which the data is written.
      count - the maximum number of bytes to read.
      Returns:
      The number of bytes read.
      Throws:
      IOException - with an optional inner Exception if the base stream is a SalmonStream
    • close

      public void close() throws IOException
      Closes the base stream.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Overrides:
      close in class InputStream
      Throws:
      IOException - Thrown if there is an IO error.
    • reset

      public void reset() throws IOException
      Reset the stream.
      Overrides:
      reset in class InputStream
      Throws:
      IOException - Thrown if there is an IO error.
    • skip

      public long skip(long pos) throws IOException
      Skip number of bytes on the stream.
      Overrides:
      skip in class InputStream
      Parameters:
      pos - the number of bytes to be skipped.
      Returns:
      The number of bytes that were skipped.
      Throws:
      IOException - Thrown if there is an IO error.