public abstract class TransportBroadcastAction<Request extends BroadcastRequest<Request>,Response extends BroadcastResponse,ShardRequest extends BroadcastShardRequest,ShardResponse extends BroadcastShardResponse> extends HandledTransportAction<Request,Response>
Modifier and Type | Class and Description |
---|---|
protected class |
TransportBroadcastAction.AsyncBroadcastAction |
Modifier and Type | Field and Description |
---|---|
protected ClusterService |
clusterService |
protected TransportService |
transportService |
actionName, indexNameExpressionResolver, parseFieldMatcher, taskManager, threadPool
deprecationLogger, logger, settings
Modifier | Constructor and Description |
---|---|
protected |
TransportBroadcastAction(Settings settings,
java.lang.String actionName,
ThreadPool threadPool,
ClusterService clusterService,
TransportService transportService,
ActionFilters actionFilters,
IndexNameExpressionResolver indexNameExpressionResolver,
java.util.function.Supplier<Request> request,
java.util.function.Supplier<ShardRequest> shardRequest,
java.lang.String shardExecutor) |
Modifier and Type | Method and Description |
---|---|
protected abstract ClusterBlockException |
checkGlobalBlock(ClusterState state,
Request request) |
protected abstract ClusterBlockException |
checkRequestBlock(ClusterState state,
Request request,
java.lang.String[] concreteIndices) |
protected void |
doExecute(Request request,
ActionListener<Response> listener) |
protected void |
doExecute(Task task,
Request request,
ActionListener<Response> listener) |
protected abstract Response |
newResponse(Request request,
java.util.concurrent.atomic.AtomicReferenceArray shardsResponses,
ClusterState clusterState) |
protected abstract ShardRequest |
newShardRequest(int numShards,
ShardRouting shard,
Request request) |
protected abstract ShardResponse |
newShardResponse() |
protected abstract ShardResponse |
shardOperation(ShardRequest request) |
protected ShardResponse |
shardOperation(ShardRequest request,
Task task) |
protected abstract GroupShardsIterator |
shards(ClusterState clusterState,
Request request,
java.lang.String[] concreteIndices)
Determines the shards this operation will be executed on.
|
execute, execute, execute, execute
logDeprecatedSetting, logRemovedSetting, nodeName
protected final ClusterService clusterService
protected final TransportService transportService
protected TransportBroadcastAction(Settings settings, java.lang.String actionName, ThreadPool threadPool, ClusterService clusterService, TransportService transportService, ActionFilters actionFilters, IndexNameExpressionResolver indexNameExpressionResolver, java.util.function.Supplier<Request> request, java.util.function.Supplier<ShardRequest> shardRequest, java.lang.String shardExecutor)
protected void doExecute(Task task, Request request, ActionListener<Response> listener)
doExecute
in class TransportAction<Request extends BroadcastRequest<Request>,Response extends BroadcastResponse>
protected final void doExecute(Request request, ActionListener<Response> listener)
doExecute
in class TransportAction<Request extends BroadcastRequest<Request>,Response extends BroadcastResponse>
protected abstract Response newResponse(Request request, java.util.concurrent.atomic.AtomicReferenceArray shardsResponses, ClusterState clusterState)
protected abstract ShardRequest newShardRequest(int numShards, ShardRouting shard, Request request)
protected abstract ShardResponse newShardResponse()
protected abstract ShardResponse shardOperation(ShardRequest request) throws java.io.IOException
java.io.IOException
protected ShardResponse shardOperation(ShardRequest request, Task task) throws java.io.IOException
java.io.IOException
protected abstract GroupShardsIterator shards(ClusterState clusterState, Request request, java.lang.String[] concreteIndices)
protected abstract ClusterBlockException checkGlobalBlock(ClusterState state, Request request)
protected abstract ClusterBlockException checkRequestBlock(ClusterState state, Request request, java.lang.String[] concreteIndices)