org.springframework.remoting.rmi
Interface RmiInvocationHandler

All Superinterfaces:
java.rmi.Remote
All Known Implementing Classes:
RmiInvocationWrapper

public interface RmiInvocationHandler
extends java.rmi.Remote

Interface for RMI invocation handlers instances on the server, wrapping exported services. A client uses a stub implementing this interface to access such a service.

This is an SPI interface, not to be used directly by applications.

Since:
14.05.2003
Author:
Juergen Hoeller

Method Summary
 java.lang.String getTargetInterfaceName()
          Return the name of the target interface that this invoker operates on.
 java.lang.Object invoke(RemoteInvocation invocation)
          Apply the given invocation to the target object.
 

Method Detail

getTargetInterfaceName

java.lang.String getTargetInterfaceName()
                                        throws java.rmi.RemoteException
Return the name of the target interface that this invoker operates on.

Returns:
the name of the target interface, or null if none
Throws:
java.rmi.RemoteException - in case of communication errors
See Also:
RemoteExporter.getServiceInterface()

invoke

java.lang.Object invoke(RemoteInvocation invocation)
                        throws java.rmi.RemoteException,
                               java.lang.NoSuchMethodException,
                               java.lang.IllegalAccessException,
                               java.lang.reflect.InvocationTargetException
Apply the given invocation to the target object.

Called by RmiClientInterceptor#doInvoke(org.aopalliance.intercept.MethodInvocation, RmiInvocationHandler).

Parameters:
invocation - object that encapsulates invocation parameters
Returns:
the object returned from the invoked method, if any
Throws:
java.rmi.RemoteException - in case of communication errors
java.lang.NoSuchMethodException - if the method name could not be resolved
java.lang.IllegalAccessException - if the method could not be accessed
java.lang.reflect.InvocationTargetException - if the method invocation resulted in an exception