Muscle Java API: muscle::util::serialization::Xdr Class Reference

muscle::util::serialization::Xdr Class Reference

Inheritance diagram for muscle::util::serialization::Xdr:

muscle::util::serialization::XdrDecodingStream muscle::util::serialization::XdrEncodingStream

List of all members.


Public Member Functions

 Xdr (SocketChannel channel, int size)
 Xdr (SocketChannel channel, ByteBuffer body)
void beginDecoding () throws IOException
void endDecoding () throws IOException
void beginEncoding ()
void endEncoding () throws IOException
int xdrDecodeInt () throws IOException
int[] xdrDecodeIntVector () throws IOException
long[] xdrDecodeLongVector () throws IOException
float xdrDecodeFloat () throws IOException
double xdrDecodeDouble () throws IOException
double[] xdrDecodeDoubleVector () throws IOException
double[] xdrDecodeDoubleFixedVector (int length) throws IOException
float[] xdrDecodeFloatVector () throws IOException
float[] xdrDecodeFloatFixedVector (int length) throws IOException
void xdrDecodeOpaque (byte[] buf, int offset, int len) throws IOException
void xdrDecodeOpaque (byte[] buf, int len) throws IOException
byte[] xdrDecodeOpaque (int len) throws IOException
byte[] xdrDecodeDynamicOpaque () throws IOException
String xdrDecodeString () throws IOException
boolean xdrDecodeBoolean () throws IOException
long xdrDecodeLong () throws IOException
ByteBuffer xdrDecodeByteBuffer () throws IOException
byte[] xdrDecodeByteVector () throws IOException
byte[] xdrDecodeByteFixedVector (int length) throws IOException
byte xdrDecodeByte () throws IOException
short xdrDecodeShort () throws IOException
short[] xdrDecodeShortVector () throws IOException
short[] xdrDecodeShortFixedVector (int length) throws IOException
void xdrEncodeInt (int value)
ByteBuffer asBuffer ()
void xdrEncodeIntVector (int[] values)
void xdrEncodeLongVector (long[] values)
void xdrEncodeFloat (float value)
void xdrEncodeDouble (double value)
void xdrEncodeFloatVector (float[] value)
void xdrEncodeFloatFixedVector (float[] value, int length)
void xdrEncodeDoubleVector (double[] value)
void xdrEncodeDoubleFixedVector (double[] value, int length)
void xdrEncodeString (String string)
void xdrEncodeOpaque (byte[] bytes, int offset, int len)
void xdrEncodeOpaque (byte[] bytes, int len)
void xdrEncodeDynamicOpaque (byte[] opaque)
void xdrEncodeBoolean (boolean bool)
void xdrEncodeLong (long value)
void xdrEncodeByteBuffer (ByteBuffer buf)
void xdrEncodeByteVector (byte[] value)
void xdrEncodeByteFixedVector (byte[] value, int length)
void xdrEncodeByte (byte value)
void xdrEncodeShort (short value)
void xdrEncodeShortVector (short[] value)
void xdrEncodeShortFixedVector (short[] value, int length)
void xdrEncodeBooleanVector (boolean[] bool)
void xdrEncodeStringVector (String[] str)
void close ()
boolean[] xdrDecodeBooleanVector () throws IOException
String[] xdrDecodeStringVector () throws IOException

Static Public Attributes

static final int MAX_XDR_SIZE = 512 * 1024

Protected Attributes

final ByteBuffer buffer
final SocketChannel channel

Constructor & Destructor Documentation

muscle::util::serialization::Xdr::Xdr ( SocketChannel  channel,
int  size 
) [inline]

Create a new Xdr object with a buffer of given size.

Parameters:
size of the buffer in bytes

muscle::util::serialization::Xdr::Xdr ( SocketChannel  channel,
ByteBuffer  body 
) [inline]

Create a new XDR back ended with given ByteBuffer.

Parameters:
body buffer to use


Member Function Documentation

void muscle::util::serialization::Xdr::beginDecoding (  )  throws IOException [inline]

void muscle::util::serialization::Xdr::endDecoding (  )  throws IOException [inline]

void muscle::util::serialization::Xdr::beginEncoding (  )  [inline]

void muscle::util::serialization::Xdr::endEncoding (  )  throws IOException [inline]

