Skip to content

Commit 2006758

Browse files
authored
Remove xpack info/usage ActionType subclasses (#104817)
Just use `ActionType` directly in this area of the codebase.
1 parent 6b7b84f commit 2006758

File tree

17 files changed

+167
-164
lines changed

17 files changed

+167
-164
lines changed

x-pack/plugin/core/src/internalClusterTest/java/org/elasticsearch/xpack/cluster/routing/allocation/DataTierTelemetryPlugin.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
package org.elasticsearch.xpack.cluster.routing.allocation;
99

10+
import org.elasticsearch.action.ActionType;
1011
import org.elasticsearch.action.support.ActionFilters;
1112
import org.elasticsearch.action.support.TransportAction;
1213
import org.elasticsearch.client.internal.node.NodeClient;
@@ -24,7 +25,9 @@
2425
import org.elasticsearch.xpack.core.action.TransportXPackInfoAction;
2526
import org.elasticsearch.xpack.core.action.TransportXPackUsageAction;
2627
import org.elasticsearch.xpack.core.action.XPackInfoFeatureAction;
28+
import org.elasticsearch.xpack.core.action.XPackInfoFeatureResponse;
2729
import org.elasticsearch.xpack.core.action.XPackUsageFeatureAction;
30+
import org.elasticsearch.xpack.core.action.XPackUsageFeatureResponse;
2831
import org.elasticsearch.xpack.core.action.XPackUsageResponse;
2932

3033
import java.nio.file.Path;
@@ -52,7 +55,7 @@ public DataTiersTransportXPackUsageAction(
5255
}
5356

5457
@Override
55-
protected List<XPackUsageFeatureAction> usageActions() {
58+
protected List<ActionType<XPackUsageFeatureResponse>> usageActions() {
5659
return Collections.singletonList(XPackUsageFeatureAction.DATA_TIERS);
5760
}
5861
}
@@ -69,7 +72,7 @@ public DataTiersTransportXPackInfoAction(
6972
}
7073

7174
@Override
72-
protected List<XPackInfoFeatureAction> infoActions() {
75+
protected List<ActionType<XPackInfoFeatureResponse>> infoActions() {
7376
return Collections.singletonList(XPackInfoFeatureAction.DATA_TIERS);
7477
}
7578
}

x-pack/plugin/core/src/internalClusterTest/java/org/elasticsearch/xpack/core/rest/action/DataTiersUsageRestCancellationIT.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
package org.elasticsearch.xpack.core.rest.action;
99

1010
import org.apache.http.client.methods.HttpGet;
11+
import org.elasticsearch.action.ActionType;
1112
import org.elasticsearch.action.support.ActionFilters;
1213
import org.elasticsearch.action.support.ActionTestUtils;
1314
import org.elasticsearch.action.support.PlainActionFuture;
@@ -33,6 +34,7 @@
3334
import org.elasticsearch.xpack.core.action.TransportXPackUsageAction;
3435
import org.elasticsearch.xpack.core.action.XPackUsageAction;
3536
import org.elasticsearch.xpack.core.action.XPackUsageFeatureAction;
37+
import org.elasticsearch.xpack.core.action.XPackUsageFeatureResponse;
3638
import org.elasticsearch.xpack.core.action.XPackUsageResponse;
3739
import org.elasticsearch.xpack.core.datatiers.NodesDataTiersUsageTransportAction;
3840

@@ -129,7 +131,7 @@ public DataTiersOnlyTransportXPackUsageAction(
129131
}
130132

131133
@Override
132-
protected List<XPackUsageFeatureAction> usageActions() {
134+
protected List<ActionType<XPackUsageFeatureResponse>> usageActions() {
133135
return List.of(XPackUsageFeatureAction.DATA_TIERS);
134136
}
135137
}

x-pack/plugin/core/src/internalClusterTest/java/org/elasticsearch/xpack/core/rest/action/XPackUsageRestCancellationIT.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import org.elasticsearch.action.ActionListener;
1313
import org.elasticsearch.action.ActionRequest;
1414
import org.elasticsearch.action.ActionResponse;
15+
import org.elasticsearch.action.ActionType;
1516
import org.elasticsearch.action.support.ActionFilters;
1617
import org.elasticsearch.action.support.PlainActionFuture;
1718
import org.elasticsearch.action.support.TransportAction;
@@ -37,7 +38,6 @@
3738
import org.elasticsearch.xpack.core.XPackFeatureSet;
3839
import org.elasticsearch.xpack.core.action.TransportXPackUsageAction;
3940
import org.elasticsearch.xpack.core.action.XPackUsageAction;
40-
import org.elasticsearch.xpack.core.action.XPackUsageFeatureAction;
4141
import org.elasticsearch.xpack.core.action.XPackUsageFeatureResponse;
4242
import org.elasticsearch.xpack.core.action.XPackUsageFeatureTransportAction;
4343
import org.elasticsearch.xpack.core.action.XPackUsageResponse;
@@ -53,6 +53,7 @@
5353
import static org.elasticsearch.action.support.ActionTestUtils.wrapAsRestResponseListener;
5454
import static org.elasticsearch.test.TaskAssertions.assertAllCancellableTasksAreCancelled;
5555
import static org.elasticsearch.test.TaskAssertions.assertAllTasksHaveFinished;
56+
import static org.elasticsearch.xpack.core.action.XPackUsageFeatureAction.xpackUsageFeatureAction;
5657
import static org.hamcrest.core.IsEqual.equalTo;
5758

5859
@ESIntegTestCase.ClusterScope(scope = ESIntegTestCase.Scope.TEST, numDataNodes = 0, numClientNodes = 0)
@@ -100,8 +101,8 @@ public void testCancellation() throws Exception {
100101
}
101102

102103
public static class BlockingUsageActionXPackPlugin extends LocalStateCompositeXPackPlugin {
103-
public static final XPackUsageFeatureAction BLOCKING_XPACK_USAGE = new XPackUsageFeatureAction("blocking_xpack_usage");
104-
public static final XPackUsageFeatureAction NON_BLOCKING_XPACK_USAGE = new XPackUsageFeatureAction("regular_xpack_usage");
104+
public static final ActionType<XPackUsageFeatureResponse> BLOCKING_XPACK_USAGE = xpackUsageFeatureAction("blocking_xpack_usage");
105+
public static final ActionType<XPackUsageFeatureResponse> NON_BLOCKING_XPACK_USAGE = xpackUsageFeatureAction("regular_xpack_usage");
105106

106107
public BlockingUsageActionXPackPlugin(Settings settings, Path configPath) {
107108
super(settings, configPath);
@@ -135,7 +136,7 @@ public ClusterBlockAwareTransportXPackUsageAction(
135136
}
136137

137138
@Override
138-
protected List<XPackUsageFeatureAction> usageActions() {
139+
protected List<ActionType<XPackUsageFeatureResponse>> usageActions() {
139140
return List.of(BlockingUsageActionXPackPlugin.BLOCKING_XPACK_USAGE, BlockingUsageActionXPackPlugin.NON_BLOCKING_XPACK_USAGE);
140141
}
141142
}

x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/action/TransportXPackInfoAction.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
package org.elasticsearch.xpack.core.action;
88

99
import org.elasticsearch.action.ActionListener;
10+
import org.elasticsearch.action.ActionType;
1011
import org.elasticsearch.action.support.ActionFilters;
1112
import org.elasticsearch.action.support.HandledTransportAction;
1213
import org.elasticsearch.client.internal.node.NodeClient;
@@ -31,7 +32,7 @@ public class TransportXPackInfoAction extends HandledTransportAction<XPackInfoRe
3132

3233
private final LicenseService licenseService;
3334
private final NodeClient client;
34-
private final List<XPackInfoFeatureAction> infoActions;
35+
private final List<ActionType<XPackInfoFeatureResponse>> infoActions;
3536

3637
@SuppressWarnings("this-escape")
3738
@Inject
@@ -48,7 +49,7 @@ public TransportXPackInfoAction(
4849
}
4950

5051
// overrideable for tests
51-
protected List<XPackInfoFeatureAction> infoActions() {
52+
protected List<ActionType<XPackInfoFeatureResponse>> infoActions() {
5253
return XPackInfoFeatureAction.ALL;
5354
}
5455

x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/action/TransportXPackUsageAction.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
import org.elasticsearch.action.ActionListener;
1010
import org.elasticsearch.action.ActionRunnable;
11+
import org.elasticsearch.action.ActionType;
1112
import org.elasticsearch.action.support.ActionFilters;
1213
import org.elasticsearch.action.support.master.TransportMasterNodeAction;
1314
import org.elasticsearch.client.internal.node.NodeClient;
@@ -28,7 +29,7 @@
2829
public class TransportXPackUsageAction extends TransportMasterNodeAction<XPackUsageRequest, XPackUsageResponse> {
2930

3031
private final NodeClient client;
31-
private final List<XPackUsageFeatureAction> usageActions;
32+
private final List<ActionType<XPackUsageFeatureResponse>> usageActions;
3233

3334
@SuppressWarnings("this-escape")
3435
@Inject
@@ -56,7 +57,7 @@ public TransportXPackUsageAction(
5657
}
5758

5859
// overrideable for tests
59-
protected List<XPackUsageFeatureAction> usageActions() {
60+
protected List<ActionType<XPackUsageFeatureResponse>> usageActions() {
6061
return XPackUsageFeatureAction.ALL;
6162
}
6263

x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/action/XPackInfoAction.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,14 @@
1010
import org.elasticsearch.action.RemoteClusterActionType;
1111
import org.elasticsearch.protocol.xpack.XPackInfoResponse;
1212

13-
public class XPackInfoAction extends ActionType<XPackInfoResponse> {
13+
public class XPackInfoAction {
1414

1515
public static final String NAME = "cluster:monitor/xpack/info";
16-
public static final XPackInfoAction INSTANCE = new XPackInfoAction();
16+
public static final ActionType<XPackInfoResponse> INSTANCE = new ActionType<>(NAME);
1717
public static final RemoteClusterActionType<XPackInfoResponse> REMOTE_TYPE = new RemoteClusterActionType<>(
1818
NAME,
1919
XPackInfoResponse::new
2020
);
2121

22-
public XPackInfoAction() {
23-
super(NAME);
24-
}
22+
private XPackInfoAction() {/* no instances */}
2523
}

x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/action/XPackInfoFeatureAction.java

Lines changed: 58 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,6 @@
99
import org.elasticsearch.action.ActionType;
1010
import org.elasticsearch.xpack.core.XPackField;
1111

12-
import java.util.ArrayList;
13-
import java.util.Arrays;
14-
import java.util.Collections;
1512
import java.util.List;
1613

1714
/**
@@ -21,79 +18,69 @@
2118
* {@link XPackInfoAction} implementation iterates over the {@link #ALL} list of actions to form
2219
* the complete info result.
2320
*/
24-
public class XPackInfoFeatureAction extends ActionType<XPackInfoFeatureResponse> {
21+
public class XPackInfoFeatureAction {
2522

2623
private static final String BASE_NAME = "cluster:monitor/xpack/info/";
2724

28-
public static final XPackInfoFeatureAction SECURITY = new XPackInfoFeatureAction(XPackField.SECURITY);
29-
public static final XPackInfoFeatureAction MONITORING = new XPackInfoFeatureAction(XPackField.MONITORING);
30-
public static final XPackInfoFeatureAction WATCHER = new XPackInfoFeatureAction(XPackField.WATCHER);
31-
public static final XPackInfoFeatureAction GRAPH = new XPackInfoFeatureAction(XPackField.GRAPH);
32-
public static final XPackInfoFeatureAction MACHINE_LEARNING = new XPackInfoFeatureAction(XPackField.MACHINE_LEARNING);
33-
public static final XPackInfoFeatureAction LOGSTASH = new XPackInfoFeatureAction(XPackField.LOGSTASH);
34-
public static final XPackInfoFeatureAction EQL = new XPackInfoFeatureAction(XPackField.EQL);
35-
public static final XPackInfoFeatureAction ESQL = new XPackInfoFeatureAction(XPackField.ESQL);
36-
public static final XPackInfoFeatureAction SQL = new XPackInfoFeatureAction(XPackField.SQL);
37-
public static final XPackInfoFeatureAction ROLLUP = new XPackInfoFeatureAction(XPackField.ROLLUP);
38-
public static final XPackInfoFeatureAction INDEX_LIFECYCLE = new XPackInfoFeatureAction(XPackField.INDEX_LIFECYCLE);
39-
public static final XPackInfoFeatureAction SNAPSHOT_LIFECYCLE = new XPackInfoFeatureAction(XPackField.SNAPSHOT_LIFECYCLE);
40-
public static final XPackInfoFeatureAction CCR = new XPackInfoFeatureAction(XPackField.CCR);
41-
public static final XPackInfoFeatureAction TRANSFORM = new XPackInfoFeatureAction(XPackField.TRANSFORM);
42-
public static final XPackInfoFeatureAction VOTING_ONLY = new XPackInfoFeatureAction(XPackField.VOTING_ONLY);
43-
public static final XPackInfoFeatureAction FROZEN_INDICES = new XPackInfoFeatureAction(XPackField.FROZEN_INDICES);
44-
public static final XPackInfoFeatureAction SPATIAL = new XPackInfoFeatureAction(XPackField.SPATIAL);
45-
public static final XPackInfoFeatureAction ANALYTICS = new XPackInfoFeatureAction(XPackField.ANALYTICS);
46-
public static final XPackInfoFeatureAction ENRICH = new XPackInfoFeatureAction(XPackField.ENRICH);
47-
public static final XPackInfoFeatureAction SEARCHABLE_SNAPSHOTS = new XPackInfoFeatureAction(XPackField.SEARCHABLE_SNAPSHOTS);
48-
public static final XPackInfoFeatureAction DATA_STREAMS = new XPackInfoFeatureAction(XPackField.DATA_STREAMS);
49-
public static final XPackInfoFeatureAction DATA_TIERS = new XPackInfoFeatureAction(XPackField.DATA_TIERS);
50-
public static final XPackInfoFeatureAction AGGREGATE_METRIC = new XPackInfoFeatureAction(XPackField.AGGREGATE_METRIC);
51-
public static final XPackInfoFeatureAction ARCHIVE = new XPackInfoFeatureAction(XPackField.ARCHIVE);
52-
public static final XPackInfoFeatureAction ENTERPRISE_SEARCH = new XPackInfoFeatureAction(XPackField.ENTERPRISE_SEARCH);
53-
public static final XPackInfoFeatureAction UNIVERSAL_PROFILING = new XPackInfoFeatureAction(XPackField.UNIVERSAL_PROFILING);
25+
public static final ActionType<XPackInfoFeatureResponse> SECURITY = xpackInfoFeatureAction(XPackField.SECURITY);
26+
public static final ActionType<XPackInfoFeatureResponse> MONITORING = xpackInfoFeatureAction(XPackField.MONITORING);
27+
public static final ActionType<XPackInfoFeatureResponse> WATCHER = xpackInfoFeatureAction(XPackField.WATCHER);
28+
public static final ActionType<XPackInfoFeatureResponse> GRAPH = xpackInfoFeatureAction(XPackField.GRAPH);
29+
public static final ActionType<XPackInfoFeatureResponse> MACHINE_LEARNING = xpackInfoFeatureAction(XPackField.MACHINE_LEARNING);
30+
public static final ActionType<XPackInfoFeatureResponse> LOGSTASH = xpackInfoFeatureAction(XPackField.LOGSTASH);
31+
public static final ActionType<XPackInfoFeatureResponse> EQL = xpackInfoFeatureAction(XPackField.EQL);
32+
public static final ActionType<XPackInfoFeatureResponse> ESQL = xpackInfoFeatureAction(XPackField.ESQL);
33+
public static final ActionType<XPackInfoFeatureResponse> SQL = xpackInfoFeatureAction(XPackField.SQL);
34+
public static final ActionType<XPackInfoFeatureResponse> ROLLUP = xpackInfoFeatureAction(XPackField.ROLLUP);
35+
public static final ActionType<XPackInfoFeatureResponse> INDEX_LIFECYCLE = xpackInfoFeatureAction(XPackField.INDEX_LIFECYCLE);
36+
public static final ActionType<XPackInfoFeatureResponse> SNAPSHOT_LIFECYCLE = xpackInfoFeatureAction(XPackField.SNAPSHOT_LIFECYCLE);
37+
public static final ActionType<XPackInfoFeatureResponse> CCR = xpackInfoFeatureAction(XPackField.CCR);
38+
public static final ActionType<XPackInfoFeatureResponse> TRANSFORM = xpackInfoFeatureAction(XPackField.TRANSFORM);
39+
public static final ActionType<XPackInfoFeatureResponse> VOTING_ONLY = xpackInfoFeatureAction(XPackField.VOTING_ONLY);
40+
public static final ActionType<XPackInfoFeatureResponse> FROZEN_INDICES = xpackInfoFeatureAction(XPackField.FROZEN_INDICES);
41+
public static final ActionType<XPackInfoFeatureResponse> SPATIAL = xpackInfoFeatureAction(XPackField.SPATIAL);
42+
public static final ActionType<XPackInfoFeatureResponse> ANALYTICS = xpackInfoFeatureAction(XPackField.ANALYTICS);
43+
public static final ActionType<XPackInfoFeatureResponse> ENRICH = xpackInfoFeatureAction(XPackField.ENRICH);
44+
public static final ActionType<XPackInfoFeatureResponse> SEARCHABLE_SNAPSHOTS = xpackInfoFeatureAction(XPackField.SEARCHABLE_SNAPSHOTS);
45+
public static final ActionType<XPackInfoFeatureResponse> DATA_STREAMS = xpackInfoFeatureAction(XPackField.DATA_STREAMS);
46+
public static final ActionType<XPackInfoFeatureResponse> DATA_TIERS = xpackInfoFeatureAction(XPackField.DATA_TIERS);
47+
public static final ActionType<XPackInfoFeatureResponse> AGGREGATE_METRIC = xpackInfoFeatureAction(XPackField.AGGREGATE_METRIC);
48+
public static final ActionType<XPackInfoFeatureResponse> ARCHIVE = xpackInfoFeatureAction(XPackField.ARCHIVE);
49+
public static final ActionType<XPackInfoFeatureResponse> ENTERPRISE_SEARCH = xpackInfoFeatureAction(XPackField.ENTERPRISE_SEARCH);
50+
public static final ActionType<XPackInfoFeatureResponse> UNIVERSAL_PROFILING = xpackInfoFeatureAction(XPackField.UNIVERSAL_PROFILING);
5451

55-
public static final List<XPackInfoFeatureAction> ALL;
56-
static {
57-
final List<XPackInfoFeatureAction> actions = new ArrayList<>();
58-
actions.addAll(
59-
Arrays.asList(
60-
SECURITY,
61-
MONITORING,
62-
WATCHER,
63-
GRAPH,
64-
MACHINE_LEARNING,
65-
LOGSTASH,
66-
EQL,
67-
ESQL,
68-
SQL,
69-
ROLLUP,
70-
INDEX_LIFECYCLE,
71-
SNAPSHOT_LIFECYCLE,
72-
CCR,
73-
TRANSFORM,
74-
VOTING_ONLY,
75-
FROZEN_INDICES,
76-
SPATIAL,
77-
ANALYTICS,
78-
ENRICH,
79-
DATA_STREAMS,
80-
SEARCHABLE_SNAPSHOTS,
81-
DATA_TIERS,
82-
AGGREGATE_METRIC,
83-
ARCHIVE,
84-
ENTERPRISE_SEARCH,
85-
UNIVERSAL_PROFILING
86-
)
87-
);
88-
ALL = Collections.unmodifiableList(actions);
89-
}
52+
public static final List<ActionType<XPackInfoFeatureResponse>> ALL = List.of(
53+
SECURITY,
54+
MONITORING,
55+
WATCHER,
56+
GRAPH,
57+
MACHINE_LEARNING,
58+
LOGSTASH,
59+
EQL,
60+
ESQL,
61+
SQL,
62+
ROLLUP,
63+
INDEX_LIFECYCLE,
64+
SNAPSHOT_LIFECYCLE,
65+
CCR,
66+
TRANSFORM,
67+
VOTING_ONLY,
68+
FROZEN_INDICES,
69+
SPATIAL,
70+
ANALYTICS,
71+
ENRICH,
72+
DATA_STREAMS,
73+
SEARCHABLE_SNAPSHOTS,
74+
DATA_TIERS,
75+
AGGREGATE_METRIC,
76+
ARCHIVE,
77+
ENTERPRISE_SEARCH,
78+
UNIVERSAL_PROFILING
79+
);
9080

91-
private XPackInfoFeatureAction(String name) {
92-
super(BASE_NAME + name);
81+
public static ActionType<XPackInfoFeatureResponse> xpackInfoFeatureAction(String suffix) {
82+
return new ActionType<>(BASE_NAME + suffix);
9383
}
9484

95-
@Override
96-
public String toString() {
97-
return "ActionType [" + name() + "]";
98-
}
85+
private XPackInfoFeatureAction() {/* no instances */}
9986
}

x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/action/XPackUsageAction.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,10 @@
88

99
import org.elasticsearch.action.ActionType;
1010

11-
public class XPackUsageAction extends ActionType<XPackUsageResponse> {
11+
public class XPackUsageAction {
1212

1313
public static final String NAME = "cluster:monitor/xpack/usage";
14-
public static final XPackUsageAction INSTANCE = new XPackUsageAction();
14+
public static final ActionType<XPackUsageResponse> INSTANCE = new ActionType<>(NAME);
1515

16-
public XPackUsageAction() {
17-
super(NAME);
18-
}
16+
private XPackUsageAction() {/* no instances */}
1917
}

0 commit comments

Comments
 (0)