Module org.elasticsearch.server
Class TransportNodesAction<NodesRequest extends BaseNodesRequest<NodesRequest>,NodesResponse extends BaseNodesResponse<?>,NodeRequest extends TransportRequest,NodeResponse extends BaseNodeResponse>
java.lang.Object
org.elasticsearch.action.support.TransportAction<NodesRequest,NodesResponse>
org.elasticsearch.action.support.nodes.TransportNodesAction<NodesRequest,NodesResponse,NodeRequest,NodeResponse>
- Direct Known Subclasses:
HealthApiStatsTransportAction
,TransportClusterStatsAction
,TransportFindDanglingIndexAction
,TransportListDanglingIndicesAction
,TransportNodesHotThreadsAction
,TransportNodesInfoAction
,TransportNodesListGatewayStartedShards
,TransportNodesListShardStoreMetadata
,TransportNodesReloadSecureSettingsAction
,TransportNodesSnapshotsStatus
,TransportNodesStatsAction
,TransportNodesUsageAction
,TransportPrevalidateShardPathAction
public abstract class TransportNodesAction<NodesRequest extends BaseNodesRequest<NodesRequest>,NodesResponse extends BaseNodesResponse<?>,NodeRequest extends TransportRequest,NodeResponse extends BaseNodeResponse>
extends TransportAction<NodesRequest,NodesResponse>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final ClusterService
protected final String
protected final TransportService
Fields inherited from class org.elasticsearch.action.support.TransportAction
actionName, taskManager
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
TransportNodesAction
(String actionName, ClusterService clusterService, TransportService transportService, ActionFilters actionFilters, Writeable.Reader<NodeRequest> nodeRequest, Executor executor) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
doExecute
(Task task, NodesRequest request, ActionListener<NodesResponse> listener) protected abstract NodeRequest
newNodeRequest
(NodesRequest request) protected abstract NodeResponse
newNodeResponse
(StreamInput in, DiscoveryNode node) protected abstract NodesResponse
newResponse
(NodesRequest request, List<NodeResponse> responses, List<FailedNodeException> failures) Create a newTransportNodesAction
.protected void
newResponseAsync
(Task task, NodesRequest request, List<NodeResponse> responses, List<FailedNodeException> failures, ActionListener<NodesResponse> listener) Create a newTransportNodesAction
, possibly asynchronously.protected abstract NodeResponse
nodeOperation
(NodeRequest request, Task task) protected void
resolveRequest
(NodesRequest request, ClusterState clusterState) resolve node ids to concrete nodes of the incoming requestMethods inherited from class org.elasticsearch.action.support.TransportAction
execute, localOnly
-
Field Details
-
clusterService
-
transportService
-
transportNodeAction
-
-
Constructor Details
-
TransportNodesAction
protected TransportNodesAction(String actionName, ClusterService clusterService, TransportService transportService, ActionFilters actionFilters, Writeable.Reader<NodeRequest> nodeRequest, Executor executor) - Parameters:
actionName
- action nameclusterService
- cluster servicetransportService
- transport serviceactionFilters
- action filtersnodeRequest
- node request readerexecutor
- executor to execute node action and final collection
-
-
Method Details
-
doExecute
- Specified by:
doExecute
in classTransportAction<NodesRequest extends BaseNodesRequest<NodesRequest>,
NodesResponse extends BaseNodesResponse<?>>
-
newResponse
protected abstract NodesResponse newResponse(NodesRequest request, List<NodeResponse> responses, List<FailedNodeException> failures) Create a newTransportNodesAction
. This method is executed onfinalExecutor
.- Parameters:
request
- The request whose response we are constructing.TransportNodesAction
may have already released all its references to this object before calling this method, so it's up to individual implementations to retain their own reference to the request if still needed here.responses
- All successful node-level responses.failures
- All node-level failures.- Returns:
- Never
null
. - Throws:
NullPointerException
- if any parameter isnull
.
-
newResponseAsync
protected void newResponseAsync(Task task, NodesRequest request, List<NodeResponse> responses, List<FailedNodeException> failures, ActionListener<NodesResponse> listener) Create a newTransportNodesAction
, possibly asynchronously. The default implementation is synchronous and callsnewResponse(BaseNodesRequest, List, List)
. This method is executed onfinalExecutor
.- Parameters:
request
- The request whose response we are constructing.TransportNodesAction
may have already released all its references to this object before calling this method, so it's up to individual implementations to retain their own reference to the request if still needed here.
-
newNodeRequest
-
newNodeResponse
protected abstract NodeResponse newNodeResponse(StreamInput in, DiscoveryNode node) throws IOException - Throws:
IOException
-
nodeOperation
-
resolveRequest
resolve node ids to concrete nodes of the incoming request
-