int muscle::util::serialization::Xdr::xdrDecodeInt (  )  throws IOException [inline]

Decodes (aka "deserializes") a "XDR int" value received from a XDR stream. A XDR int is 32 bits wide -- the same width Java's "int" data type has. This method is one of the basic methods all other methods can rely on. Because it's so basic, derived classes have to implement it.

Returns:
The decoded int value.

Implements muscle::util::serialization::XdrDecodingStream.

int [] muscle::util::serialization::Xdr::xdrDecodeIntVector (  )  throws IOException [inline]

Get next array of integers.

Returns:
the array on integers

Implements muscle::util::serialization::XdrDecodingStream.

long [] muscle::util::serialization::Xdr::xdrDecodeLongVector (  )  throws IOException [inline]

Get next array of long.

Returns:
the array on integers

Implements muscle::util::serialization::XdrDecodingStream.

float muscle::util::serialization::Xdr::xdrDecodeFloat (  )  throws IOException [inline]

Decodes (aka "deserializes") a float (which is a 32 bits wide floating point entity) read from a XDR stream.

Returns:
Decoded float value.rs.

Implements muscle::util::serialization::XdrDecodingStream.

double muscle::util::serialization::Xdr::xdrDecodeDouble (  )  throws IOException [inline]

Decodes (aka "deserializes") a double (which is a 64 bits wide floating point entity) read from a XDR stream.

Returns:
Decoded double value.rs.

Implements muscle::util::serialization::XdrDecodingStream.

double [] muscle::util::serialization::Xdr::xdrDecodeDoubleVector (  )  throws IOException [inline]

Decodes (aka "deserializes") a vector of doubles read from a XDR stream.

Returns:
Decoded double vector.

Implements muscle::util::serialization::XdrDecodingStream.

double [] muscle::util::serialization::Xdr::xdrDecodeDoubleFixedVector ( int  length  )  throws IOException [inline]

Decodes (aka "deserializes") a vector of doubles read from a XDR stream.

Parameters:
length of vector to read.
Returns:
Decoded double vector..

Implements muscle::util::serialization::XdrDecodingStream.

float [] muscle::util::serialization::Xdr::xdrDecodeFloatVector (  )  throws IOException [inline]

Decodes (aka "deserializes") a vector of floats read from a XDR stream.

Returns:
Decoded float vector.

Implements muscle::util::serialization::XdrDecodingStream.

float [] muscle::util::serialization::Xdr::xdrDecodeFloatFixedVector ( int  length  )  throws IOException [inline]

Decodes (aka "deserializes") a vector of floats read from a XDR stream.

Parameters:
length of vector to read.
Returns:
Decoded float vector.

Implements muscle::util::serialization::XdrDecodingStream.

void muscle::util::serialization::Xdr::xdrDecodeOpaque ( byte[]  buf,
int  offset,
int  len 
) throws IOException [inline]

Get next opaque data. The decoded data is always padded to be a multiple of four.

Parameters:
buf buffer where date have to be stored
offset in the buffer.
len number of bytes to read.

Implements muscle::util::serialization::XdrDecodingStream.

void muscle::util::serialization::Xdr::xdrDecodeOpaque ( byte[]  buf,
int  len 
) throws IOException [inline]

byte [] muscle::util::serialization::Xdr::xdrDecodeOpaque ( int  len  )  throws IOException [inline]

byte [] muscle::util::serialization::Xdr::xdrDecodeDynamicOpaque (  )  throws IOException [inline]

