public class ExecutorServiceProxy extends AbstractDistributedObject<DistributedExecutorService> implements IExecutorService
Modifier and Type | Field and Description |
---|---|
static int |
SYNC_DELAY_MS |
static int |
SYNC_FREQUENCY |
PARTITIONING_STRATEGY
Constructor and Description |
---|
ExecutorServiceProxy(String name,
NodeEngine nodeEngine,
DistributedExecutorService service) |
Modifier and Type | Method and Description |
---|---|
boolean |
awaitTermination(long timeout,
TimeUnit unit) |
void |
execute(Runnable command) |
void |
execute(Runnable command,
MemberSelector memberSelector)
Executes task on a randomly selected member
|
void |
executeOnAllMembers(Runnable command)
Executes task on all of known cluster members
|
void |
executeOnKeyOwner(Runnable command,
Object key)
Executes task on owner of the specified key
|
void |
executeOnMember(Runnable command,
Member member)
Executes task on the specified member
|
void |
executeOnMembers(Runnable command,
Collection<Member> members)
Executes task on each of the specified members
|
void |
executeOnMembers(Runnable command,
MemberSelector memberSelector)
Executes task on each of the selected members
|
LocalExecutorStats |
getLocalExecutorStats()
Returns local statistics related to this executor service.
|
String |
getName()
Returns the unique name for this DistributedObject.
|
String |
getServiceName()
Returns the service name for this object.
|
<T> List<Future<T>> |
invokeAll(Collection<? extends Callable<T>> tasks) |
<T> List<Future<T>> |
invokeAll(Collection<? extends Callable<T>> tasks,
long timeout,
TimeUnit unit) |
<T> T |
invokeAny(Collection<? extends Callable<T>> tasks) |
<T> T |
invokeAny(Collection<? extends Callable<T>> tasks,
long timeout,
TimeUnit unit) |
boolean |
isShutdown() |
boolean |
isTerminated() |
void |
shutdown() |
List<Runnable> |
shutdownNow() |
<T> Future<T> |
submit(Callable<T> task) |
<T> void |
submit(Callable<T> task,
ExecutionCallback<T> callback)
Submits task to a random member.
|
<T> Future<T> |
submit(Callable<T> task,
MemberSelector memberSelector)
Submits task to a randomly selected member and returns a Future
representing that task.
|
<T> void |
submit(Callable<T> task,
MemberSelector memberSelector,
ExecutionCallback<T> callback)
Submits task to a randomly selected member.
|
Future<?> |
submit(Runnable task) |
void |
submit(Runnable task,
ExecutionCallback callback)
Submits task to a random member.
|
void |
submit(Runnable task,
MemberSelector memberSelector,
ExecutionCallback callback)
Submits task to a randomly selected members.
|
<T> Future<T> |
submit(Runnable task,
T result) |
<T> Map<Member,Future<T>> |
submitToAllMembers(Callable<T> task)
Submits task to all cluster members and returns
map of Member-Future pairs representing pending completion of the task on each member
|
<T> void |
submitToAllMembers(Callable<T> task,
MultiExecutionCallback callback)
Submits task to the all cluster members.
|
void |
submitToAllMembers(Runnable task,
MultiExecutionCallback callback)
Submits task to the all cluster members.
|
<T> Future<T> |
submitToKeyOwner(Callable<T> task,
Object key)
Submits task to owner of the specified key and returns a Future
representing that task.
|
<T> void |
submitToKeyOwner(Callable<T> task,
Object key,
ExecutionCallback<T> callback)
Submits task to owner of the specified key.
|
void |
submitToKeyOwner(Runnable task,
Object key,
ExecutionCallback callback)
Submits task to owner of the specified key.
|
<T> Future<T> |
submitToMember(Callable<T> task,
Member member)
Submits task to specified member and returns a Future
representing that task.
|
<T> void |
submitToMember(Callable<T> task,
Member member,
ExecutionCallback<T> callback)
Submits task to the specified member.
|
void |
submitToMember(Runnable task,
Member member,
ExecutionCallback callback)
Submits task to the specified member.
|
<T> Map<Member,Future<T>> |
submitToMembers(Callable<T> task,
Collection<Member> members)
Submits task to given members and returns
map of Member-Future pairs representing pending completion of the task on each member
|
<T> void |
submitToMembers(Callable<T> task,
Collection<Member> members,
MultiExecutionCallback callback)
Submits task to the specified members.
|
<T> Map<Member,Future<T>> |
submitToMembers(Callable<T> task,
MemberSelector memberSelector)
Submits task to selected members and returns
map of Member-Future pairs representing pending completion of the task on each member
|
<T> void |
submitToMembers(Callable<T> task,
MemberSelector memberSelector,
MultiExecutionCallback callback)
Submits task to the selected members.
|
void |
submitToMembers(Runnable task,
Collection<Member> members,
MultiExecutionCallback callback)
Submits task to the specified members.
|
void |
submitToMembers(Runnable task,
MemberSelector memberSelector,
MultiExecutionCallback callback)
Submits task to the selected members.
|
protected void |
throwNotActiveException() |
String |
toString() |
destroy, equals, getId, getNameAsPartitionAwareData, getNodeEngine, getPartitionKey, getService, hashCode, invalidate, postDestroy
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
destroy, getId, getPartitionKey
public static final int SYNC_FREQUENCY
public static final int SYNC_DELAY_MS
public ExecutorServiceProxy(String name, NodeEngine nodeEngine, DistributedExecutorService service)
public void execute(Runnable command, MemberSelector memberSelector)
IExecutorService
execute
in interface IExecutorService
command
- taskmemberSelector
- memberSelectorpublic void executeOnMembers(Runnable command, MemberSelector memberSelector)
IExecutorService
executeOnMembers
in interface IExecutorService
command
- taskmemberSelector
- memberSelectorpublic <T> Future<T> submit(Callable<T> task, MemberSelector memberSelector)
IExecutorService
submit
in interface IExecutorService
task
- taskmemberSelector
- memberSelectorpublic <T> Map<Member,Future<T>> submitToMembers(Callable<T> task, MemberSelector memberSelector)
IExecutorService
submitToMembers
in interface IExecutorService
task
- taskmemberSelector
- memberSelectorpublic void submit(Runnable task, MemberSelector memberSelector, ExecutionCallback callback)
IExecutorService
ExecutionCallback.onResponse(Object)
or ExecutionCallback.onFailure(Throwable)
.submit
in interface IExecutorService
task
- taskmemberSelector
- memberSelectorcallback
- callbackpublic void submitToMembers(Runnable task, MemberSelector memberSelector, MultiExecutionCallback callback)
IExecutorService
MultiExecutionCallback.onResponse(Member, Object)
, and when all tasks are completed,
MultiExecutionCallback.onComplete(java.util.Map)
will be called.submitToMembers
in interface IExecutorService
task
- taskmemberSelector
- memberSelectorcallback
- callbackpublic <T> void submit(Callable<T> task, MemberSelector memberSelector, ExecutionCallback<T> callback)
IExecutorService
ExecutionCallback.onResponse(Object)
or ExecutionCallback.onFailure(Throwable)
.submit
in interface IExecutorService
task
- taskmemberSelector
- memberSelectorcallback
- callbackpublic <T> void submitToMembers(Callable<T> task, MemberSelector memberSelector, MultiExecutionCallback callback)
IExecutorService
MultiExecutionCallback.onResponse(Member, Object)
, and when all tasks are completed,
MultiExecutionCallback.onComplete(java.util.Map)
will be called.submitToMembers
in interface IExecutorService
task
- taskmemberSelector
- memberSelectorcallback
- callbackpublic void executeOnKeyOwner(Runnable command, Object key)
IExecutorService
executeOnKeyOwner
in interface IExecutorService
command
- taskkey
- keypublic void executeOnMember(Runnable command, Member member)
IExecutorService
executeOnMember
in interface IExecutorService
command
- taskmember
- memberpublic void executeOnMembers(Runnable command, Collection<Member> members)
IExecutorService
executeOnMembers
in interface IExecutorService
command
- taskmembers
- memberspublic void executeOnAllMembers(Runnable command)
IExecutorService
executeOnAllMembers
in interface IExecutorService
command
- taskpublic Future<?> submit(Runnable task)
submit
in interface ExecutorService
public <T> Future<T> submit(Runnable task, T result)
submit
in interface ExecutorService
public <T> Future<T> submit(Callable<T> task)
submit
in interface ExecutorService
public <T> Future<T> submitToKeyOwner(Callable<T> task, Object key)
IExecutorService
submitToKeyOwner
in interface IExecutorService
task
- taskkey
- keypublic <T> Future<T> submitToMember(Callable<T> task, Member member)
IExecutorService
submitToMember
in interface IExecutorService
task
- taskmember
- memberpublic <T> Map<Member,Future<T>> submitToMembers(Callable<T> task, Collection<Member> members)
IExecutorService
submitToMembers
in interface IExecutorService
task
- taskmembers
- memberspublic <T> Map<Member,Future<T>> submitToAllMembers(Callable<T> task)
IExecutorService
submitToAllMembers
in interface IExecutorService
task
- taskpublic void submit(Runnable task, ExecutionCallback callback)
IExecutorService
ExecutionCallback.onResponse(Object)
or ExecutionCallback.onFailure(Throwable)
.submit
in interface IExecutorService
task
- taskcallback
- callbackpublic void submitToKeyOwner(Runnable task, Object key, ExecutionCallback callback)
IExecutorService
ExecutionCallback.onResponse(Object)
or ExecutionCallback.onFailure(Throwable)
.submitToKeyOwner
in interface IExecutorService
task
- taskcallback
- callbackpublic void submitToMember(Runnable task, Member member, ExecutionCallback callback)
IExecutorService
ExecutionCallback.onResponse(Object)
or ExecutionCallback.onFailure(Throwable)
.submitToMember
in interface IExecutorService
task
- taskcallback
- callbackpublic void submitToMembers(Runnable task, Collection<Member> members, MultiExecutionCallback callback)
IExecutorService
MultiExecutionCallback.onResponse(Member, Object)
, and when all tasks are completed,
MultiExecutionCallback.onComplete(java.util.Map)
will be called.submitToMembers
in interface IExecutorService
task
- taskmembers
- memberscallback
- callbackpublic void submitToAllMembers(Runnable task, MultiExecutionCallback callback)
IExecutorService
MultiExecutionCallback.onResponse(Member, Object)
, and when all tasks are completed,
MultiExecutionCallback.onComplete(java.util.Map)
will be called.submitToAllMembers
in interface IExecutorService
task
- taskcallback
- callbackpublic <T> void submit(Callable<T> task, ExecutionCallback<T> callback)
IExecutorService
ExecutionCallback.onResponse(Object)
or ExecutionCallback.onFailure(Throwable)
.submit
in interface IExecutorService
task
- taskcallback
- callbackpublic <T> void submitToKeyOwner(Callable<T> task, Object key, ExecutionCallback<T> callback)
IExecutorService
ExecutionCallback.onResponse(Object)
or ExecutionCallback.onFailure(Throwable)
.submitToKeyOwner
in interface IExecutorService
task
- taskcallback
- callbackpublic <T> void submitToMember(Callable<T> task, Member member, ExecutionCallback<T> callback)
IExecutorService
ExecutionCallback.onResponse(Object)
or ExecutionCallback.onFailure(Throwable)
.submitToMember
in interface IExecutorService
task
- taskcallback
- callbackpublic <T> void submitToMembers(Callable<T> task, Collection<Member> members, MultiExecutionCallback callback)
IExecutorService
MultiExecutionCallback.onResponse(Member, Object)
, and when all tasks are completed,
MultiExecutionCallback.onComplete(java.util.Map)
will be called.submitToMembers
in interface IExecutorService
task
- taskmembers
- memberscallback
- callbackpublic <T> void submitToAllMembers(Callable<T> task, MultiExecutionCallback callback)
IExecutorService
MultiExecutionCallback.onResponse(Member, Object)
, and when all tasks are completed,
MultiExecutionCallback.onComplete(java.util.Map)
will be called.submitToAllMembers
in interface IExecutorService
task
- taskcallback
- callbackpublic <T> List<Future<T>> invokeAll(Collection<? extends Callable<T>> tasks) throws InterruptedException
invokeAll
in interface ExecutorService
InterruptedException
public <T> List<Future<T>> invokeAll(Collection<? extends Callable<T>> tasks, long timeout, TimeUnit unit) throws InterruptedException
invokeAll
in interface ExecutorService
InterruptedException
public <T> T invokeAny(Collection<? extends Callable<T>> tasks) throws InterruptedException, ExecutionException
invokeAny
in interface ExecutorService
InterruptedException
ExecutionException
public <T> T invokeAny(Collection<? extends Callable<T>> tasks, long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException
invokeAny
in interface ExecutorService
InterruptedException
ExecutionException
TimeoutException
protected void throwNotActiveException()
throwNotActiveException
in class AbstractDistributedObject<DistributedExecutorService>
public boolean isShutdown()
isShutdown
in interface ExecutorService
public boolean isTerminated()
isTerminated
in interface ExecutorService
public boolean awaitTermination(long timeout, TimeUnit unit) throws InterruptedException
awaitTermination
in interface ExecutorService
InterruptedException
public void shutdown()
shutdown
in interface ExecutorService
public List<Runnable> shutdownNow()
shutdownNow
in interface ExecutorService
public LocalExecutorStats getLocalExecutorStats()
IExecutorService
getLocalExecutorStats
in interface IExecutorService
public String getServiceName()
DistributedObject
getServiceName
in interface DistributedObject
getServiceName
in class AbstractDistributedObject<DistributedExecutorService>
public String getName()
DistributedObject
getName
in interface DistributedObject
public String toString()
toString
in class AbstractDistributedObject<DistributedExecutorService>
Copyright © 2014 Hazelcast, Inc.. All Rights Reserved.