javax.rmi.CORBA
Interface ValueHandler


public interface ValueHandler

Defines methods which allow serialization of Java objects to and from GIOP streams.


Method Summary
 String getRMIRepositoryID(Class clz)
          Returns the CORBA RepositoryId for the given Java class.
 org.omg.SendingContext.RunTime getRunTimeCodeBase()
          Returns the CodeBase for this ValueHandler.
 boolean isCustomMarshaled(Class clz)
          Indicates whether the given class performs custom or default marshaling.
 Serializable readValue(org.omg.CORBA.portable.InputStream in, int offset, Class clz, String repositoryID, org.omg.SendingContext.RunTime sender)
          Reads a value from the stream using Java semantics.
 Serializable writeReplace(Serializable value)
          If the value contains a writeReplace method then the result is returned.
 void writeValue(org.omg.CORBA.portable.OutputStream out, Serializable value)
          Writes a value to the stream using Java semantics.
 

Method Detail

writeValue

public void writeValue(org.omg.CORBA.portable.OutputStream out,
                       Serializable value)
Writes a value to the stream using Java semantics.

Parameters:
out - the stream to write the value to.
value - the value to be written to the stream.

readValue

public Serializable readValue(org.omg.CORBA.portable.InputStream in,
                              int offset,
                              Class clz,
                              String repositoryID,
                              org.omg.SendingContext.RunTime sender)
Reads a value from the stream using Java semantics.

Parameters:
in - the stream to read the value from.
offset - the current position in the input stream.
clz - the type of the value to be read in.
repositoryID - the RepositoryId of the value to be read in.
sender - the sending context runtime codebase.
Returns:
the value read from the stream.

getRMIRepositoryID

public String getRMIRepositoryID(Class clz)
Returns the CORBA RepositoryId for the given Java class.

Parameters:
clz - a Java class.
Returns:
the CORBA RepositoryId for the class.

isCustomMarshaled

public boolean isCustomMarshaled(Class clz)
Indicates whether the given class performs custom or default marshaling.

Parameters:
clz - the class to test for custom marshaling.
Returns:
true if the class performs custom marshaling, false if it does not.

getRunTimeCodeBase

public org.omg.SendingContext.RunTime getRunTimeCodeBase()
Returns the CodeBase for this ValueHandler. This is used by the ORB runtime. The server sends the service context containing the IOR for this CodeBase on the first GIOP reply. The client does the same on the first GIOP request.

Returns:
the SendingContext.CodeBase of this ValueHandler.

writeReplace

public Serializable writeReplace(Serializable value)
If the value contains a writeReplace method then the result is returned. Otherwise, the value itself is returned.

Parameters:
value - the value to be marshaled.
Returns:
the true value to marshal on the wire.