Class MultiTargetRequest<T>
java.lang.Object
java.util.concurrent.CompletableFuture<T>
org.infinispan.remoting.transport.AbstractRequest<T>
org.infinispan.remoting.transport.impl.MultiTargetRequest<T>
- All Implemented Interfaces:
- Callable<Void>,- CompletionStage<T>,- Future<T>,- Request<T>
- Direct Known Subclasses:
- StaggeredRequest
Request implementation that waits for responses from multiple target nodes.
- Since:
- 9.1
- Author:
- Dan Berindei
- 
Nested Class SummaryNested classes/interfaces inherited from class java.util.concurrent.CompletableFutureCompletableFuture.AsynchronousCompletionTask
- 
Field SummaryFields inherited from class org.infinispan.remoting.transport.AbstractRequestrepository, requestId, responseCollectorFields inherited from interface org.infinispan.remoting.transport.impl.RequestNO_REQUEST_ID
- 
Constructor SummaryConstructorsConstructorDescriptionMultiTargetRequest(ResponseCollector<T> responseCollector, long requestId, RequestRepository repository, Collection<Address> targets, Address excluded, JGroupsMetricsManager metricsCollector) 
- 
Method SummaryModifier and TypeMethodDescriptionprotected RequestTrackergetTarget(int i) protected intbooleanCalled when the node received a new cluster view.voidonResponse(Address sender, Response response) Called when a response is received for this response.protected voidCalled when the timeout task scheduled withAbstractRequest.setTimeout(ScheduledExecutorService, long, TimeUnit)expires.Methods inherited from class org.infinispan.remoting.transport.AbstractRequestcall, cancel, cancel, complete, completeExceptionally, getRequestId, getTimeoutMs, setTimeoutMethods inherited from class java.util.concurrent.CompletableFutureacceptEither, acceptEitherAsync, acceptEitherAsync, allOf, anyOf, applyToEither, applyToEitherAsync, applyToEitherAsync, completeAsync, completeAsync, completedFuture, completedStage, completeOnTimeout, copy, defaultExecutor, delayedExecutor, delayedExecutor, exceptionally, exceptionallyAsync, exceptionallyAsync, exceptionallyCompose, exceptionallyComposeAsync, exceptionallyComposeAsync, failedFuture, failedStage, get, get, getNow, getNumberOfDependents, handle, handleAsync, handleAsync, isCancelled, isCompletedExceptionally, isDone, join, minimalCompletionStage, newIncompleteFuture, obtrudeException, obtrudeValue, orTimeout, runAfterBoth, runAfterBothAsync, runAfterBothAsync, runAfterEither, runAfterEitherAsync, runAfterEitherAsync, runAsync, runAsync, supplyAsync, supplyAsync, thenAccept, thenAcceptAsync, thenAcceptAsync, thenAcceptBoth, thenAcceptBothAsync, thenAcceptBothAsync, thenApply, thenApplyAsync, thenApplyAsync, thenCombine, thenCombineAsync, thenCombineAsync, thenCompose, thenComposeAsync, thenComposeAsync, thenRun, thenRunAsync, thenRunAsync, toCompletableFuture, toString, whenComplete, whenCompleteAsync, whenCompleteAsyncMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.concurrent.CompletionStageacceptEither, acceptEitherAsync, acceptEitherAsync, applyToEither, applyToEitherAsync, applyToEitherAsync, exceptionally, exceptionallyAsync, exceptionallyAsync, exceptionallyCompose, exceptionallyComposeAsync, exceptionallyComposeAsync, handle, handleAsync, handleAsync, runAfterBoth, runAfterBothAsync, runAfterBothAsync, runAfterEither, runAfterEitherAsync, runAfterEitherAsync, thenAccept, thenAcceptAsync, thenAcceptAsync, thenAcceptBoth, thenAcceptBothAsync, thenAcceptBothAsync, thenApply, thenApplyAsync, thenApplyAsync, thenCombine, thenCombineAsync, thenCombineAsync, thenCompose, thenComposeAsync, thenComposeAsync, thenRun, thenRunAsync, thenRunAsync, toCompletableFuture, whenComplete, whenCompleteAsync, whenCompleteAsync
- 
Constructor Details- 
MultiTargetRequestpublic MultiTargetRequest(ResponseCollector<T> responseCollector, long requestId, RequestRepository repository, Collection<Address> targets, Address excluded, JGroupsMetricsManager metricsCollector) 
 
- 
- 
Method Details- 
getTargetsSizeprotected int getTargetsSize()
- 
getTarget- Returns:
- target i, ornullif a response was already added for targeti.
 
- 
onResponseDescription copied from interface:RequestCalled when a response is received for this response.
- 
onNewViewDescription copied from interface:RequestCalled when the node received a new cluster view.- Returns:
- trueif any of the request targets is not in the view.
 
- 
onTimeoutprotected void onTimeout()Description copied from class:AbstractRequestCalled when the timeout task scheduled withAbstractRequest.setTimeout(ScheduledExecutorService, long, TimeUnit)expires.- Specified by:
- onTimeoutin class- AbstractRequest<T>
 
 
-