org.jgroups.util
Class Marshaller
java.lang.Object
org.jgroups.util.Marshaller
public class Marshaller
extends java.lang.Object
Title: JGroups Communications
Description: Contact me at
mail@filip.net
Copyright: Copyright (c) 2002
Company: www.filip.net
1.0
This class marshalls classes, in other words it serializes and deserizlizes classes
to and from object streams.
It performs a magic number matching to decrease the number of bytes that are being sent
over the wire.
If no magic number is available for the class, the classname is sent over instead
static Externalizable | read(ObjectInput in) - reads the magic number, instantiates the class (from the
configurator) and invokes the readExternal method on the object.
|
static void | write(Externalizable inst, ObjectOutput out) - Writes an object to the ObjectOutput stream.
|
Marshaller
public Marshaller()
read
public static Externalizable read(ObjectInput in)
throws IOException
reads the magic number, instantiates the class (from the
configurator) and invokes the readExternal method on the object.
If no magic number is present, the method will read the
string and then get the class from the configurator.
in
- an ObjectInput stream - the stream should be composed as follows:
[boolean -> int|string -> object data]
If the boolean is true, then the next value is an int, the magic number.
If the boolean is false, then the next value is a string (the class name)
The object data is what the object instance uses to populate its fields
write
public static void write(Externalizable inst,
ObjectOutput out)
throws IOException
Writes an object to the ObjectOutput stream.
If possible, we will send over a magic number instead of the class name
so that we transfer less amount of data.
inst
- - an object instance to be serialized, can not be nullout
- - the ObjectOutput stream we will write the serialized data to
Copyright B) 2001,2002 www.jgroups.com . All Rights Reserved.