Class TransportTasksAction<OperationTask extends Task,TasksRequest extends BaseTasksRequest<TasksRequest>,TasksResponse extends BaseTasksResponse,TaskResponse extends Writeable>
- java.lang.Object
-
- org.elasticsearch.action.support.TransportAction<Request,Response>
-
- org.elasticsearch.action.support.HandledTransportAction<TasksRequest,TasksResponse>
-
- org.elasticsearch.action.support.tasks.TransportTasksAction<OperationTask,TasksRequest,TasksResponse,TaskResponse>
-
- Direct Known Subclasses:
TransportCancelTasksAction
,TransportListTasksAction
public abstract class TransportTasksAction<OperationTask extends Task,TasksRequest extends BaseTasksRequest<TasksRequest>,TasksResponse extends BaseTasksResponse,TaskResponse extends Writeable> extends HandledTransportAction<TasksRequest,TasksResponse>
The base class for transport actions that are interacting with currently running tasks.
-
-
Field Summary
Fields Modifier and Type Field Description protected ClusterService
clusterService
protected Writeable.Reader<TasksRequest>
requestReader
protected Writeable.Reader<TaskResponse>
responseReader
protected Writeable.Reader<TasksResponse>
responsesReader
protected java.lang.String
transportNodeAction
protected TransportService
transportService
-
Fields inherited from class org.elasticsearch.action.support.TransportAction
actionName, logger, taskManager
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
TransportTasksAction(java.lang.String actionName, ClusterService clusterService, TransportService transportService, ActionFilters actionFilters, Writeable.Reader<TasksRequest> requestReader, Writeable.Reader<TasksResponse> responsesReader, Writeable.Reader<TaskResponse> responseReader, java.lang.String nodeExecutor)
-
Method Summary
Modifier and Type Method Description protected void
doExecute(Task task, TasksRequest request, ActionListener<TasksResponse> listener)
protected java.lang.String[]
filterNodeIds(DiscoveryNodes nodes, java.lang.String[] nodesIds)
protected TasksResponse
newResponse(TasksRequest request, java.util.concurrent.atomic.AtomicReferenceArray responses)
protected abstract TasksResponse
newResponse(TasksRequest request, java.util.List<TaskResponse> tasks, java.util.List<TaskOperationFailure> taskOperationFailures, java.util.List<FailedNodeException> failedNodeExceptions)
protected void
processTasks(TasksRequest request, java.util.function.Consumer<OperationTask> operation)
protected java.lang.String[]
resolveNodes(TasksRequest request, ClusterState clusterState)
protected abstract void
taskOperation(TasksRequest request, OperationTask task, ActionListener<TaskResponse> listener)
Perform the required operation on the task.-
Methods inherited from class org.elasticsearch.action.support.TransportAction
execute, execute, execute
-
-
-
-
Field Detail
-
clusterService
protected final ClusterService clusterService
-
transportService
protected final TransportService transportService
-
requestReader
protected final Writeable.Reader<TasksRequest extends BaseTasksRequest<TasksRequest>> requestReader
-
responsesReader
protected final Writeable.Reader<TasksResponse extends BaseTasksResponse> responsesReader
-
responseReader
protected final Writeable.Reader<TaskResponse extends Writeable> responseReader
-
transportNodeAction
protected final java.lang.String transportNodeAction
-
-
Constructor Detail
-
TransportTasksAction
protected TransportTasksAction(java.lang.String actionName, ClusterService clusterService, TransportService transportService, ActionFilters actionFilters, Writeable.Reader<TasksRequest> requestReader, Writeable.Reader<TasksResponse> responsesReader, Writeable.Reader<TaskResponse> responseReader, java.lang.String nodeExecutor)
-
-
Method Detail
-
doExecute
protected void doExecute(Task task, TasksRequest request, ActionListener<TasksResponse> listener)
- Specified by:
doExecute
in classTransportAction<TasksRequest extends BaseTasksRequest<TasksRequest>,TasksResponse extends BaseTasksResponse>
-
filterNodeIds
protected java.lang.String[] filterNodeIds(DiscoveryNodes nodes, java.lang.String[] nodesIds)
-
resolveNodes
protected java.lang.String[] resolveNodes(TasksRequest request, ClusterState clusterState)
-
processTasks
protected void processTasks(TasksRequest request, java.util.function.Consumer<OperationTask> operation)
-
newResponse
protected abstract TasksResponse newResponse(TasksRequest request, java.util.List<TaskResponse> tasks, java.util.List<TaskOperationFailure> taskOperationFailures, java.util.List<FailedNodeException> failedNodeExceptions)
-
newResponse
protected TasksResponse newResponse(TasksRequest request, java.util.concurrent.atomic.AtomicReferenceArray responses)
-
taskOperation
protected abstract void taskOperation(TasksRequest request, OperationTask task, ActionListener<TaskResponse> listener)
Perform the required operation on the task. It is OK start an asynchronous operation or to throw an exception but not both.
-
-