org.objectweb.jeremie.binding.api
Interface JRMIOptRef

All Superinterfaces:
Externalizable, JRMIRef, org.objectweb.jonathan.binding.api.Reference, RemoteRef, Serializable
All Known Implementing Classes:
RefImpl

public interface JRMIOptRef
extends JRMIRef

A JRMIOptRef optimizes a Jeremie reference with the addition of methods for type-specific marshalling of data for remote method invocations, as opposed to the use of generic reflection-based marshalling.


Field Summary
 
Fields inherited from interface java.rmi.server.RemoteRef
packagePrefix, serialVersionUID
 
Method Summary
 void invoke(org.objectweb.jonathan.presentation.api.Marshaller marshaller)
          Sends the marshaller with the invocation data down the protocol stack.
 org.objectweb.jonathan.protocols.api.ReplyInterface prepareInvocation(org.objectweb.jonathan.presentation.api.Marshaller marshaller)
          Prepares the marshaller prior to marshalling invocation data.
 org.objectweb.jonathan.presentation.api.Marshaller request()
          Obtains a marshaller for marshalling remote method invocation data.
 
Methods inherited from interface java.rmi.server.RemoteRef
done, getRefClass, invoke, invoke, newCall, remoteEquals, remoteHashCode, remoteToString
 
Methods inherited from interface java.io.Externalizable
readExternal, writeExternal
 
Methods inherited from interface org.objectweb.jonathan.binding.api.Reference
getIdentifiers, setIdentifiers
 

Method Detail

request

public org.objectweb.jonathan.presentation.api.Marshaller request()
                                                           throws MarshalException
Obtains a marshaller for marshalling remote method invocation data.

Returns:
a marshaller for marshalling invocation data;
Throws:
MarshalException - if something goes wrong.

prepareInvocation

public org.objectweb.jonathan.protocols.api.ReplyInterface prepareInvocation(org.objectweb.jonathan.presentation.api.Marshaller marshaller)
                                                                      throws MarshalException
Prepares the marshaller prior to marshalling invocation data. This preparation is protocol-specific and typically consists of adding headers to the marshaller. In line with Java remote method invocations, a reply is expected after the remote invocation is executed; the result of this method is thus an interface for listening for the reply.

Parameters:
marshaller - a marshaller to be used for the invocation data;
Returns:
a reply interface for listening for the reply;
Throws:
MarshalException - if something goes wrong.

invoke

public void invoke(org.objectweb.jonathan.presentation.api.Marshaller marshaller)
            throws MarshalException
Sends the marshaller with the invocation data down the protocol stack.

Parameters:
marshaller - a marshaller with the invocation data;
Throws:
MarshalException - if something goes wrong.