public abstract class

RemoteInvocationBasedAccessor

extends UrlBasedRemoteAccessor
java.lang.Object
   ↳ org.springframework.remoting.support.RemotingSupport
     ↳ org.springframework.remoting.support.RemoteAccessor
       ↳ org.springframework.remoting.support.UrlBasedRemoteAccessor
         ↳ org.springframework.remoting.support.RemoteInvocationBasedAccessor
Known Direct Subclasses
Known Indirect Subclasses

Class Overview

Abstract base class for remote service accessors that are based on serialization of RemoteInvocation objects. Provides a "remoteInvocationFactory" property, with a DefaultRemoteInvocationFactory as default strategy.

Summary

[Expand]
Inherited Fields
From class org.springframework.remoting.support.RemotingSupport
Public Constructors
RemoteInvocationBasedAccessor()
Public Methods
RemoteInvocationFactory getRemoteInvocationFactory()
Return the RemoteInvocationFactory used by this accessor.
void setRemoteInvocationFactory(RemoteInvocationFactory remoteInvocationFactory)
Set the RemoteInvocationFactory to use for this accessor.
Protected Methods
RemoteInvocation createRemoteInvocation(MethodInvocation methodInvocation)
Create a new RemoteInvocation object for the given AOP method invocation.
Object recreateRemoteInvocationResult(RemoteInvocationResult result)
Recreate the invocation result contained in the given RemoteInvocationResult object.
[Expand]
Inherited Methods
From class org.springframework.remoting.support.UrlBasedRemoteAccessor
From class org.springframework.remoting.support.RemoteAccessor
From class org.springframework.remoting.support.RemotingSupport
From class java.lang.Object
From interface org.springframework.beans.factory.BeanClassLoaderAware
From interface org.springframework.beans.factory.InitializingBean

Public Constructors

public RemoteInvocationBasedAccessor ()

Public Methods

public RemoteInvocationFactory getRemoteInvocationFactory ()

Return the RemoteInvocationFactory used by this accessor.

public void setRemoteInvocationFactory (RemoteInvocationFactory remoteInvocationFactory)

Set the RemoteInvocationFactory to use for this accessor. Default is a DefaultRemoteInvocationFactory.

A custom invocation factory can add further context information to the invocation, for example user credentials.

Protected Methods

protected RemoteInvocation createRemoteInvocation (MethodInvocation methodInvocation)

Create a new RemoteInvocation object for the given AOP method invocation.

The default implementation delegates to the configured RemoteInvocationFactory. This can be overridden in subclasses in order to provide custom RemoteInvocation subclasses, containing additional invocation parameters (e.g. user credentials).

Note that it is preferable to build a custom RemoteInvocationFactory as a reusable strategy, instead of overriding this method.

Parameters
methodInvocation the current AOP method invocation
Returns
  • the RemoteInvocation object

protected Object recreateRemoteInvocationResult (RemoteInvocationResult result)

Recreate the invocation result contained in the given RemoteInvocationResult object.

The default implementation calls the default recreate() method. This can be overridden in subclass to provide custom recreation, potentially processing the returned result object.

Parameters
result the RemoteInvocationResult to recreate
Returns
  • a return value if the invocation result is a successful return
Throws
Throwable if the invocation result is an exception
See Also