Skip to content

Commit d2b9c19

Browse files
TransportGetFieldMappingsAction implements TransportIndicesResolvingAction
1 parent 8b460cb commit d2b9c19

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

server/src/main/java/org/opensearch/action/admin/indices/mapping/get/TransportGetFieldMappingsAction.java

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,10 @@
3434

3535
import org.opensearch.action.support.ActionFilters;
3636
import org.opensearch.action.support.HandledTransportAction;
37+
import org.opensearch.action.support.TransportIndicesResolvingAction;
3738
import org.opensearch.cluster.ClusterState;
3839
import org.opensearch.cluster.metadata.IndexNameExpressionResolver;
40+
import org.opensearch.cluster.metadata.ResolvedIndices;
3941
import org.opensearch.cluster.service.ClusterService;
4042
import org.opensearch.common.inject.Inject;
4143
import org.opensearch.core.action.ActionListener;
@@ -55,7 +57,8 @@
5557
*
5658
* @opensearch.internal
5759
*/
58-
public class TransportGetFieldMappingsAction extends HandledTransportAction<GetFieldMappingsRequest, GetFieldMappingsResponse> {
60+
public class TransportGetFieldMappingsAction extends HandledTransportAction<GetFieldMappingsRequest, GetFieldMappingsResponse> implements
61+
TransportIndicesResolvingAction<GetFieldMappingsRequest> {
5962

6063
private final ClusterService clusterService;
6164
private final TransportGetFieldMappingsIndexAction shardAction;
@@ -78,7 +81,7 @@ public TransportGetFieldMappingsAction(
7881
@Override
7982
protected void doExecute(Task task, GetFieldMappingsRequest request, final ActionListener<GetFieldMappingsResponse> listener) {
8083
ClusterState clusterState = clusterService.state();
81-
String[] concreteIndices = indexNameExpressionResolver.concreteIndexNames(clusterState, request);
84+
String[] concreteIndices = resolveIndices(request, clusterState);
8285
final AtomicInteger indexCounter = new AtomicInteger();
8386
final AtomicInteger completionCounter = new AtomicInteger(concreteIndices.length);
8487
final AtomicReferenceArray<Object> indexResponses = new AtomicReferenceArray<>(concreteIndices.length);
@@ -110,6 +113,15 @@ public void onFailure(Exception e) {
110113
}
111114
}
112115

116+
private String[] resolveIndices(GetFieldMappingsRequest request, ClusterState clusterState) {
117+
return indexNameExpressionResolver.concreteIndexNames(clusterState, request);
118+
}
119+
120+
@Override
121+
public ResolvedIndices resolveIndices(GetFieldMappingsRequest request) {
122+
return ResolvedIndices.of(resolveIndices(request, clusterService.state()));
123+
}
124+
113125
private GetFieldMappingsResponse merge(AtomicReferenceArray<Object> indexResponses) {
114126
Map<String, Map<String, GetFieldMappingsResponse.FieldMappingMetadata>> mergedResponses = new HashMap<>();
115127
for (int i = 0; i < indexResponses.length(); i++) {

0 commit comments

Comments
 (0)