Class TransportBroadcastByNodeAction<Request extends BroadcastRequest<Request>,Response extends BaseBroadcastResponse,ShardOperationResult extends Writeable,NodeContext>

java.lang.Object
org.elasticsearch.action.support.TransportAction<Request,Response>
org.elasticsearch.action.support.HandledTransportAction<Request,Response>
org.elasticsearch.action.support.broadcast.node.TransportBroadcastByNodeAction<Request,Response,ShardOperationResult,NodeContext>
Type Parameters:
Request - the underlying client request
Response - the response to the client request
ShardOperationResult - per-shard operation results
NodeContext - an (optional) node context created by createNodeContext() on each node and passed to each call to shardOperation(Request, org.elasticsearch.cluster.routing.ShardRouting, org.elasticsearch.tasks.Task, NodeContext, org.elasticsearch.action.ActionListener<ShardOperationResult>)
Direct Known Subclasses:
TransportClearIndicesCacheAction, TransportFieldUsageAction, TransportForceMergeAction, TransportIndicesSegmentsAction, TransportIndicesStatsAction, TransportRecoveryAction, TransportReloadAnalyzersAction

public abstract class TransportBroadcastByNodeAction<Request extends BroadcastRequest<Request>,Response extends BaseBroadcastResponse,ShardOperationResult extends Writeable,NodeContext> extends HandledTransportAction<Request,Response>
Abstraction for transporting aggregated shard-level operations in a single request (NodeRequest) per-node and executing the shard-level operations serially on the receiving node. Each shard-level operation can produce a result (ShardOperationResult), these per-node shard-level results are aggregated into a single result (BroadcastByNodeResponse) to the coordinating node. These per-node results are aggregated into a single result (Result) to the client.