|
GigaSpaces XAP 9.7.2 API | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.jini.io.MarshalledInstance
public class MarshalledInstance
A MarshalledInstance
contains an object in serialized
form. The contained object can be deserialized on demand when
explicitly requested. This allows an object to be sent from one VM
to another in a way that allows the receiver to control when and if
the object is deserialized.
The contained object is specified at construction time and can
either be provided in unserialized or serialized form. If provided
in unserialized form it will be serialized during construction
with the serialization semantics defined by
MarshalOutputStream
. In particular, classes are annotated
with a codebase URL from which the class can be loaded (if available).
If the MarshalledInstance
needs to deserialize the
contained object then the contained object will be deserialized with the
deserialization semantics defined by MarshalInputStream
.
In particular, the codebase annotations associated with the contained
object may be used to load classes referenced by the contained object.
MarshalledInstance
provides functionality similar to
java.rmi.MarshalledObject
, but additionally provides
for the verification of codebase integrity. Unlike
java.rmi.MarshalledObject
, it does not perform remote
object-to-stub replacement.
Field Summary | |
---|---|
static String |
USE_GZIP_PROPERTY
|
Constructor Summary | |
---|---|
MarshalledInstance(MarshalledObject mo)
Creates a new MarshalledInstance from an
existing MarshalledObject . |
|
MarshalledInstance(Object obj)
Creates a new MarshalledInstance that contains the
marshalled representation of the current state of the supplied
object. |
|
MarshalledInstance(Object obj,
Collection context)
Creates a new MarshalledInstance that contains the
marshalled representation of the current state of the supplied
object. |
Method Summary | |
---|---|
MarshalledObject |
convertToMarshalledObject()
Creates a new MarshalledObject that will
contain an object equivalent to the object contained
in this MarshalledInstance object. |
boolean |
equals(Object obj)
Compares this MarshalledInstance to another
object. |
boolean |
fullyEquals(Object obj)
Compares this MarshalledInstance to another
object. |
Object |
get(boolean verifyCodebaseIntegrity)
Returns a new copy of the contained object. |
Object |
get(ClassLoader defaultLoader,
boolean verifyCodebaseIntegrity,
ClassLoader verifierLoader,
Collection context)
Returns a new copy of the contained object. |
int |
hashCode()
Returns the hash code for this MarshalledInstance . |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final String USE_GZIP_PROPERTY
Constructor Detail |
---|
public MarshalledInstance(Object obj) throws IOException
MarshalledInstance
that contains the
marshalled representation of the current state of the supplied
object. The object is serialized with the semantics defined by
MarshalOutputStream
. The output stream used to marshal the
object implements ObjectStreamContext
and returns an empty
collection from its getObjectStreamContext
method.
obj
- The Object to be contained in the new
MarshalledInstance
IOException
- if the object cannot be serializedpublic MarshalledInstance(Object obj, Collection context) throws IOException
MarshalledInstance
that contains the
marshalled representation of the current state of the supplied
object. The object is serialized with the semantics defined by
MarshalOutputStream
. The output stream used to marshal the
object implements ObjectStreamContext
and returns the given
collection from its getObjectStreamContext
method.
obj
- The Object to be contained in the new
MarshalledInstance
context
- the collection of context information objects
IOException
- if the object cannot be serialized
NullPointerException
- if context
is null
public MarshalledInstance(MarshalledObject mo)
MarshalledInstance
from an
existing MarshalledObject
. An object equivalent
to the object contained in the passed MarshalledObject
will be contained in the new MarshalledInstance
.
The object contained in the passed MarshalledObject
will not be unmarshalled as part of this call.
mo
- The MarshalledObject
that contains
the object the new MarshalledInstance
should
contain
NullPointerException
- if mo
is null
Method Detail |
---|
public MarshalledObject convertToMarshalledObject()
MarshalledObject
that will
contain an object equivalent to the object contained
in this MarshalledInstance
object.
The object contained in this MarshalledInstance
object will not be unmarshalled as part of this call.
MarshalledObject
which
contains an object equivalent to the object
contained in this MarshalledInstance
public Object get(boolean verifyCodebaseIntegrity) throws IOException, ClassNotFoundException
MarshalInputStream
.
The input stream used to unmarshal the object implements ObjectStreamContext
and returns a collection from its getObjectStreamContext
method which contains a single element of type IntegrityEnforcement
; the integrityEnforced
method of this element returns the specified
verifyCodebaseIntegrity
value.
MarshalledInstance implements this method by calling
.
get
(null, verifyCodebaseIntegrity, null, null)
verifyCodebaseIntegrity
- if true
then
codebase integrity is verified, otherwise code base
integrity is not verified
IOException
- if an
IOException
occurs while deserializing the
object from its internal representation
ClassNotFoundException
- if any classes necessary
for reconstructing the contained object can not
be found or if verifyCodebaseIntegrity
is true
and the integrity of the
contained object's codebase cannot be confirmedpublic Object get(ClassLoader defaultLoader, boolean verifyCodebaseIntegrity, ClassLoader verifierLoader, Collection context) throws IOException, ClassNotFoundException
MarshalInputStream
.
If context
is not null
the input stream used to unmarshal the object implements ObjectStreamContext
and returns the given collection from its getObjectStreamContext
method.
If context
is null
the input stream used to unmarshal the object implements ObjectStreamContext
and returns a collection from its getObjectStreamContext
method which contains a single element of type IntegrityEnforcement
; the integrityEnforced
method of this element returns the specified
verifyCodebaseIntegrity
value.
defaultLoader
- the class loader value (possibly
null
) to pass as the defaultLoader
argument to RMIClassLoader
methodsverifyCodebaseIntegrity
- if true
then
codebase integrity is verified, otherwise code base
integrity is not verifiedverifierLoader
- the class loader value (possibly
null
) to pass to Security.verifyCodebaseIntegrity
, if
verifyCodebaseIntegrity
is true
context
- the collection of context information objects or
null
IOException
- if an
IOException
occurs while deserializing the
object from its internal representation
ClassNotFoundException
- if any classes necessary
for reconstructing the contained object can not
be found or if verifyCodebaseIntegrity
is true
and the integrity of the
contained object's codebase cannot be confirmedpublic boolean fullyEquals(Object obj)
MarshalledInstance
to another
object. Returns true if and only if the argument refers to an instance
of MarshalledInstance
that contains exactly the same
serialized form for its contained object as this object does and
has the same class codebase annotations.
obj
- the object to compare with this
MarshalledInstance
true
if the argument contains an object
with an equivalent serialized form and codebase;
otherwise returns false
public boolean equals(Object obj)
MarshalledInstance
to another
object. Returns true if and only if the argument refers to an instance
of MarshalledInstance
that contains exactly the same
serialized form for its contained object as this object does. The
comparison ignores any class codebase annotations, so that
two objects can be equivalent if they have the same serialized
representation, except for the codebase of each class in the
serialized representation.
equals
in class Object
obj
- the object to compare with this
MarshalledInstance
true
if the argument contains an object
with an equivalent serialized form; otherwise returns
false
public int hashCode()
MarshalledInstance
.
The hash code is calculated only from the serialized form
of the contained object.
hashCode
in class Object
|
GigaSpaces XAP 9.7.2 API | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |