## Uses of Interface
org.jgroups.util.NotifyingFuture

Packages that use NotifyingFuture
Package | Description
--- | ---
org.jgroups.blocks | Provides building blocks that are layered on top of channels.
org.jgroups.blocks.executor |
org.jgroups.util | Provides useful functionality which cannot be assigned to any particular other package.

### Uses of NotifyingFuture in org.jgroups.blocks

Classes in org.jgroups.blocks that implement NotifyingFuture
Modifier and Type | Class and Description
--- | ---
`class` | `GroupRequest` Sends a message to all members of the group and waits for all responses (or timeout).
`class` | `MultiRequest` Sends a request to multiple destinations.
`class` | `Request` Abstract class for a unicast or multicast request
`class` | `UnicastRequest<T>` Sends a request to a single target destination

Methods in org.jgroups.blocks that return NotifyingFuture
Modifier and Type | Method and Description
--- | ---
`NotifyingFuture<RspList>` | RpcDispatcher.`callRemoteMethodsWithFuture(java.util.Collection<Address> dests, MethodCall method_call, RequestOptions options)`
`NotifyingFuture<RspList>` | RpcDispatcher.`callRemoteMethodsWithFuture(java.util.Vector<Address> dests, MethodCall method_call)` Deprecated.
`NotifyingFuture<RspList>` | RpcDispatcher.`callRemoteMethodsWithFuture(java.util.Vector<Address> dests, MethodCall method_call, int mode, long timeout, boolean use_anycasting, boolean oob, RspFilter filter)` Deprecated.
`<T> NotifyingFuture<T>` | RpcDispatcher.`callRemoteMethodWithFuture(Address dest, MethodCall call)` Deprecated.
`<T> NotifyingFuture<T>` | RpcDispatcher.`callRemoteMethodWithFuture(Address dest, MethodCall method_call, int mode, long timeout, boolean oob)` Deprecated.
`<T> NotifyingFuture<T>` | RpcDispatcher.`callRemoteMethodWithFuture(Address dest, MethodCall call, RequestOptions options)`
`NotifyingFuture<RspList>` | MessageDispatcher.`castMessageWithFuture(java.util.Collection<Address> dests, Message msg, RequestOptions options)`
`NotifyingFuture<RspList>` | MessageDispatcher.`castMessageWithFuture(java.util.Vector dests, Message msg, int mode, long timeout, boolean use_anycasting, RspFilter filter)` Deprecated.
`<T> NotifyingFuture<T>` | MessageDispatcher.`sendMessageWithFuture(Message msg, int mode, long timeout)` Deprecated.
`<T> NotifyingFuture<T>` | MessageDispatcher.`sendMessageWithFuture(Message msg, RequestOptions options)`
`NotifyingFuture` | Request.`setListener(FutureListener listener)`

### Uses of NotifyingFuture in org.jgroups.blocks.executor

Classes in org.jgroups.blocks.executor that implement NotifyingFuture
Modifier and Type | Class and Description
--- | ---
`static class` | `ExecutionService.DistributedFuture<V>` This is basically a copy of the FutureTask in java.util.concurrent but added serializable to it.

Fields in org.jgroups.blocks.executor with type parameters of type NotifyingFuture
Modifier and Type | Field and Description
--- | ---
`protected java.util.concurrent.BlockingQueue<NotifyingFuture<V>>` | ExecutionCompletionService.`completionQueue`

Methods in org.jgroups.blocks.executor that return NotifyingFuture
Modifier and Type | Method and Description
--- | ---
`NotifyingFuture<V>` | ExecutionCompletionService.`poll()`
`NotifyingFuture<V>` | ExecutionCompletionService.`poll(long timeout, java.util.concurrent.TimeUnit unit)`
`NotifyingFuture<V>` | ExecutionService.DistributedFuture.`setListener(FutureListener<V> listener)`
`<T> NotifyingFuture<T>` | ExecutionService.`submit(java.util.concurrent.Callable<T> task)`
`<T> NotifyingFuture<T>` | ExecutionService.`submit(java.lang.Runnable task, T result)`
`NotifyingFuture<V>` | ExecutionCompletionService.`take()`

Constructor parameters in org.jgroups.blocks.executor with type arguments of type NotifyingFuture
Constructor and Description
`ExecutionCompletionService(ExecutionService executor, java.util.concurrent.BlockingQueue<NotifyingFuture<V>> completionQueue)` Creates an ExecutorCompletionService using the supplied executor for base task execution and the supplied queue as its completion queue.
`ExecutionCompletionService(ExecutionService executor, java.util.concurrent.BlockingQueue<NotifyingFuture<V>> completionQueue, ExecutionCompletionService.QueueingListener listener)` This constructor is here if someone wants to override this class and provide their own QueueingListener to possibly listen in on futures being finished

### Uses of NotifyingFuture in org.jgroups.util

Classes in org.jgroups.util that implement NotifyingFuture
Modifier and Type | Class and Description
--- | ---
`class` | `NullFuture<T>`

Methods in org.jgroups.util that return NotifyingFuture
Modifier and Type | Method and Description
--- | ---
`NotifyingFuture` | NullFuture.`setListener(FutureListener<T> listener)`
`NotifyingFuture` | NotifyingFuture.`setListener(FutureListener<T> listener)` Attaches a listener and returns the same future instance, to allow for 'building' futures.