Package com.arjuna.ats.arjuna.state
Class InputBuffer
java.lang.Object
com.arjuna.ats.arjuna.state.InputBuffer
- Direct Known Subclasses:
InputObjectState
An InputBuffer is used to retrieve various Java types from a byte stream
created using an OutputBuffer. Similar to java serialization. However,
InputBuffers are compatible with OTSArjuna states.
- Since:
- JTS 1.0.
- Version:
- $Id: InputBuffer.java 2342 2006-03-30 13:06:17Z $
- Author:
- Mark Little (mark@arjuna.com)
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionCreate a new buffer.InputBuffer(byte[] b) Create our own copy of the byte array.InputBuffer(InputBuffer buff) Create a new buffer and copy the provided one. -
Method Summary
Modifier and TypeMethodDescriptionfinal byte[]buffer()Return the internal byte buffer.voidcopy(InputBuffer buff) Copy the existing buffer.final intlength()Return the length of the byte buffer.voidprint(PrintWriter strm) Print information about this instance.final booleanreread()Reset the read pointer for this buffer.final voidsetBuffer(byte[] b) Set the buffer to be used by this instance.final booleanUnpack a boolean from the stream.final byteUnpack a byte from the stream.final byte[]Unpack the next byte array from the stream.final charUnpack a character from the stream.final doubleUnpack a double from the stream.final floatUnpack a float from the stream.voidunpackFrom(InputBuffer buff) Unpack a buffer from the provided buffer, and initialise this instance with it.final intUnpack an integer from the stream.final longUnpack a long from the stream.final shortUnpack a short from the stream.final StringUnpack a String from the stream.final booleanvalid()Is the buffer valid?
-
Field Details
-
_valid
protected boolean _valid
-
-
Constructor Details
-
InputBuffer
public InputBuffer()Create a new buffer. -
InputBuffer
public InputBuffer(byte[] b) Create our own copy of the byte array. -
InputBuffer
Create a new buffer and copy the provided one.
-
-
Method Details
-
valid
public final boolean valid()Is the buffer valid? -
copy
Copy the existing buffer. -
length
public final int length()Return the length of the byte buffer. -
buffer
public final byte[] buffer()Return the internal byte buffer. -
setBuffer
public final void setBuffer(byte[] b) Set the buffer to be used by this instance. -
unpackByte
Unpack a byte from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
IOException
-
unpackBytes
Unpack the next byte array from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
IOException
-
unpackBoolean
Unpack a boolean from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
IOException
-
unpackChar
Unpack a character from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
IOException
-
unpackShort
Unpack a short from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
IOException
-
unpackInt
Unpack an integer from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
IOException
-
unpackLong
Unpack a long from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
IOException
-
unpackFloat
Unpack a float from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
IOException
-
unpackDouble
Unpack a double from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
IOException
-
unpackString
Unpack a String from the stream. If the next item in the buffer is not of the right type then an IOException is thrown. Currently different from the C++ version in that a distinct new instance will always be returned, rather than a reference to a previously returned object in the case of the "same" string.- Throws:
IOException
-
unpackFrom
Unpack a buffer from the provided buffer, and initialise this instance with it. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
IOException
-
reread
public final boolean reread()Reset the read pointer for this buffer. -
print
Print information about this instance.
-