Class TransportNodesAction<NodesRequest extends BaseNodesRequest<NodesRequest>,NodesResponse extends BaseNodesResponse,NodeRequest extends BaseNodeRequest,NodeResponse extends BaseNodeResponse>
- java.lang.Object
-
- org.elasticsearch.action.support.TransportAction<Request,Response>
-
- org.elasticsearch.action.support.HandledTransportAction<NodesRequest,NodesResponse>
-
- org.elasticsearch.action.support.nodes.TransportNodesAction<NodesRequest,NodesResponse,NodeRequest,NodeResponse>
-
- Direct Known Subclasses:
TransportClusterStatsAction
,TransportNodesHotThreadsAction
,TransportNodesInfoAction
,TransportNodesListGatewayMetaState
,TransportNodesListGatewayStartedShards
,TransportNodesListShardStoreMetaData
,TransportNodesReloadSecureSettingsAction
,TransportNodesSnapshotsStatus
,TransportNodesStatsAction
,TransportNodesUsageAction
public abstract class TransportNodesAction<NodesRequest extends BaseNodesRequest<NodesRequest>,NodesResponse extends BaseNodesResponse,NodeRequest extends BaseNodeRequest,NodeResponse extends BaseNodeResponse> extends HandledTransportAction<NodesRequest,NodesResponse>
-
-
Field Summary
Fields Modifier and Type Field Description protected ClusterService
clusterService
protected java.lang.Class<NodeResponse>
nodeResponseClass
protected ThreadPool
threadPool
protected TransportService
transportService
-
Fields inherited from class org.elasticsearch.action.support.TransportAction
actionName, logger, taskManager
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
TransportNodesAction(java.lang.String actionName, ThreadPool threadPool, ClusterService clusterService, TransportService transportService, ActionFilters actionFilters, java.util.function.Supplier<NodesRequest> request, java.util.function.Supplier<NodeRequest> nodeRequest, java.lang.String nodeExecutor, java.lang.Class<NodeResponse> nodeResponseClass)
-
Method Summary
Modifier and Type Method Description protected void
doExecute(Task task, NodesRequest request, ActionListener<NodesResponse> listener)
protected abstract NodeRequest
newNodeRequest(java.lang.String nodeId, NodesRequest request)
protected abstract NodeResponse
newNodeResponse()
protected NodesResponse
newResponse(NodesRequest request, java.util.concurrent.atomic.AtomicReferenceArray nodesResponses)
Map the responses intonodeResponseClass
responses andFailedNodeException
s.protected abstract NodesResponse
newResponse(NodesRequest request, java.util.List<NodeResponse> responses, java.util.List<FailedNodeException> failures)
Create a newTransportNodesAction
(multi-node response).protected abstract NodeResponse
nodeOperation(NodeRequest request)
protected NodeResponse
nodeOperation(NodeRequest request, Task task)
protected void
resolveRequest(NodesRequest request, ClusterState clusterState)
resolve node ids to concrete nodes of the incoming request-
Methods inherited from class org.elasticsearch.action.support.TransportAction
execute, execute, execute
-
-
-
-
Field Detail
-
threadPool
protected final ThreadPool threadPool
-
clusterService
protected final ClusterService clusterService
-
transportService
protected final TransportService transportService
-
nodeResponseClass
protected final java.lang.Class<NodeResponse extends BaseNodeResponse> nodeResponseClass
-
-
Constructor Detail
-
TransportNodesAction
protected TransportNodesAction(java.lang.String actionName, ThreadPool threadPool, ClusterService clusterService, TransportService transportService, ActionFilters actionFilters, java.util.function.Supplier<NodesRequest> request, java.util.function.Supplier<NodeRequest> nodeRequest, java.lang.String nodeExecutor, java.lang.Class<NodeResponse> nodeResponseClass)
-
-
Method Detail
-
doExecute
protected void doExecute(Task task, NodesRequest request, ActionListener<NodesResponse> listener)
- Specified by:
doExecute
in classTransportAction<NodesRequest extends BaseNodesRequest<NodesRequest>,NodesResponse extends BaseNodesResponse>
-
newResponse
protected NodesResponse newResponse(NodesRequest request, java.util.concurrent.atomic.AtomicReferenceArray nodesResponses)
Map the responses intonodeResponseClass
responses andFailedNodeException
s.- Parameters:
request
- The associated request.nodesResponses
- All node-level responses- Returns:
- Never
null
. - Throws:
java.lang.NullPointerException
- ifnodesResponses
isnull
- See Also:
newResponse(BaseNodesRequest, List, List)
-
newResponse
protected abstract NodesResponse newResponse(NodesRequest request, java.util.List<NodeResponse> responses, java.util.List<FailedNodeException> failures)
Create a newTransportNodesAction
(multi-node response).- Parameters:
request
- The associated request.responses
- All successful node-level responses.failures
- All node-level failures.- Returns:
- Never
null
. - Throws:
java.lang.NullPointerException
- if any parameter isnull
.
-
newNodeRequest
protected abstract NodeRequest newNodeRequest(java.lang.String nodeId, NodesRequest request)
-
newNodeResponse
protected abstract NodeResponse newNodeResponse()
-
nodeOperation
protected abstract NodeResponse nodeOperation(NodeRequest request)
-
nodeOperation
protected NodeResponse nodeOperation(NodeRequest request, Task task)
-
resolveRequest
protected void resolveRequest(NodesRequest request, ClusterState clusterState)
resolve node ids to concrete nodes of the incoming request
-
-