public class ExtendedStatisticRpcManager extends Object implements RpcManager
| Constructor and Description |
|---|
ExtendedStatisticRpcManager(RpcManager actual,
CacheStatisticManager cacheStatisticManager,
TimeService timeService) |
| Modifier and Type | Method and Description |
|---|---|
void |
broadcastRpcCommand(ReplicableCommand rpc,
boolean sync)
Broadcasts an RPC command to the entire cluster.
|
void |
broadcastRpcCommand(ReplicableCommand rpc,
boolean sync,
boolean usePriorityQueue)
Broadcasts an RPC command to the entire cluster.
|
void |
broadcastRpcCommandInFuture(ReplicableCommand rpc,
boolean usePriorityQueue,
NotifyingNotifiableFuture<Object> future)
The same as
RpcManager.broadcastRpcCommand(org.infinispan.commands.ReplicableCommand, boolean, boolean) except that
the task is passed to the transport executor and a Future is returned. |
void |
broadcastRpcCommandInFuture(ReplicableCommand rpc,
NotifyingNotifiableFuture<Object> future)
The same as
RpcManager.broadcastRpcCommand(org.infinispan.commands.ReplicableCommand, boolean) except that the task
is passed to the transport executor and a Future is returned. |
Address |
getAddress()
Returns the address associated with this RpcManager or null if not part of the cluster.
|
RpcOptions |
getDefaultRpcOptions(boolean sync)
|
RpcOptions |
getDefaultRpcOptions(boolean sync,
boolean fifoOrder)
Builds a RpcOptions based on the parameters
|
List<Address> |
getMembers()
Returns members of a cluster scoped to the cache owning this RpcManager.
|
RpcOptionsBuilder |
getRpcOptionsBuilder(ResponseMode responseMode)
This method is equivalent to
getRpcOptionsBuilder(responseMode, true) |
RpcOptionsBuilder |
getRpcOptionsBuilder(ResponseMode responseMode,
boolean fifoOrder) |
int |
getTopologyId()
Returns the current topology id.
|
Transport |
getTransport() |
Map<Address,Response> |
invokeRemotely(Collection<Address> recipients,
ReplicableCommand rpc,
boolean sync)
Broadcasts an RPC command to a specified set of recipients
|
Map<Address,Response> |
invokeRemotely(Collection<Address> recipients,
ReplicableCommand rpc,
boolean sync,
boolean usePriorityQueue)
Broadcasts an RPC command to a specified set of recipients
|
Map<Address,Response> |
invokeRemotely(Collection<Address> recipients,
ReplicableCommand rpcCommand,
ResponseMode mode,
long timeout)
Invokes an RPC call on other caches in the cluster.
|
Map<Address,Response> |
invokeRemotely(Collection<Address> recipients,
ReplicableCommand rpcCommand,
ResponseMode mode,
long timeout,
boolean usePriorityQueue)
Invokes an RPC call on other caches in the cluster.
|
Map<Address,Response> |
invokeRemotely(Collection<Address> recipients,
ReplicableCommand rpcCommand,
ResponseMode mode,
long timeout,
boolean usePriorityQueue,
ResponseFilter responseFilter)
Invokes an RPC call on other caches in the cluster.
|
Map<Address,Response> |
invokeRemotely(Collection<Address> recipients,
ReplicableCommand rpc,
RpcOptions options)
Invokes an RPC call on other caches in the cluster.
|
void |
invokeRemotelyInFuture(Collection<Address> recipients,
ReplicableCommand rpc,
boolean usePriorityQueue,
NotifyingNotifiableFuture<Object> future)
The same as
RpcManager.invokeRemotely(java.util.Collection, org.infinispan.commands.ReplicableCommand, boolean)
except that the task is passed to the transport executor and a Future is returned. |
void |
invokeRemotelyInFuture(Collection<Address> recipients,
ReplicableCommand rpc,
boolean usePriorityQueue,
NotifyingNotifiableFuture<Object> future,
long timeout)
The same as
#invokeRemotelyInFuture(java.util.Collection, org.infinispan.commands.ReplicableCommand,
boolean, org.infinispan.util.concurrent.NotifyingNotifiableFuture) except that you can specify a timeout. |
void |
invokeRemotelyInFuture(Collection<Address> recipients,
ReplicableCommand rpc,
boolean usePriorityQueue,
NotifyingNotifiableFuture<Object> future,
long timeout,
boolean ignoreLeavers)
The same as
#invokeRemotelyInFuture(java.util.Collection, org.infinispan.commands.ReplicableCommand,
boolean, org.infinispan.util.concurrent.NotifyingNotifiableFuture, long) except that you can specify a response mode. |
void |
invokeRemotelyInFuture(Collection<Address> recipients,
ReplicableCommand rpc,
NotifyingNotifiableFuture<Object> future)
The same as
RpcManager.invokeRemotely(java.util.Collection, org.infinispan.commands.ReplicableCommand, boolean)
except that the task is passed to the transport executor and a Future is returned. |
void |
invokeRemotelyInFuture(Collection<Address> recipients,
ReplicableCommand rpc,
RpcOptions options,
NotifyingNotifiableFuture<Object> future)
The same as
RpcManager.invokeRemotely(java.util.Collection, org.infinispan.commands.ReplicableCommand, RpcOptions)
except that the task is passed to the transport executor and a Future is returned. |
public ExtendedStatisticRpcManager(RpcManager actual, CacheStatisticManager cacheStatisticManager, TimeService timeService)
public Map<Address,Response> invokeRemotely(Collection<Address> recipients, ReplicableCommand rpcCommand, ResponseMode mode, long timeout, boolean usePriorityQueue, ResponseFilter responseFilter)
RpcManagerinvokeRemotely in interface RpcManagerrecipients - a list of Addresses to invoke the call on. If this is null, the call is broadcast to the
entire cluster.rpcCommand - the cache command to invokemode - the response mode to usetimeout - a timeout after which to throw a replication exception.usePriorityQueue - if true, a priority queue is used to deliver messages. May not be supported by all
implementations.responseFilter - a response filter with which to filter out failed/unwanted/invalid responses.public Map<Address,Response> invokeRemotely(Collection<Address> recipients, ReplicableCommand rpcCommand, ResponseMode mode, long timeout, boolean usePriorityQueue)
RpcManagerinvokeRemotely in interface RpcManagerrecipients - a list of Addresses to invoke the call on. If this is null, the call is broadcast to the
entire cluster.rpcCommand - the cache command to invokemode - the response mode to usetimeout - a timeout after which to throw a replication exception.usePriorityQueue - if true, a priority queue is used to deliver messages. May not be supported by all
implementations.public Map<Address,Response> invokeRemotely(Collection<Address> recipients, ReplicableCommand rpcCommand, ResponseMode mode, long timeout)
RpcManagerinvokeRemotely in interface RpcManagerrecipients - a list of Addresses to invoke the call on. If this is null, the call is broadcast to the entire
cluster.rpcCommand - the cache command to invokemode - the response mode to usetimeout - a timeout after which to throw a replication exception.public void broadcastRpcCommand(ReplicableCommand rpc, boolean sync) throws RpcException
RpcManagerbroadcastRpcCommand in interface RpcManagerrpc - command to execute remotelysync - if true, the transport will operate in sync mode. Otherwise, it will operate in async mode.RpcException - in the event of problemspublic void broadcastRpcCommand(ReplicableCommand rpc, boolean sync, boolean usePriorityQueue) throws RpcException
RpcManagerbroadcastRpcCommand in interface RpcManagerrpc - command to execute remotelysync - if true, the transport will operate in sync mode. Otherwise, it will operate in async
mode.usePriorityQueue - if true, a priority queue is usedRpcException - in the event of problemspublic void broadcastRpcCommandInFuture(ReplicableCommand rpc, NotifyingNotifiableFuture<Object> future)
RpcManagerRpcManager.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.broadcastRpcCommandInFuture in interface RpcManagerrpc - command to execute remotelyfuture - the future which will be passed back to the userpublic void broadcastRpcCommandInFuture(ReplicableCommand rpc, boolean usePriorityQueue, NotifyingNotifiableFuture<Object> future)
RpcManagerRpcManager.broadcastRpcCommand(org.infinispan.commands.ReplicableCommand, boolean, boolean) except that
the task is passed to the transport executor and a Future is returned. The transport always deals with this
synchronously.broadcastRpcCommandInFuture in interface RpcManagerrpc - command to execute remotelyusePriorityQueue - if true, a priority queue is usedfuture - the future which will be passed back to the userpublic Map<Address,Response> invokeRemotely(Collection<Address> recipients, ReplicableCommand rpc, boolean sync) throws RpcException
RpcManagerinvokeRemotely in interface RpcManagerrecipients - recipients to invoke remote command onrpc - command to execute remotelysync - if true, the transport will operate in sync mode. Otherwise, it will operate in async mode.RpcException - in the event of problemspublic Map<Address,Response> invokeRemotely(Collection<Address> recipients, ReplicableCommand rpc, boolean sync, boolean usePriorityQueue) throws RpcException
RpcManagerinvokeRemotely in interface RpcManagerrecipients - recipients to invoke remote command onrpc - command to execute remotelysync - if true, the transport will operate in sync mode. Otherwise, it will operate in async
mode.usePriorityQueue - if true, a priority queue is usedRpcException - in the event of problemspublic void invokeRemotelyInFuture(Collection<Address> recipients, ReplicableCommand rpc, NotifyingNotifiableFuture<Object> future)
RpcManagerRpcManager.invokeRemotely(java.util.Collection, 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.invokeRemotelyInFuture in interface RpcManagerrecipients - recipients to invoke remote call onrpc - command to execute remotelyfuture - the future which will be passed back to the userpublic void invokeRemotelyInFuture(Collection<Address> recipients, ReplicableCommand rpc, boolean usePriorityQueue, NotifyingNotifiableFuture<Object> future)
RpcManagerRpcManager.invokeRemotely(java.util.Collection, 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.invokeRemotelyInFuture in interface RpcManagerrecipients - recipients to invoke remote call onrpc - command to execute remotelyusePriorityQueue - if true, a priority queue is usedfuture - the future which will be passed back to the userpublic void invokeRemotelyInFuture(Collection<Address> recipients, ReplicableCommand rpc, boolean usePriorityQueue, NotifyingNotifiableFuture<Object> future, long timeout)
RpcManager#invokeRemotelyInFuture(java.util.Collection, org.infinispan.commands.ReplicableCommand,
boolean, org.infinispan.util.concurrent.NotifyingNotifiableFuture) except that you can specify a timeout.invokeRemotelyInFuture in interface RpcManagerrecipients - recipients to invoke remote call onrpc - command to execute remotelyusePriorityQueue - if true, a priority queue is usedfuture - the future which will be passed back to the usertimeout - after which to give up (in millis)public void invokeRemotelyInFuture(Collection<Address> recipients, ReplicableCommand rpc, boolean usePriorityQueue, NotifyingNotifiableFuture<Object> future, long timeout, boolean ignoreLeavers)
RpcManager#invokeRemotelyInFuture(java.util.Collection, org.infinispan.commands.ReplicableCommand,
boolean, org.infinispan.util.concurrent.NotifyingNotifiableFuture, long) except that you can specify a response mode.invokeRemotelyInFuture in interface RpcManagerrecipients - recipients to invoke remote call onrpc - command to execute remotelyusePriorityQueue - if true, a priority queue is usedfuture - the future which will be passed back to the usertimeout - after which to give up (in millis)ignoreLeavers - if true, recipients that leave or have already left the cluster are ignored
if false, a SuspectException is thrown when a leave is detectedpublic Map<Address,Response> invokeRemotely(Collection<Address> recipients, ReplicableCommand rpc, RpcOptions options)
RpcManagerinvokeRemotely in interface RpcManagerrecipients - a list of Addresses to invoke the call on. If this is null, the call is broadcast to the
entire cluster.rpc - command to execute remotely.options - it configures the invocation. The same instance can be re-used since RpcManager does
not change it. Any change in RpcOptions during a remote invocation can lead to
unpredictable behavior.public void invokeRemotelyInFuture(Collection<Address> recipients, ReplicableCommand rpc, RpcOptions options, NotifyingNotifiableFuture<Object> future)
RpcManagerRpcManager.invokeRemotely(java.util.Collection, org.infinispan.commands.ReplicableCommand, RpcOptions)
except that the task is passed to the transport executor and a Future is returned. The transport always deals
with this synchronously.invokeRemotelyInFuture in interface RpcManagerrecipients - recipients to invoke remote call on. If this is null, the call is broadcast to the
entire cluster.rpc - command to execute remotely.options - it configures the invocation. The same instance can be re-used since RpcManager does
not change it. Any change in RpcOptions during a remote invocation can lead to
unpredictable behavior.future - the future which will be passed back to the user.public RpcOptionsBuilder getRpcOptionsBuilder(ResponseMode responseMode)
RpcManagergetRpcOptionsBuilder(responseMode, true)getRpcOptionsBuilder in interface RpcManagerRpcOptionsBuilder with the default options, the response mode set by
and FIFO deliver order.public RpcOptionsBuilder getRpcOptionsBuilder(ResponseMode responseMode, boolean fifoOrder)
getRpcOptionsBuilder in interface RpcManagerRpcOptionsBuilder with the default options, the response mode set by
and the deliver order as fifo if the is true.public RpcOptions getDefaultRpcOptions(boolean sync)
RpcManagerRpcManager.getDefaultRpcOptions(boolean, boolean).
It is equivalent to getDefaultRpcOptions(sync, true)getDefaultRpcOptions in interface RpcManagersync - true for Synchronous RpcOptionspublic RpcOptions getDefaultRpcOptions(boolean sync, boolean fifoOrder)
RpcManagergetDefaultRpcOptions in interface RpcManagersync - true for Synchronous RpcOptionspublic Transport getTransport()
getTransport in interface RpcManagerpublic List<Address> getMembers()
RpcManagerTransport.getMembers()getMembers in interface RpcManagerpublic Address getAddress()
RpcManagergetAddress in interface RpcManagerpublic int getTopologyId()
RpcManagergetTopologyId in interface RpcManagerCopyright © 2014 JBoss, a division of Red Hat. All Rights Reserved.