org.jboss.marshalling
Class LimitedByteInput
java.lang.Object
java.io.InputStream
org.jboss.marshalling.SimpleByteInput
org.jboss.marshalling.ByteInputStream
org.jboss.marshalling.LimitedByteInput
- All Implemented Interfaces:
- Closeable, ByteInput
public class LimitedByteInput
- extends ByteInputStream
A limited byte input stream. Throws an exception if too many bytes are read.
|
Method Summary |
int |
read()
Reads the next byte of data from the input stream. |
int |
read(byte[] b,
int off,
int len)
Read some bytes from the input stream into the given array. |
long |
skip(long n)
Skips over and discards up to n bytes of data from this input stream. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
LimitedByteInput
public LimitedByteInput(ByteInput byteInput,
long limit)
- Create a new instance.
- Parameters:
byteInput - the byte input to read fromlimit - the maximum number of bytes to read
read
public int read()
throws IOException
- Reads the next byte of data from the input stream. If no byte is available because the end of the stream has
been reached, the value -1 is returned. This method blocks until input data is available, the end of the stream
is detected, or an exception is thrown.
- Specified by:
read in interface ByteInput- Overrides:
read in class ByteInputStream
- Returns:
- the next byte, or -1 if the end of stream has been reached
- Throws:
IOException - if an error occurs
read
public int read(byte[] b,
int off,
int len)
throws IOException
- Read some bytes from the input stream into the given array. Returns the number of bytes actually read (possibly
zero), or -1 if the end of stream has been reached.
- Specified by:
read in interface ByteInput- Overrides:
read in class ByteInputStream
- Parameters:
b - the destination arrayoff - the offset into the array into which data should be readlen - the number of bytes to attempt to fill in the destination array
- Returns:
- the number of bytes read (possibly zero), or -1 if the end of stream has been reached
- Throws:
IOException - if an error occurs
skip
public long skip(long n)
throws IOException
- Skips over and discards up to
n bytes of data from this input stream. If the end of stream is reached,
this method returns 0 in order to be consistent with InputStream.skip(long).
- Specified by:
skip in interface ByteInput- Overrides:
skip in class ByteInputStream
- Parameters:
n - the number of bytes to attempt to skip
- Returns:
- the number of bytes skipped
- Throws:
IOException - if an error occurs
Copyright © 2011 JBoss, a division of Red Hat, Inc.