Decodes (aka "deserializes") a XDR opaque value, which is represented by a vector of byte values. The length of the opaque value to decode is pulled off of the XDR stream, so the caller does not need to know the exact length in advance. The decoded data is always padded to be a multiple of four (because that's what the sender does).

Implements muscle::util::serialization::XdrDecodingStream.

String muscle::util::serialization::Xdr::xdrDecodeString (  )  throws IOException [inline]

Get next String.

Returns:
decoded string

Implements muscle::util::serialization::XdrDecodingStream.

boolean muscle::util::serialization::Xdr::xdrDecodeBoolean (  )  throws IOException [inline]

long muscle::util::serialization::Xdr::xdrDecodeLong (  )  throws IOException [inline]

Decodes (aka "deserializes") a long (which is called a "hyper" in XDR babble and is 64 bits wide) read from a XDR stream.

Returns:
Decoded long value.

Implements muscle::util::serialization::XdrDecodingStream.

ByteBuffer muscle::util::serialization::Xdr::xdrDecodeByteBuffer (  )  throws IOException [inline]

byte [] muscle::util::serialization::Xdr::xdrDecodeByteVector (  )  throws IOException [inline]

Decodes (aka "deserializes") a vector of bytes, which is nothing more than a series of octets (or 8 bits wide bytes), each packed into its very own 4 bytes (XDR int). Byte vectors are decoded together with a preceeding length value. This way the receiver doesn't need to know the length of the vector in advance.

Returns:
The byte vector containing the decoded data.

Implements muscle::util::serialization::XdrDecodingStream.

byte [] muscle::util::serialization::Xdr::xdrDecodeByteFixedVector ( int  length  )  throws IOException [inline]

Decodes (aka "deserializes") a vector of bytes, which is nothing more than a series of octets (or 8 bits wide bytes), each packed into its very own 4 bytes (XDR int).

Parameters:
length of vector to read.
Returns:
The byte vector containing the decoded data.

Implements muscle::util::serialization::XdrDecodingStream.

byte muscle::util::serialization::Xdr::xdrDecodeByte (  )  throws IOException [inline]

Decodes (aka "deserializes") a byte read from this XDR stream.

Returns:
Decoded byte value.

Implements muscle::util::serialization::XdrDecodingStream.

short muscle::util::serialization::Xdr::xdrDecodeShort (  )  throws IOException [inline]

Decodes (aka "deserializes") a short (which is a 16 bit quantity) read from this XDR stream.

Returns:
Decoded short value.

Implements muscle::util::serialization::XdrDecodingStream.

short [] muscle::util::serialization::Xdr::xdrDecodeShortVector (  )  throws IOException [inline]

Decodes (aka "deserializes") a vector of short integers read from a XDR stream.

Returns:
Decoded vector of short integers..

Implements muscle::util::serialization::XdrDecodingStream.

short [] muscle::util::serialization::Xdr::xdrDecodeShortFixedVector ( int  length  )  throws IOException [inline]

Decodes (aka "deserializes") a vector of short integers read from a XDR stream.

Parameters:
length of vector to read.
Returns:
Decoded vector of short integers.

Implements muscle::util::serialization::XdrDecodingStream.

void muscle::util::serialization::Xdr::xdrEncodeInt ( int  value  )  [inline]

Encodes (aka "serializes") a "XDR int" value and writes it down a XDR stream. A XDR int is 32 bits wide -- the same width Java's "int" data type has. This method is one of the basic methods all other methods can rely on.

Implements muscle::util::serialization::XdrEncodingStream.

ByteBuffer muscle::util::serialization::Xdr::asBuffer (  )  [inline]

Returns the ByteBuffer that backs this xdr.

Modifications to this xdr's content will cause the returned buffer's content to be modified, and vice versa.

Returns:
The ByteBuffer that backs this xdr

void muscle::util::serialization::Xdr::xdrEncodeIntVector ( int[]  values  )  [inline]

Encodes (aka "serializes") a vector of ints and writes it down this XDR stream.

Parameters:
values int vector to be encoded.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeLongVector ( long[]  values  )  [inline]

Encodes (aka "serializes") a vector of longs and writes it down this XDR stream.

Parameters:
values long vector to be encoded.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeFloat ( float  value  )  [inline]

Encodes (aka "serializes") a float (which is a 32 bits wide floating point quantity) and write it down this XDR stream.

Parameters:
value Float value to encode.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeDouble ( double  value  )  [inline]

Encodes (aka "serializes") a double (which is a 64 bits wide floating point quantity) and write it down this XDR stream.

Parameters:
value Double value to encode.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeFloatVector ( float[]  value  )  [inline]

Encodes (aka "serializes") a vector of floats and writes it down this XDR stream.

Parameters:
value float vector to be encoded.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeFloatFixedVector ( float[]  value,
int  length 
) [inline]

Encodes (aka "serializes") a vector of floats and writes it down this XDR stream.

Parameters:
value float vector to be encoded.
length of vector to write. This parameter is used as a sanity check.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeDoubleVector ( double[]  value  )  [inline]

Encodes (aka "serializes") a vector of doubles and writes it down this XDR stream.

Parameters:
value double vector to be encoded.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeDoubleFixedVector ( double[]  value,
int  length 
) [inline]

Encodes (aka "serializes") a vector of doubles and writes it down this XDR stream.

Parameters:
value double vector to be encoded.
length of vector to write. This parameter is used as a sanity check.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeString ( String  string  )  [inline]

Encodes (aka "serializes") a string and writes it down this XDR stream.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeOpaque ( byte[]  bytes,
int  offset,
int  len 
) [inline]

Encodes (aka "serializes") a XDR opaque value, which is represented by a vector of byte values. Only the opaque value is encoded, but no length indication is preceeding the opaque value, so the receiver has to know how long the opaque value will be. The encoded data is always padded to be a multiple of four. If the length of the given byte vector is not a multiple of four, zero bytes will be used for padding.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeOpaque ( byte[]  bytes,
int  len 
) [inline]

void muscle::util::serialization::Xdr::xdrEncodeDynamicOpaque ( byte[]  opaque  )  [inline]

Encodes (aka "serializes") a XDR opaque value, which is represented by a vector of byte values. The length of the opaque value is written to the XDR stream, so the receiver does not need to know the exact length in advance. The encoded data is always padded to be a multiple of four to maintain XDR alignment.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeBoolean ( boolean  bool  )  [inline]

void muscle::util::serialization::Xdr::xdrEncodeLong ( long  value  )  [inline]

Encodes (aka "serializes") a long (which is called a "hyper" in XDR babble and is 64 bits wide) and write it down this XDR stream.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeByteBuffer ( ByteBuffer  buf  )  [inline]

void muscle::util::serialization::Xdr::xdrEncodeByteVector ( byte[]  value  )  [inline]

Encodes (aka "serializes") a vector of bytes, which is nothing more than a series of octets (or 8 bits wide bytes), each packed into its very own 4 bytes (XDR int). Byte vectors are encoded together with a preceeding length value. This way the receiver doesn't need to know the length of the vector in advance.

Parameters:
value Byte vector to encode.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeByteFixedVector ( byte[]  value,
int  length 
) [inline]

Encodes (aka "serializes") a vector of bytes, which is nothing more than a series of octets (or 8 bits wide bytes), each packed into its very own 4 bytes (XDR int).

Parameters:
value Byte vector to encode.
length of vector to write. This parameter is used as a sanity check.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeByte ( byte  value  )  [inline]

Encodes (aka "serializes") a byte and write it down this XDR stream.

Parameters:
value Byte value to encode.
Exceptions:
OncRpcException if an ONC/RPC error occurs.
IOException if an I/O error occurs.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeShort ( short  value  )  [inline]

Encodes (aka "serializes") a short (which is a 16 bits wide quantity) and write it down this XDR stream.

Parameters:
value Short value to encode.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeShortVector ( short[]  value  )  [inline]

Encodes (aka "serializes") a vector of short integers and writes it down this XDR stream.

Parameters:
value short vector to be encoded.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeShortFixedVector ( short[]  value,
int  length 
) [inline]

Encodes (aka "serializes") a vector of short integers and writes it down this XDR stream.

Parameters:
value short vector to be encoded.
length of vector to write. This parameter is used as a sanity check.

Implements muscle::util::serialization::XdrEncodingStream.

void muscle::util::serialization::Xdr::xdrEncodeBooleanVector ( boolean[]  bool  )  [inline]

void muscle::util::serialization::Xdr::xdrEncodeStringVector ( String[]  str  )  [inline]

void muscle::util::serialization::Xdr::close (  )  [inline]

boolean [] muscle::util::serialization::Xdr::xdrDecodeBooleanVector (  )  throws IOException [inline]

String [] muscle::util::serialization::Xdr::xdrDecodeStringVector (  )  throws IOException [inline]


Member Data Documentation

final int muscle::util::serialization::Xdr::MAX_XDR_SIZE = 512 * 1024 [static]

Maximal size of a XDR message.

final ByteBuffer muscle::util::serialization::Xdr::buffer [protected]

Byte buffer used by XDR record.

final SocketChannel muscle::util::serialization::Xdr::channel [protected]


Generated on Thu Oct 18 14:28:29 2012 for Muscle Java API by  doxygen 1.5.6