Skip to content

Commit 83ce15a

Browse files
authored
Make TransportRequest an interface (#126733)
In order to support a future TransportRequest variant that accepts the response type, TransportRequest needs to be an interface. This commit adds AbstractTransportRequest as a concrete implementation and makes TransportRequest a simple interface that joints together the parent interfaces from TransportMessage. Note that this was done entirely in Intellij using structural find and replace.
1 parent b917d9a commit 83ce15a

File tree

103 files changed

+473
-434
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

103 files changed

+473
-434
lines changed

modules/ingest-geoip/src/main/java/org/elasticsearch/ingest/geoip/direct/GetDatabaseConfigurationAction.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
import org.elasticsearch.cluster.node.DiscoveryNode;
1919
import org.elasticsearch.common.io.stream.StreamInput;
2020
import org.elasticsearch.common.io.stream.StreamOutput;
21-
import org.elasticsearch.transport.TransportRequest;
21+
import org.elasticsearch.transport.AbstractTransportRequest;
2222
import org.elasticsearch.xcontent.ToXContentObject;
2323
import org.elasticsearch.xcontent.XContentBuilder;
2424

@@ -187,7 +187,7 @@ private synchronized Map<String, NodeResponse> equalsHashCodeNodesMap() {
187187
}
188188
}
189189

