Package com.mku.streams
Class InputStreamWrapper
- java.lang.Object
-
- java.io.InputStream
-
- com.mku.streams.InputStreamWrapper
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
public class InputStreamWrapper extends java.io.InputStream
InputStream wrapper for RandomAccessStream. Use this class to wrap any RandomAccessStream to a Java InputStream to use with 3rd party libraries.
-
-
Constructor Summary
Constructors Constructor Description InputStreamWrapper(RandomAccessStream stream)
Instantiates an InputStreamWrapper from a RandomAccessStream.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Closes the base stream.int
read()
Read a byte from the stream.int
read(byte[] buffer, int offset, int count)
Read a sequance of bytes from the base stream into the buffer provided.void
reset()
Reset the stream.long
skip(long pos)
Skip number of bytes on the stream.
-
-
-
Constructor Detail
-
InputStreamWrapper
public InputStreamWrapper(RandomAccessStream stream)
Instantiates an InputStreamWrapper from a RandomAccessStream.- Parameters:
stream
- The stream that you want to wrap.
-
-
Method Detail
-
read
public int read() throws java.io.IOException
Read a byte from the stream. Blocking is dependent on the base stream.- Specified by:
read
in classjava.io.InputStream
- Returns:
- -1 if there are no more bytes from the stream otherwise the next byte value (0-255).
- Throws:
java.io.IOException
- Thrown if there is an IO error.
-
read
public int read(byte[] buffer, int offset, int count) throws java.io.IOException
Read a sequance of bytes from the base stream into the buffer provided.- Overrides:
read
in classjava.io.InputStream
- Parameters:
buffer
- the buffer into which the data is read.offset
- the start offset in arrayb
at which the data is written.count
- the maximum number of bytes to read.- Returns:
- The number of bytes read.
- Throws:
java.io.IOException
- with an optional inner Exception if the base stream is a AesStream
-
close
public void close() throws java.io.IOException
Closes the base stream.- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Overrides:
close
in classjava.io.InputStream
- Throws:
java.io.IOException
- Thrown if there is an IO error.
-
reset
public void reset() throws java.io.IOException
Reset the stream.- Overrides:
reset
in classjava.io.InputStream
- Throws:
java.io.IOException
- Thrown if there is an IO error.
-
skip
public long skip(long pos) throws java.io.IOException
Skip number of bytes on the stream.- Overrides:
skip
in classjava.io.InputStream
- Parameters:
pos
- the number of bytes to be skipped.- Returns:
- The number of bytes that were skipped.
- Throws:
java.io.IOException
- Thrown if there is an IO error.
-
-