Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
package org.infinispan.remoting.rpc;
import org.infinispan.commands.ReplicableCommand;
import org.infinispan.remoting.RpcException;
import org.infinispan.remoting.inboundhandler.DeliverOrder;
import org.infinispan.remoting.responses.Response;
import org.infinispan.remoting.transport.Address;
import org.infinispan.remoting.transport.Transport;
import org.infinispan.commons.util.concurrent.NotifyingNotifiableFuture;
import java.util.Collection;
import java.util.List;
import java.util.Map;
/**
* Provides a mechanism for communicating with other caches in the cluster, by formatting and passing requests down to
* the registered {@link Transport}.
*
* @author Manik Surtani
* @author [email protected]
* @since 4.0
*/
public interface RpcManager {
/**
* Invokes an RPC call on other caches in the cluster.
*
* @param recipients a list of Addresses to invoke the call on. If this is null, the call is broadcast to the
* entire cluster.
* @param rpcCommand the cache command to invoke
* @param mode the response mode to use
* @param timeout a timeout after which to throw a replication exception.
* @param usePriorityQueue if true, a priority queue is used to deliver messages. May not be supported by all
* implementations.
* @param responseFilter a response filter with which to filter out failed/unwanted/invalid responses.
* @return a map of responses from each member contacted.
* @deprecated this method may be removed in the future. Use {@link #invokeRemotely(java.util.Collection, org.infinispan.commands.ReplicableCommand, RpcOptions)}
*/
@Deprecated
Map invokeRemotely(Collection recipients, ReplicableCommand rpcCommand, ResponseMode mode, long timeout, boolean usePriorityQueue, ResponseFilter responseFilter);
/**
* Invokes an RPC call on other caches in the cluster.
*
* @param recipients a list of Addresses to invoke the call on. If this is null, the call is broadcast to the
* entire cluster.
* @param rpcCommand the cache command to invoke
* @param mode the response mode to use
* @param timeout a timeout after which to throw a replication exception.
* @param usePriorityQueue if true, a priority queue is used to deliver messages. May not be supported by all
* implementations.
* @return a map of responses from each member contacted.
* @deprecated this method may be removed in the future. Use {@link #invokeRemotely(java.util.Collection, org.infinispan.commands.ReplicableCommand, RpcOptions)}
*/
@Deprecated
Map invokeRemotely(Collection recipients, ReplicableCommand rpcCommand, ResponseMode mode, long timeout, boolean usePriorityQueue);
/**
* Invokes an RPC call on other caches in the cluster.
*
* @param recipients a list of Addresses to invoke the call on. If this is null, the call is broadcast to the entire
* cluster.
* @param rpcCommand the cache command to invoke
* @param mode the response mode to use
* @param timeout a timeout after which to throw a replication exception.
* @return a map of responses from each member contacted.
* @deprecated this method may be removed in the future. Use {@link #invokeRemotely(java.util.Collection, org.infinispan.commands.ReplicableCommand, RpcOptions)}
*/
@Deprecated
Map invokeRemotely(Collection recipients, ReplicableCommand rpcCommand, ResponseMode mode, long timeout);
/**
* Broadcasts an RPC command to the entire cluster.
*
* @param rpc command to execute remotely
* @param sync if true, the transport will operate in sync mode. Otherwise, it will operate in async mode.
* @throws org.infinispan.remoting.RpcException in the event of problems
* @deprecated this method may be removed in the future. Use {@link #invokeRemotely(java.util.Collection, org.infinispan.commands.ReplicableCommand, RpcOptions)}
*/
@Deprecated
void broadcastRpcCommand(ReplicableCommand rpc, boolean sync) throws RpcException;
/**
* Broadcasts an RPC command to the entire cluster.
*
* @param rpc command to execute remotely
* @param sync if true, the transport will operate in sync mode. Otherwise, it will operate in async
* mode.
* @param usePriorityQueue if true, a priority queue is used
* @throws org.infinispan.remoting.RpcException in the event of problems
* @deprecated this method may be removed in the future. Use {@link #invokeRemotely(java.util.Collection, org.infinispan.commands.ReplicableCommand, RpcOptions)}
*/
@Deprecated
void broadcastRpcCommand(ReplicableCommand rpc, boolean sync, boolean usePriorityQueue) throws RpcException;
/**
* The same as {@link #broadcastRpcCommand(org.infinispan.commands.ReplicableCommand, boolean)} except that the task
* is passed to the transport executor and a Future is returned. The transport always deals with this
* synchronously.
*
* @param rpc command to execute remotely
* @param future the future which will be passed back to the user
* @deprecated this method may be removed in the future. Use {@link #invokeRemotelyInFuture(java.util.Collection, org.infinispan.commands.ReplicableCommand, RpcOptions, org.infinispan.commons.util.concurrent.NotifyingNotifiableFuture)}
*/
@Deprecated
void broadcastRpcCommandInFuture(ReplicableCommand rpc, NotifyingNotifiableFuture