Package com.tangosol.io
Class AbstractByteArrayReadBuffer.ByteArrayBufferInput
- java.lang.Object
-
- java.io.InputStream
-
- com.tangosol.io.AbstractReadBuffer.AbstractBufferInput
-
- com.tangosol.io.AbstractByteArrayReadBuffer.ByteArrayBufferInput
-
- All Implemented Interfaces:
com.oracle.coherence.common.io.InputStreaming,InputStreaming,ReadBuffer.BufferInput,Closeable,DataInput,AutoCloseable
- Enclosing class:
- AbstractByteArrayReadBuffer
public final class AbstractByteArrayReadBuffer.ByteArrayBufferInput extends AbstractReadBuffer.AbstractBufferInput
This is a simple implementation of the BufferInput interface on top of a byte array.This implementation extends InputStream, but only so that it can be passed to anything that takes an InputStream.
-
-
Constructor Summary
Constructors Constructor Description ByteArrayBufferInput()Default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected StringconvertUTF(int of, int cb)Convert a UTF-8 encoded section of the binary stream into a String.intread()Read the next byte of data from the InputStream.intread(byte[] ab, int of, int cb)Read up tocbbytes from the input stream and store them into the passed arrayabstarting at offsetof.bytereadByte()Read a byte value.intreadInt()Read an int value.longreadLong()Read a long value.intreadPackedInt()Read an int value using a variable-length storage format as described byWriteBuffer.BufferOutput.writePackedInt(int).longreadPackedLong()Read a long value using a variable-length storage format as described byWriteBuffer.BufferOutput.writePackedLong(long).intreadUnsignedShort()Read an unsigned short value.-
Methods inherited from class com.tangosol.io.AbstractReadBuffer.AbstractBufferInput
adjustOffsetInternal, available, close, getBuffer, getCharBuf, getMarkInternal, getObjectInputFilter, getOffset, mark, markSupported, read, readBoolean, readBuffer, readChar, readDouble, readFloat, readFully, readFully, readLine, readSafeUTF, readShort, readUnsignedByte, readUTF, readUTF, reset, setMarkInternal, setObjectInputFilter, setOffset, setOffsetInternal, skip, skipBytes
-
Methods inherited from class java.io.InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, transferTo
-
-
-
-
Method Detail
-
read
public int read() throws IOExceptionRead the next byte of data from the InputStream. The value byte is returned as anintin the range0to255. If the end of the stream has been reached, the value-1is returned.This method blocks until input data is available, the end of the stream is detected, or an exception is thrown.
- Specified by:
readin interfacecom.oracle.coherence.common.io.InputStreaming- Overrides:
readin classAbstractReadBuffer.AbstractBufferInput- Returns:
- the next byte of data, or
-1if the end of the stream has been reached - Throws:
IOException- if an I/O error occurs
-
read
public int read(byte[] ab, int of, int cb) throws IOExceptionRead up tocbbytes from the input stream and store them into the passed arrayabstarting at offsetof. The number of bytes actually read is returned.This method blocks until input data is available, the end of the stream is detected, or an exception is thrown.
- Specified by:
readin interfacecom.oracle.coherence.common.io.InputStreaming- Overrides:
readin classAbstractReadBuffer.AbstractBufferInput- Parameters:
ab- the array to store the bytes which are read from the streamof- the offset into the array that the read bytes will be storedcb- the maximum number of bytes to read- Returns:
- the number of bytes read from the stream, or
-1if no bytes were read from the stream because the end of the stream had been reached - Throws:
IOException- if an I/O error occurs
-
readByte
public byte readByte() throws IOExceptionRead a byte value.This method is the counterpart for the
DataOutput.writeByte(int)method.- Specified by:
readBytein interfaceDataInput- Specified by:
readBytein interfaceReadBuffer.BufferInput- Overrides:
readBytein classAbstractReadBuffer.AbstractBufferInput- Returns:
- a
bytevalue - Throws:
EOFException- if the value could not be read because no more data remains to be readIOException- if an I/O error occurs
-
readUnsignedShort
public int readUnsignedShort() throws IOExceptionRead an unsigned short value.This method is the counterpart for the
DataOutput.writeShort(int)method when it is used with unsigned 16-bit values.- Specified by:
readUnsignedShortin interfaceDataInput- Specified by:
readUnsignedShortin interfaceReadBuffer.BufferInput- Overrides:
readUnsignedShortin classAbstractReadBuffer.AbstractBufferInput- Returns:
- an
intvalue in the range of 0x0000 to 0xFFFF - Throws:
EOFException- if the value could not be read because no more data remains to be readIOException- if an I/O error occurs
-
readInt
public int readInt() throws IOExceptionRead an int value.This method is the counterpart for the
DataOutput.writeInt(int)method.- Specified by:
readIntin interfaceDataInput- Specified by:
readIntin interfaceReadBuffer.BufferInput- Overrides:
readIntin classAbstractReadBuffer.AbstractBufferInput- Returns:
- an
intvalue - Throws:
EOFException- if the value could not be read because no more data remains to be readIOException- if an I/O error occurs
-
readLong
public long readLong() throws IOExceptionRead a long value.This method is the counterpart for the
DataOutput.writeLong(long)method.- Specified by:
readLongin interfaceDataInput- Specified by:
readLongin interfaceReadBuffer.BufferInput- Overrides:
readLongin classAbstractReadBuffer.AbstractBufferInput- Returns:
- a
longvalue - Throws:
EOFException- if the value could not be read because no more data remains to be readIOException- if an I/O error occurs
-
readPackedInt
public int readPackedInt() throws IOExceptionRead an int value using a variable-length storage format as described byWriteBuffer.BufferOutput.writePackedInt(int).- Specified by:
readPackedIntin interfaceReadBuffer.BufferInput- Overrides:
readPackedIntin classAbstractReadBuffer.AbstractBufferInput- Returns:
- an int value
- Throws:
IOException- if an I/O error occurs
-
readPackedLong
public long readPackedLong() throws IOExceptionRead a long value using a variable-length storage format as described byWriteBuffer.BufferOutput.writePackedLong(long).- Specified by:
readPackedLongin interfaceReadBuffer.BufferInput- Overrides:
readPackedLongin classAbstractReadBuffer.AbstractBufferInput- Returns:
- a long value
- Throws:
IOException- if an I/O error occurs
-
convertUTF
protected String convertUTF(int of, int cb) throws IOException
Convert a UTF-8 encoded section of the binary stream into a String.- Overrides:
convertUTFin classAbstractReadBuffer.AbstractBufferInput- Parameters:
of- the offset within the streamcb- the length in bytes within the stream- Returns:
- the String value
- Throws:
IOException- if an I/O or conversion exception occurs, such as UTFDataFormatException
-
-