Package com.arjuna.ats.arjuna.state
Class InputBuffer
- java.lang.Object
-
- com.arjuna.ats.arjuna.state.InputBuffer
-
- Direct Known Subclasses:
InputObjectState
public class InputBuffer extends java.lang.ObjectAn 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 Modifier and Type Field Description protected boolean_valid
-
Constructor Summary
Constructors Constructor Description InputBuffer()Create 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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description byte[]buffer()Return the internal byte buffer.voidcopy(InputBuffer buff)Copy the existing buffer.intlength()Return the length of the byte buffer.voidprint(java.io.PrintWriter strm)Print information about this instance.booleanreread()Reset the read pointer for this buffer.voidsetBuffer(byte[] b)Set the buffer to be used by this instance.booleanunpackBoolean()Unpack a boolean from the stream.byteunpackByte()Unpack a byte from the stream.byte[]unpackBytes()Unpack the next byte array from the stream.charunpackChar()Unpack a character from the stream.doubleunpackDouble()Unpack a double from the stream.floatunpackFloat()Unpack a float from the stream.voidunpackFrom(InputBuffer buff)Unpack a buffer from the provided buffer, and initialise this instance with it.intunpackInt()Unpack an integer from the stream.longunpackLong()Unpack a long from the stream.shortunpackShort()Unpack a short from the stream.java.lang.StringunpackString()Unpack a String from the stream.booleanvalid()Is the buffer valid?
-
-
-
Constructor Detail
-
InputBuffer
public InputBuffer()
Create a new buffer.
-
InputBuffer
public InputBuffer(byte[] b)
Create our own copy of the byte array.
-
InputBuffer
public InputBuffer(InputBuffer buff)
Create a new buffer and copy the provided one.
-
-
Method Detail
-
valid
public final boolean valid()
Is the buffer valid?
-
copy
public void copy(InputBuffer buff)
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
public final byte unpackByte() throws java.io.IOExceptionUnpack a byte from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
java.io.IOException
-
unpackBytes
public final byte[] unpackBytes() throws java.io.IOExceptionUnpack 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:
java.io.IOException
-
unpackBoolean
public final boolean unpackBoolean() throws java.io.IOExceptionUnpack a boolean from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
java.io.IOException
-
unpackChar
public final char unpackChar() throws java.io.IOExceptionUnpack a character from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
java.io.IOException
-
unpackShort
public final short unpackShort() throws java.io.IOExceptionUnpack a short from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
java.io.IOException
-
unpackInt
public final int unpackInt() throws java.io.IOExceptionUnpack an integer from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
java.io.IOException
-
unpackLong
public final long unpackLong() throws java.io.IOExceptionUnpack a long from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
java.io.IOException
-
unpackFloat
public final float unpackFloat() throws java.io.IOExceptionUnpack a float from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
java.io.IOException
-
unpackDouble
public final double unpackDouble() throws java.io.IOExceptionUnpack a double from the stream. If the next item in the buffer is not of the right type then an IOException is thrown.- Throws:
java.io.IOException
-
unpackString
public final java.lang.String unpackString() throws java.io.IOExceptionUnpack 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:
java.io.IOException
-
unpackFrom
public void unpackFrom(InputBuffer buff) throws java.io.IOException
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:
java.io.IOException
-
reread
public final boolean reread()
Reset the read pointer for this buffer.
-
print
public void print(java.io.PrintWriter strm)
Print information about this instance.
-
-