|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--java.io.InputStream | +--java.io.ByteArrayInputStream | +--com.ericsson.otp.erlang.OtpInputStream
Provides a stream for decoding Erlang terms from external format.
Note that this class is not synchronized, if you need synchronization you must provide it yourself.
Fields inherited from class java.io.ByteArrayInputStream |
buf, count, mark, pos |
Constructor Summary | |
OtpInputStream(byte[] buf)
Create a stream from a buffer containing encoded Erlang terms. |
|
OtpInputStream(byte[] buf,
int offset,
int length)
Create a stream from a buffer containing encoded Erlang terms at the given offset and length. |
Method Summary | |
static long |
byte_array_to_long(byte[] b,
boolean unsigned)
|
int |
getPos()
Get the current position in the stream. |
int |
peek()
Look ahead one position in the stream without consuming the byte found there. |
OtpErlangObject |
read_any()
Read an arbitrary Erlang term from the stream. |
java.lang.String |
read_atom()
Read an Erlang atom from the stream. |
byte[] |
read_binary()
Read an Erlang binary from the stream. |
byte[] |
read_bitstr(int[] pad_bits)
Read an Erlang bitstr from the stream. |
boolean |
read_boolean()
Read an Erlang atom from the stream and interpret the value as a boolean. |
byte |
read_byte()
Read one byte from the stream. |
char |
read_char()
Read a character from the stream. |
OtpErlangObject |
read_compressed()
Read a compressed term from the stream |
double |
read_double()
Read an Erlang float from the stream. |
float |
read_float()
Read an Erlang float from the stream. |
int |
read_int()
Read an integer from the stream. |
byte[] |
read_integer_byte_array()
Read an integer from the stream. |
int |
read_list_head()
Read a list header from the stream. |
long |
read_long()
Read a long from the stream. |
long |
read_long(boolean unsigned)
|
int |
read_nil()
Read an empty list from the stream. |
OtpErlangPid |
read_pid()
Read an Erlang PID from the stream. |
OtpErlangPort |
read_port()
Read an Erlang port from the stream. |
OtpErlangRef |
read_ref()
Read an Erlang reference from the stream. |
short |
read_short()
Read a short from the stream. |
java.lang.String |
read_string()
Read a string from the stream. |
int |
read_tuple_head()
Read a tuple header from the stream. |
int |
read_uint()
Read an unsigned integer from the stream. |
long |
read_ulong()
Read an unsigned long from the stream. |
short |
read_ushort()
Read an unsigned short from the stream. |
int |
read1()
Read a one byte integer from the stream. |
int |
read2BE()
Read a two byte big endian integer from the stream. |
int |
read2LE()
Read a two byte little endian integer from the stream. |
int |
read4BE()
Read a four byte big endian integer from the stream. |
int |
read4LE()
Read a four byte little endian integer from the stream. |
long |
readBE(int n)
Read a bigendian integer from the stream. |
long |
readLE(int n)
Read a little endian integer from the stream. |
int |
readN(byte[] buf)
Read an array of bytes from the stream. |
int |
readN(byte[] buf,
int off,
int len)
Read an array of bytes from the stream. |
int |
setPos(int pos)
Set the current position in the stream. |
Methods inherited from class java.io.ByteArrayInputStream |
available, close, mark, markSupported, read, read, reset, skip |
Methods inherited from class java.io.InputStream |
read |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public OtpInputStream(byte[] buf)
public OtpInputStream(byte[] buf, int offset, int length)
Method Detail |
public int getPos()
public int setPos(int pos)
pos
- the position to move to in the stream. If pos
indicates a position beyond the end of the stream, the position
is move to the end of the stream instead. If pos is negative, the
position is moved to the beginning of the stream instead.public int readN(byte[] buf) throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next byte cannot be
read.public int readN(byte[] buf, int off, int len) throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next byte cannot be
read.public int peek() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next byte cannot be
read.public int read1() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next byte cannot be
read.public int read2BE() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next byte cannot be
read.public int read4BE() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next byte cannot be
read.public int read2LE() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next byte cannot be
read.public int read4LE() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next byte cannot be
read.public long readLE(int n) throws OtpErlangDecodeException
n
- the number of bytes to readOtpErlangDecodeException
- if the next byte cannot be
read.public long readBE(int n) throws OtpErlangDecodeException
n
- the number of bytes to readOtpErlangDecodeException
- if the next byte cannot be
read.public boolean read_boolean() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not an atom.public java.lang.String read_atom() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not an atom.public byte[] read_binary() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not a binary.public byte[] read_bitstr(int[] pad_bits) throws OtpErlangDecodeException
pad_bits
- an int array whose first element will
be set to the number of pad bits in the last byte.OtpErlangDecodeException
- if the next term in the
stream is not a bitstr.public float read_float() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not a float.public double read_double() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not a float.public byte read_byte() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next byte cannot be
read.public char read_char() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not an integer that can be represented as a char.public int read_uint() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream can not be represented as a positive integer.public int read_int() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream can not be represented as an integer.public short read_ushort() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream can not be represented as a positive short.public short read_short() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream can not be represented as a short.public long read_ulong() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream can not be represented as a positive long.public long read_long() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream can not be represented as a long.public long read_long(boolean unsigned) throws OtpErlangDecodeException
public byte[] read_integer_byte_array() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not an integer.public static long byte_array_to_long(byte[] b, boolean unsigned) throws OtpErlangDecodeException
public int read_list_head() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not a list.public int read_tuple_head() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not a tuple.public int read_nil() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not an empty list.public OtpErlangPid read_pid() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not an Erlang PID.public OtpErlangPort read_port() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not an Erlang port.public OtpErlangRef read_ref() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not an Erlang reference.public java.lang.String read_string() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not a string.public OtpErlangObject read_compressed() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the next term in the
stream is not a compressed term.public OtpErlangObject read_any() throws OtpErlangDecodeException
OtpErlangDecodeException
- if the stream does not
contain a known Erlang type at the next position.
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |