public class ExecutorRemotingTask<T extends Serializable> extends Object implements DistributedTask<ExecutorRemotingTask.InternalExecutorResult<T>,List<AsyncResult<ExecutorRemotingTask.InternalExecutorResult<T>>>>, org.springframework.context.ApplicationContextAware, ClusterInfoAware, TaskRoutingProvider, SpaceRemotingInvocation, SmartExternalizable
Task that can be used to simulate remote invocation with
 SpaceRemotingServiceExporter. When executed, the task searches
 for a service exporter (first under the hardwired name serviceExporter, then any
 bean that define this class), and based on parameters passed on the task itself (such as method
 name, lookup name and arguments) invokes service methods that are registered with the service
 exporter.| Modifier and Type | Class and Description | 
|---|---|
| static class  | ExecutorRemotingTask.InternalExecutorExceptionA wrapper executor exception that holds more information on the exception, such as the
 instance id. | 
| static class  | ExecutorRemotingTask.InternalExecutorResult<T extends Serializable>A wrapper executor result that holds more information on the exception, such as the instance
 id. | 
| Constructor and Description | 
|---|
| ExecutorRemotingTask()Should not be used. | 
| ExecutorRemotingTask(String lookupName,
                    String methodName,
                    RemotingUtils.MethodHash methodHash,
                    Object[] arguments) | 
| Modifier and Type | Method and Description | 
|---|---|
| ExecutorRemotingTask.InternalExecutorResult<T> | execute()Computes a result, or throws an exception if unable to do so. | 
| Object[] | getArguments()The arguments for the service method execution. | 
| String | getLookupName()The lookup name of the service. | 
| Object[] | getMetaArguments()Meta arguments that can be passed as part of the invocation. | 
| RemotingUtils.MethodHash | getMethodHash() | 
| String | getMethodName()The method name of the service that will be executed. | 
| Object | getRouting()Returns the routing of the task. | 
| static SpaceRemotingServiceExporter | getServiceExporter(org.springframework.context.ApplicationContext applicationContext) | 
| void | readExternal(ObjectInput in) | 
| List<AsyncResult<ExecutorRemotingTask.InternalExecutorResult<T>>> | reduce(List<AsyncResult<ExecutorRemotingTask.InternalExecutorResult<T>>> results) | 
| void | setApplicationContext(org.springframework.context.ApplicationContext applicationContext) | 
| void | setClusterInfo(ClusterInfo clusterInfo)Sets the cluster information. | 
| void | setServiceExporter(SpaceRemotingServiceExporter serviceExporter) | 
| void | writeExternal(ObjectOutput out) | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitenabledSmartExternalizableWithReferencepublic ExecutorRemotingTask()
public ExecutorRemotingTask(String lookupName, String methodName, RemotingUtils.MethodHash methodHash, Object[] arguments)
public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext)
setApplicationContext in interface org.springframework.context.ApplicationContextAwarepublic void setClusterInfo(ClusterInfo clusterInfo)
ClusterInfoAwareNote, the cluster information is obtained externally from the application context which
 means that this feature need to be supported by specific containers (and is not supported by
 plain Spring application context). This means that beans that implement ClusterInfoAware should take into account the fact that the cluster info provided might be
 null.
setClusterInfo in interface ClusterInfoAwareclusterInfo - The cluster information to be injectedpublic void setServiceExporter(SpaceRemotingServiceExporter serviceExporter)
public ExecutorRemotingTask.InternalExecutorResult<T> execute() throws Exception
Taskexecute in interface Task<ExecutorRemotingTask.InternalExecutorResult<T extends Serializable>>Exception - if unable to compute a resultpublic static SpaceRemotingServiceExporter getServiceExporter(org.springframework.context.ApplicationContext applicationContext)
public List<AsyncResult<ExecutorRemotingTask.InternalExecutorResult<T>>> reduce(List<AsyncResult<ExecutorRemotingTask.InternalExecutorResult<T>>> results) throws Exception
reduce in interface AsyncResultsReducer<ExecutorRemotingTask.InternalExecutorResult<T extends Serializable>,List<AsyncResult<ExecutorRemotingTask.InternalExecutorResult<T extends Serializable>>>>Exceptionpublic Object getRouting()
TaskRoutingProvidergetRouting in interface TaskRoutingProvidergetRouting in interface SpaceRemotingInvocationpublic String getLookupName()
SpaceRemotingInvocationgetLookupName in interface SpaceRemotingInvocationpublic String getMethodName()
SpaceRemotingInvocationgetMethodName in interface SpaceRemotingInvocationpublic RemotingUtils.MethodHash getMethodHash()
public Object[] getArguments()
SpaceRemotingInvocationgetArguments in interface SpaceRemotingInvocationpublic Object[] getMetaArguments()
SpaceRemotingInvocationgetMetaArguments in interface SpaceRemotingInvocationpublic void writeExternal(ObjectOutput out) throws IOException
writeExternal in interface ExternalizableIOExceptionpublic void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
readExternal in interface ExternalizableIOExceptionClassNotFoundExceptionCopyright © GigaSpaces.