190-
public static class NodeRequest extends TransportRequest {
190+
public static class NodeRequest extends AbstractTransportRequest {
191191

192192
private final String[] databaseIds;
193193

modules/ingest-geoip/src/main/java/org/elasticsearch/ingest/geoip/stats/GeoIpStatsAction.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import org.elasticsearch.common.io.stream.StreamOutput;
2222
import org.elasticsearch.common.io.stream.Writeable;
2323
import org.elasticsearch.core.TimeValue;
24-
import org.elasticsearch.transport.TransportRequest;
24+
import org.elasticsearch.transport.AbstractTransportRequest;
2525
import org.elasticsearch.xcontent.ToXContentObject;
2626
import org.elasticsearch.xcontent.XContentBuilder;
2727

@@ -68,7 +68,7 @@ public boolean equals(Object obj) {
6868
}
6969
}
7070

71-
public static class NodeRequest extends TransportRequest {
71+
public static class NodeRequest extends AbstractTransportRequest {
7272
public NodeRequest(StreamInput in) throws IOException {
7373
super(in);
7474
}

plugins/examples/security-authorization-engine/src/test/java/org/elasticsearch/example/CustomAuthorizationEngineTests.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import org.elasticsearch.common.settings.Settings;
1818
import org.elasticsearch.index.IndexVersion;
1919
import org.elasticsearch.test.ESTestCase;
20+
import org.elasticsearch.transport.AbstractTransportRequest;
2021
import org.elasticsearch.transport.TransportRequest;
2122
import org.elasticsearch.xpack.core.security.authc.Authentication;
2223
import org.elasticsearch.xpack.core.security.authc.Authentication.RealmRef;
@@ -47,7 +48,7 @@ public void testGetAuthorizationInfo() {
4748

4849
public void testAuthorizeRunAs() {
4950
final String action = "cluster:monitor/foo";
50-
final TransportRequest request = new TransportRequest() {
51+
final TransportRequest request = new AbstractTransportRequest() {
5152
};
5253
CustomAuthorizationEngine engine = new CustomAuthorizationEngine();
5354
// unauthorized
@@ -181,7 +182,7 @@ public void testAuthorizeIndexAction() {
181182

182183
private RequestInfo getRequestInfo() {
183184
final String action = "cluster:monitor/foo";
184-
final TransportRequest request = new TransportRequest() {
185+
final TransportRequest request = new AbstractTransportRequest() {
185186
};
186187
final Authentication authentication = Authentication.newRealmAuthentication(
187188
new User("joe", "custom_superuser"),

server/src/main/java/org/elasticsearch/action/ActionRequest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,11 @@
1111

1212
import org.elasticsearch.common.io.stream.StreamInput;
1313
import org.elasticsearch.common.io.stream.StreamOutput;
14-
import org.elasticsearch.transport.TransportRequest;
14+
import org.elasticsearch.transport.AbstractTransportRequest;
1515

1616
import java.io.IOException;
1717

18-
public abstract class ActionRequest extends TransportRequest {
18+
public abstract class ActionRequest extends AbstractTransportRequest {
1919

2020
public ActionRequest() {
2121
super();

server/src/main/java/org/elasticsearch/action/admin/cluster/node/capabilities/TransportNodesCapabilitiesAction.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
import org.elasticsearch.rest.RestRequest;
2626
import org.elasticsearch.tasks.Task;
2727
import org.elasticsearch.threadpool.ThreadPool;
28-
import org.elasticsearch.transport.TransportRequest;
28+
import org.elasticsearch.transport.AbstractTransportRequest;
2929
import org.elasticsearch.transport.TransportService;
3030

3131
import java.io.IOException;
@@ -110,7 +110,7 @@ protected NodeCapability nodeOperation(NodeCapabilitiesRequest request, Task tas
110110
return new NodeCapability(supported, transportService.getLocalNode());
111111
}
112112

113-
public static class NodeCapabilitiesRequest extends TransportRequest {
113+
public static class NodeCapabilitiesRequest extends AbstractTransportRequest {
114114
private final RestRequest.Method method;
115115
private final String path;
116116
private final Set<String> parameters;

server/src/main/java/org/elasticsearch/action/admin/cluster/node/features/TransportNodesFeaturesAction.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,14 @@
2121
import org.elasticsearch.injection.guice.Inject;
2222
import org.elasticsearch.tasks.Task;
2323
import org.elasticsearch.threadpool.ThreadPool;
24-
import org.elasticsearch.transport.TransportRequest;
24+
import org.elasticsearch.transport.AbstractTransportRequest;
2525
import org.elasticsearch.transport.TransportService;
2626

2727
import java.io.IOException;
2828
import java.util.List;
2929

30-
@UpdateForV10(owner = UpdateForV10.Owner.CORE_INFRA) // this can be removed in v10. It may be called by v8 nodes to v9 nodes.
30+
@UpdateForV10(owner = UpdateForV10.Owner.CORE_INFRA)
31+
// this can be removed in v10. It may be called by v8 nodes to v9 nodes.
3132
public class TransportNodesFeaturesAction extends TransportNodesAction<
3233
NodesFeaturesRequest,
3334
NodesFeaturesResponse,
@@ -82,7 +83,7 @@ protected NodeFeatures nodeOperation(NodeFeaturesRequest request, Task task) {
8283
return new NodeFeatures(featureService.getNodeFeatures().keySet(), transportService.getLocalNode());
8384
}
8485

85-
public static class NodeFeaturesRequest extends TransportRequest {
86+
public static class NodeFeaturesRequest extends AbstractTransportRequest {
8687
public NodeFeaturesRequest(StreamInput in) throws IOException {
8788
super(in);
8889
}

server/src/main/java/org/elasticsearch/action/admin/cluster/node/hotthreads/TransportNodesHotThreadsAction.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@
2525
import org.elasticsearch.monitor.jvm.HotThreads;
2626
import org.elasticsearch.tasks.Task;
2727
import org.elasticsearch.threadpool.ThreadPool;
28+
import org.elasticsearch.transport.AbstractTransportRequest;
2829
import org.elasticsearch.transport.LeakTracker;
29-
import org.elasticsearch.transport.TransportRequest;
3030
import org.elasticsearch.transport.TransportService;
3131

3232
import java.io.IOException;
@@ -106,7 +106,7 @@ protected NodeHotThreads nodeOperation(NodeRequest request, Task task) {
106106
}
107107
}
108108

109-
public static class NodeRequest extends TransportRequest {
109+
public static class NodeRequest extends AbstractTransportRequest {
110110

111111
final HotThreads.RequestOptions requestOptions;
112112

server/src/main/java/org/elasticsearch/action/admin/cluster/node/info/TransportNodesInfoAction.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import org.elasticsearch.node.NodeService;
2222
import org.elasticsearch.tasks.Task;
2323
import org.elasticsearch.threadpool.ThreadPool;
24-
import org.elasticsearch.transport.TransportRequest;
24+
import org.elasticsearch.transport.AbstractTransportRequest;
2525
import org.elasticsearch.transport.TransportService;
2626

2727
import java.io.IOException;
@@ -95,7 +95,7 @@ protected NodeInfo nodeOperation(NodeInfoRequest nodeRequest, Task task) {
9595
);
9696
}
9797

98-
public static class NodeInfoRequest extends TransportRequest {
98+
public static class NodeInfoRequest extends AbstractTransportRequest {
9999

100100
private final NodesInfoMetrics nodesInfoMetrics;
101101

server/src/main/java/org/elasticsearch/action/admin/cluster/node/reload/NodesReloadSecureSettingsRequest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@
2424
import org.elasticsearch.core.RefCounted;
2525
import org.elasticsearch.core.Releasables;
2626
import org.elasticsearch.tasks.TaskId;
27+
import org.elasticsearch.transport.AbstractTransportRequest;
2728
import org.elasticsearch.transport.LeakTracker;
28-
import org.elasticsearch.transport.TransportRequest;
2929

3030
import java.io.IOException;
3131
import java.util.Arrays;
@@ -82,7 +82,7 @@ NodeRequest newNodeRequest() {
8282
return new NodeRequest(secureSettingsPassword, refs);
8383
}
8484

85-
public static class NodeRequest extends TransportRequest {
85+
public static class NodeRequest extends AbstractTransportRequest {
8686

8787
@Nullable
8888
private final SecureString secureSettingsPassword;

server/src/main/java/org/elasticsearch/action/admin/cluster/node/shutdown/NodePrevalidateShardPathRequest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
import org.elasticsearch.common.io.stream.StreamInput;
1313
import org.elasticsearch.common.io.stream.StreamOutput;
1414
import org.elasticsearch.index.shard.ShardId;
15-
import org.elasticsearch.transport.TransportRequest;
15+
import org.elasticsearch.transport.AbstractTransportRequest;
1616

1717
import java.io.IOException;
1818
import java.util.Collection;
@@ -21,8 +21,8 @@
2121

2222
/**
2323
* A node-specific request derived from the corresponding {@link PrevalidateShardPathRequest}.
24-
*/
25-
public class NodePrevalidateShardPathRequest extends TransportRequest {
24+
*/
25+
public class NodePrevalidateShardPathRequest extends AbstractTransportRequest {
2626

2727
private final Set<ShardId> shardIds;
2828

server/src/main/java/org/elasticsearch/action/admin/cluster/node/stats/TransportNodesStatsAction.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
import org.elasticsearch.tasks.Task;
3535
import org.elasticsearch.tasks.TaskId;
3636
import org.elasticsearch.threadpool.ThreadPool;
37-
import org.elasticsearch.transport.TransportRequest;
37+
import org.elasticsearch.transport.AbstractTransportRequest;
3838
import org.elasticsearch.transport.TransportService;
3939
import org.elasticsearch.transport.Transports;
4040

@@ -179,7 +179,7 @@ protected NodeStats nodeOperation(NodeStatsRequest request, Task task) {
179179
);
180180
}
181181

182-
public static class NodeStatsRequest extends TransportRequest {
182+
public static class NodeStatsRequest extends AbstractTransportRequest {
183183

184184
private final NodesStatsRequestParameters nodesStatsRequestParameters;
185185

server/src/main/java/org/elasticsearch/action/admin/cluster/node/usage/TransportNodesUsageAction.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import org.elasticsearch.search.aggregations.support.AggregationUsageService;
2222
import org.elasticsearch.tasks.Task;
2323
import org.elasticsearch.threadpool.ThreadPool;
24-
import org.elasticsearch.transport.TransportRequest;
24+
import org.elasticsearch.transport.AbstractTransportRequest;
2525
import org.elasticsearch.transport.TransportService;
2626
import org.elasticsearch.usage.UsageService;
2727

@@ -85,7 +85,7 @@ protected NodeUsage nodeOperation(NodeUsageRequest request, Task task) {
8585
return new NodeUsage(clusterService.localNode(), System.currentTimeMillis(), sinceTime, restUsage, aggsUsage);
8686
}
8787

88-
public static class NodeUsageRequest extends TransportRequest {
88+
public static class NodeUsageRequest extends AbstractTransportRequest {
8989

9090
final boolean restActions;
9191
final boolean aggregations;

server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/status/TransportNodesSnapshotsStatus.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
import org.elasticsearch.snapshots.SnapshotShardsService;
3030
import org.elasticsearch.tasks.Task;
3131
import org.elasticsearch.threadpool.ThreadPool;
32-
import org.elasticsearch.transport.TransportRequest;
32+
import org.elasticsearch.transport.AbstractTransportRequest;
3333
import org.elasticsearch.transport.TransportService;
3434

3535
import java.io.IOException;
@@ -148,7 +148,7 @@ protected void writeNodesTo(StreamOutput out, List<NodeSnapshotStatus> nodes) th
148148
}
149149
}
150150

151-
public static class NodeRequest extends TransportRequest {
151+
public static class NodeRequest extends AbstractTransportRequest {
152152

153153
private final List<Snapshot> snapshots;
154154

@@ -157,7 +157,7 @@ public NodeRequest(StreamInput in) throws IOException {
157157
snapshots = in.readCollectionAsList(Snapshot::new);
158158
}
159159

160-
NodeRequest(TransportNodesSnapshotsStatus.Request request) {
160+
NodeRequest(Request request) {
161161
snapshots = Arrays.asList(request.snapshots);
162162
}
163163

server/src/main/java/org/elasticsearch/action/admin/cluster/stats/TransportClusterStatsAction.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,10 +57,10 @@
5757
import org.elasticsearch.tasks.Task;
5858
import org.elasticsearch.tasks.TaskId;
5959
import org.elasticsearch.threadpool.ThreadPool;
60+
import org.elasticsearch.transport.AbstractTransportRequest;
6061
import org.elasticsearch.transport.RemoteClusterConnection;
6162
import org.elasticsearch.transport.RemoteClusterService;
6263
import org.elasticsearch.transport.RemoteConnectionInfo;
63-
import org.elasticsearch.transport.TransportRequest;
6464
import org.elasticsearch.transport.TransportService;
6565
import org.elasticsearch.transport.Transports;
6666
import org.elasticsearch.usage.SearchUsageHolder;
@@ -319,7 +319,7 @@ protected ClusterStatsNodeResponse nodeOperation(ClusterStatsNodeRequest nodeReq
319319
);
320320
}
321321

322-
public static class ClusterStatsNodeRequest extends TransportRequest {
322+
public static class ClusterStatsNodeRequest extends AbstractTransportRequest {
323323

324324
ClusterStatsNodeRequest() {}
325325

server/src/main/java/org/elasticsearch/action/admin/indices/dangling/find/NodeFindDanglingIndexRequest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@
1111

1212
import org.elasticsearch.common.io.stream.StreamInput;
1313
import org.elasticsearch.common.io.stream.StreamOutput;
14-
import org.elasticsearch.transport.TransportRequest;
14+
import org.elasticsearch.transport.AbstractTransportRequest;
1515

1616
import java.io.IOException;
1717

1818
/**
1919
* Used when querying every node in the cluster for a specific dangling index.
2020
*/
21-
public class NodeFindDanglingIndexRequest extends TransportRequest {
21+
public class NodeFindDanglingIndexRequest extends AbstractTransportRequest {
2222
private final String indexUUID;
2323

2424
public NodeFindDanglingIndexRequest(String indexUUID) {

server/src/main/java/org/elasticsearch/action/admin/indices/dangling/list/NodeListDanglingIndicesRequest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@
1111

1212
import org.elasticsearch.common.io.stream.StreamInput;
1313
import org.elasticsearch.common.io.stream.StreamOutput;
14-
import org.elasticsearch.transport.TransportRequest;
14+
import org.elasticsearch.transport.AbstractTransportRequest;
1515

1616
import java.io.IOException;
1717

1818
/**
1919
* Used when querying every node in the cluster for dangling indices, in response to a list request.
2020
*/
21-
public class NodeListDanglingIndicesRequest extends TransportRequest {
21+
public class NodeListDanglingIndicesRequest extends AbstractTransportRequest {
2222
/**
2323
* Filter the response by index UUID. Leave as null to find all indices.
2424
*/

server/src/main/java/org/elasticsearch/action/admin/indices/flush/TransportShardFlushAction.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@
2626
import org.elasticsearch.injection.guice.Inject;
2727
import org.elasticsearch.tasks.Task;
2828
import org.elasticsearch.threadpool.ThreadPool;
29+
import org.elasticsearch.transport.AbstractTransportRequest;
2930
import org.elasticsearch.transport.TransportChannel;
30-
import org.elasticsearch.transport.TransportRequest;
3131
import org.elasticsearch.transport.TransportRequestHandler;
3232
import org.elasticsearch.transport.TransportService;
3333

@@ -100,7 +100,7 @@ protected void shardOperationOnReplica(ShardFlushRequest request, IndexShard rep
100100
// TODO: Remove this transition in 9.0
101101
private static final String PRE_SYNCED_FLUSH_ACTION_NAME = "internal:indices/flush/synced/pre";
102102

103-
private static class PreShardSyncedFlushRequest extends TransportRequest {
103+
private static class PreShardSyncedFlushRequest extends AbstractTransportRequest {
104104
private final ShardId shardId;
105105

106106
private PreShardSyncedFlushRequest(StreamInput in) throws IOException {

server/src/main/java/org/elasticsearch/action/search/CanMatchNodeRequest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
import org.elasticsearch.search.internal.ShardSearchRequest;
3030
import org.elasticsearch.tasks.Task;
3131
import org.elasticsearch.tasks.TaskId;
32-
import org.elasticsearch.transport.TransportRequest;
32+
import org.elasticsearch.transport.AbstractTransportRequest;
3333

3434
import java.io.IOException;
3535
import java.util.ArrayList;
@@ -41,7 +41,7 @@
4141
/**
4242
* Node-level request used during can-match phase
4343
*/
44-
public class CanMatchNodeRequest extends TransportRequest implements IndicesRequest {
44+
public class CanMatchNodeRequest extends AbstractTransportRequest implements IndicesRequest {
4545

4646
private final SearchSourceBuilder source;
4747
private final List<Shard> shards;

server/src/main/java/org/elasticsearch/action/search/SearchQueryThenFetchAsyncAction.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,13 +50,13 @@
5050
import org.elasticsearch.tasks.TaskCancelledException;
5151
import org.elasticsearch.tasks.TaskId;
5252
import org.elasticsearch.threadpool.ThreadPool;
53+
import org.elasticsearch.transport.AbstractTransportRequest;
5354
import org.elasticsearch.transport.LeakTracker;
5455
import org.elasticsearch.transport.SendRequestTransportException;
5556
import org.elasticsearch.transport.Transport;
5657
import org.elasticsearch.transport.TransportActionProxy;
5758
import org.elasticsearch.transport.TransportChannel;
5859
import org.elasticsearch.transport.TransportException;
59-
import org.elasticsearch.transport.TransportRequest;
6060
import org.elasticsearch.transport.TransportResponse;
6161
import org.elasticsearch.transport.TransportResponseHandler;
6262

@@ -286,7 +286,7 @@ public boolean decRef() {
286286
/**
287287
* Request for starting the query phase for multiple shards.
288288
*/
289-
public static final class NodeQueryRequest extends TransportRequest implements IndicesRequest {
289+
public static final class NodeQueryRequest extends AbstractTransportRequest implements IndicesRequest {
290290
private final List<ShardToQuery> shards;
291291
private final SearchRequest searchRequest;
292292
private final Map<String, AliasFilter> aliasFilters;
@@ -368,7 +368,7 @@ public void writeTo(StreamOutput out) throws IOException {
368368
* Check if, based on already collected results, a shard search can be updated with a lower search threshold than is current set.
369369
* When the query executes via batched execution, data nodes this take into account the results of queries run against shards local
370370
* to the datanode. On the coordinating node results received from all data nodes are taken into account.
371-
*
371+
* <p>
372372
* See {@link BottomSortValuesCollector} for details.
373373
*/
374374
private static ShardSearchRequest tryRewriteWithUpdatedSortValue(

0 commit comments

Comments
 (0)