Skip to content

Commit e362eeb

Browse files
committed
changed data stream apis to be a cluster based action.
before this commit the data steams api were indices based actions, but data streams aren't indices, data streams encapsulates indices, but are indices themselves. It is a cluster level attribute, and therefor cluster based action fits best for now. Perhaps in the future we will have data stream based actions and then this would be a right fit for the data stream crud apis.
1 parent f7200c7 commit e362eeb

14 files changed

+89
-87
lines changed

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

+3-3
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,9 @@
2828
import org.elasticsearch.action.admin.cluster.configuration.ClearVotingConfigExclusionsAction;
2929
import org.elasticsearch.action.admin.cluster.configuration.TransportAddVotingConfigExclusionsAction;
3030
import org.elasticsearch.action.admin.cluster.configuration.TransportClearVotingConfigExclusionsAction;
31-
import org.elasticsearch.action.admin.indices.datastream.DeleteDataStreamAction;
32-
import org.elasticsearch.action.admin.indices.datastream.GetDataStreamsAction;
33-
import org.elasticsearch.action.admin.indices.datastream.CreateDataStreamAction;
31+
import org.elasticsearch.action.admin.cluster.datastream.DeleteDataStreamAction;
32+
import org.elasticsearch.action.admin.cluster.datastream.GetDataStreamsAction;
33+
import org.elasticsearch.action.admin.cluster.datastream.CreateDataStreamAction;
3434
import org.elasticsearch.action.admin.cluster.health.ClusterHealthAction;
3535
import org.elasticsearch.action.admin.cluster.health.TransportClusterHealthAction;
3636
import org.elasticsearch.action.admin.cluster.node.hotthreads.NodesHotThreadsAction;

server/src/main/java/org/elasticsearch/action/admin/indices/datastream/CreateDataStreamAction.java renamed to server/src/main/java/org/elasticsearch/action/admin/cluster/datastream/CreateDataStreamAction.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* specific language governing permissions and limitations
1717
* under the License.
1818
*/
19-
package org.elasticsearch.action.admin.indices.datastream;
19+
package org.elasticsearch.action.admin.cluster.datastream;
2020

2121
import org.elasticsearch.action.ActionListener;
2222
import org.elasticsearch.action.ActionRequestValidationException;
@@ -43,7 +43,7 @@
4343
public class CreateDataStreamAction extends ActionType<AcknowledgedResponse> {
4444

4545
public static final CreateDataStreamAction INSTANCE = new CreateDataStreamAction();
46-
public static final String NAME = "indices:admin/data_stream/create";
46+
public static final String NAME = "cluster:admin/data_stream/create";
4747

4848
private CreateDataStreamAction() {
4949
super(NAME, AcknowledgedResponse::new);

server/src/main/java/org/elasticsearch/action/admin/indices/datastream/DeleteDataStreamAction.java renamed to server/src/main/java/org/elasticsearch/action/admin/cluster/datastream/DeleteDataStreamAction.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* specific language governing permissions and limitations
1717
* under the License.
1818
*/
19-
package org.elasticsearch.action.admin.indices.datastream;
19+
package org.elasticsearch.action.admin.cluster.datastream;
2020

2121
import org.elasticsearch.action.ActionListener;
2222
import org.elasticsearch.action.ActionRequestValidationException;
@@ -43,7 +43,7 @@
4343
public class DeleteDataStreamAction extends ActionType<AcknowledgedResponse> {
4444

4545
public static final DeleteDataStreamAction INSTANCE = new DeleteDataStreamAction();
46-
public static final String NAME = "indices:admin/data_stream/delete";
46+
public static final String NAME = "cluster:admin/data_stream/delete";
4747

4848
private DeleteDataStreamAction() {
4949
super(NAME, AcknowledgedResponse::new);

server/src/main/java/org/elasticsearch/action/admin/indices/datastream/GetDataStreamsAction.java renamed to server/src/main/java/org/elasticsearch/action/admin/cluster/datastream/GetDataStreamsAction.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
* specific language governing permissions and limitations
1717
* under the License.
1818
*/
19-
package org.elasticsearch.action.admin.indices.datastream;
19+
package org.elasticsearch.action.admin.cluster.datastream;
2020

2121
import org.elasticsearch.action.ActionListener;
2222
import org.elasticsearch.action.ActionRequestValidationException;
@@ -48,7 +48,7 @@
4848
public class GetDataStreamsAction extends ActionType<GetDataStreamsAction.Response> {
4949

5050
public static final GetDataStreamsAction INSTANCE = new GetDataStreamsAction();
51-
public static final String NAME = "indices:admin/data_streams/get";
51+
public static final String NAME = "cluster:admin/data_streams/get";
5252

5353
private GetDataStreamsAction() {
5454
super(NAME, Response::new);

server/src/main/java/org/elasticsearch/client/ClusterAdminClient.java

+33
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@
2424
import org.elasticsearch.action.admin.cluster.allocation.ClusterAllocationExplainRequest;
2525
import org.elasticsearch.action.admin.cluster.allocation.ClusterAllocationExplainRequestBuilder;
2626
import org.elasticsearch.action.admin.cluster.allocation.ClusterAllocationExplainResponse;
27+
import org.elasticsearch.action.admin.cluster.datastream.CreateDataStreamAction;
28+
import org.elasticsearch.action.admin.cluster.datastream.DeleteDataStreamAction;
29+
import org.elasticsearch.action.admin.cluster.datastream.GetDataStreamsAction;
2730
import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequest;
2831
import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequestBuilder;
2932
import org.elasticsearch.action.admin.cluster.health.ClusterHealthResponse;
@@ -718,4 +721,34 @@ public interface ClusterAdminClient extends ElasticsearchClient {
718721
* Get a script from the cluster state
719722
*/
720723
ActionFuture<GetStoredScriptResponse> getStoredScript(GetStoredScriptRequest request);
724+
725+
/**
726+
* Store a data stream
727+
*/
728+
void createDataStream(CreateDataStreamAction.Request request, ActionListener<AcknowledgedResponse> listener);
729+
730+
/**
731+
* Store a data stream
732+
*/
733+
ActionFuture<AcknowledgedResponse> createDataStream(CreateDataStreamAction.Request request);
734+
735+
/**
736+
* Delete a data stream
737+
*/
738+
void deleteDataStream(DeleteDataStreamAction.Request request, ActionListener<AcknowledgedResponse> listener);
739+
740+
/**
741+
* Delete a data stream
742+
*/
743+
ActionFuture<AcknowledgedResponse> deleteDataStream(DeleteDataStreamAction.Request request);
744+
745+
/**
746+
* Get data streams
747+
*/
748+
void getDataStreams(GetDataStreamsAction.Request request, ActionListener<GetDataStreamsAction.Response> listener);
749+
750+
/**
751+
* Get data streams
752+
*/
753+
ActionFuture<GetDataStreamsAction.Response> getDataStreams(GetDataStreamsAction.Request request);
721754
}

server/src/main/java/org/elasticsearch/client/IndicesAdminClient.java

-32
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,6 @@
2121

2222
import org.elasticsearch.action.ActionFuture;
2323
import org.elasticsearch.action.ActionListener;
24-
import org.elasticsearch.action.admin.indices.datastream.DeleteDataStreamAction;
25-
import org.elasticsearch.action.admin.indices.datastream.GetDataStreamsAction;
26-
import org.elasticsearch.action.admin.indices.datastream.CreateDataStreamAction;
2724
import org.elasticsearch.action.admin.indices.alias.IndicesAliasesRequest;
2825
import org.elasticsearch.action.admin.indices.alias.IndicesAliasesRequestBuilder;
2926
import org.elasticsearch.action.admin.indices.alias.get.GetAliasesRequest;
@@ -716,33 +713,4 @@ public interface IndicesAdminClient extends ElasticsearchClient {
716713
*/
717714
void rolloverIndex(RolloverRequest request, ActionListener<RolloverResponse> listener);
718715

719-
/**
720-
* Store a data stream
721-
*/
722-
void createDataStream(CreateDataStreamAction.Request request, ActionListener<AcknowledgedResponse> listener);
723-
724-
/**
725-
* Store a data stream
726-
*/
727-
ActionFuture<AcknowledgedResponse> createDataStream(CreateDataStreamAction.Request request);
728-
729-
/**
730-
* Delete a data stream
731-
*/
732-
void deleteDataStream(DeleteDataStreamAction.Request request, ActionListener<AcknowledgedResponse> listener);
733-
734-
/**
735-
* Delete a data stream
736-
*/
737-
ActionFuture<AcknowledgedResponse> deleteDataStream(DeleteDataStreamAction.Request request);
738-
739-
/**
740-
* Get data streams
741-
*/
742-
void getDataStreams(GetDataStreamsAction.Request request, ActionListener<GetDataStreamsAction.Response> listener);
743-
744-
/**
745-
* Get data streams
746-
*/
747-
ActionFuture<GetDataStreamsAction.Response> getDataStreams(GetDataStreamsAction.Request request);
748716
}

server/src/main/java/org/elasticsearch/client/support/AbstractClient.java

+33-32
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@
3030
import org.elasticsearch.action.admin.cluster.allocation.ClusterAllocationExplainRequest;
3131
import org.elasticsearch.action.admin.cluster.allocation.ClusterAllocationExplainRequestBuilder;
3232
import org.elasticsearch.action.admin.cluster.allocation.ClusterAllocationExplainResponse;
33-
import org.elasticsearch.action.admin.indices.datastream.DeleteDataStreamAction;
34-
import org.elasticsearch.action.admin.indices.datastream.GetDataStreamsAction;
35-
import org.elasticsearch.action.admin.indices.datastream.CreateDataStreamAction;
33+
import org.elasticsearch.action.admin.cluster.datastream.DeleteDataStreamAction;
34+
import org.elasticsearch.action.admin.cluster.datastream.GetDataStreamsAction;
35+
import org.elasticsearch.action.admin.cluster.datastream.CreateDataStreamAction;
3636
import org.elasticsearch.action.admin.cluster.health.ClusterHealthAction;
3737
import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequest;
3838
import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequestBuilder;
@@ -1188,6 +1188,36 @@ public DeleteStoredScriptRequestBuilder prepareDeleteStoredScript(){
11881188
public DeleteStoredScriptRequestBuilder prepareDeleteStoredScript(String id){
11891189
return prepareDeleteStoredScript().setId(id);
11901190
}
1191+
1192+
@Override
1193+
public void createDataStream(CreateDataStreamAction.Request request, ActionListener<AcknowledgedResponse> listener) {
1194+
execute(CreateDataStreamAction.INSTANCE, request, listener);
1195+
}
1196+
1197+
@Override
1198+
public ActionFuture<AcknowledgedResponse> createDataStream(CreateDataStreamAction.Request request) {
1199+
return execute(CreateDataStreamAction.INSTANCE, request);
1200+
}
1201+
1202+
@Override
1203+
public void deleteDataStream(DeleteDataStreamAction.Request request, ActionListener<AcknowledgedResponse> listener) {
1204+
execute(DeleteDataStreamAction.INSTANCE, request, listener);
1205+
}
1206+
1207+
@Override
1208+
public ActionFuture<AcknowledgedResponse> deleteDataStream(DeleteDataStreamAction.Request request) {
1209+
return execute(DeleteDataStreamAction.INSTANCE, request);
1210+
}
1211+
1212+
@Override
1213+
public void getDataStreams(GetDataStreamsAction.Request request, ActionListener<GetDataStreamsAction.Response> listener) {
1214+
execute(GetDataStreamsAction.INSTANCE, request, listener);
1215+
}
1216+
1217+
@Override
1218+
public ActionFuture<GetDataStreamsAction.Response> getDataStreams(GetDataStreamsAction.Request request) {
1219+
return execute(GetDataStreamsAction.INSTANCE, request);
1220+
}
11911221
}
11921222

11931223
static class IndicesAdmin implements IndicesAdminClient {
@@ -1661,35 +1691,6 @@ public void getSettings(GetSettingsRequest request, ActionListener<GetSettingsRe
16611691
execute(GetSettingsAction.INSTANCE, request, listener);
16621692
}
16631693

1664-
@Override
1665-
public void createDataStream(CreateDataStreamAction.Request request, ActionListener<AcknowledgedResponse> listener) {
1666-
execute(CreateDataStreamAction.INSTANCE, request, listener);
1667-
}
1668-
1669-
@Override
1670-
public ActionFuture<AcknowledgedResponse> createDataStream(CreateDataStreamAction.Request request) {
1671-
return execute(CreateDataStreamAction.INSTANCE, request);
1672-
}
1673-
1674-
@Override
1675-
public void deleteDataStream(DeleteDataStreamAction.Request request, ActionListener<AcknowledgedResponse> listener) {
1676-
execute(DeleteDataStreamAction.INSTANCE, request, listener);
1677-
}
1678-
1679-
@Override
1680-
public ActionFuture<AcknowledgedResponse> deleteDataStream(DeleteDataStreamAction.Request request) {
1681-
return execute(DeleteDataStreamAction.INSTANCE, request);
1682-
}
1683-
1684-
@Override
1685-
public void getDataStreams(GetDataStreamsAction.Request request, ActionListener<GetDataStreamsAction.Response> listener) {
1686-
execute(GetDataStreamsAction.INSTANCE, request, listener);
1687-
}
1688-
1689-
@Override
1690-
public ActionFuture<GetDataStreamsAction.Response> getDataStreams(GetDataStreamsAction.Request request) {
1691-
return execute(GetDataStreamsAction.INSTANCE, request);
1692-
}
16931694
}
16941695

16951696
@Override

server/src/main/java/org/elasticsearch/rest/action/admin/cluster/RestCreateDataStreamAction.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
*/
1919
package org.elasticsearch.rest.action.admin.cluster;
2020

21-
import org.elasticsearch.action.admin.indices.datastream.CreateDataStreamAction;
21+
import org.elasticsearch.action.admin.cluster.datastream.CreateDataStreamAction;
2222
import org.elasticsearch.client.node.NodeClient;
2323
import org.elasticsearch.cluster.metadata.DataStream;
2424
import org.elasticsearch.rest.BaseRestHandler;
@@ -53,6 +53,6 @@ protected RestChannelConsumer prepareRequest(RestRequest request, NodeClient cli
5353
putDataStreamRequest.setTimestampFieldName(timeStampFieldName);
5454
}
5555
});
56-
return channel -> client.admin().indices().createDataStream(putDataStreamRequest, new RestToXContentListener<>(channel));
56+
return channel -> client.admin().cluster().createDataStream(putDataStreamRequest, new RestToXContentListener<>(channel));
5757
}
5858
}

server/src/main/java/org/elasticsearch/rest/action/admin/cluster/RestDeleteDataStreamAction.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
*/
1919
package org.elasticsearch.rest.action.admin.cluster;
2020

21-
import org.elasticsearch.action.admin.indices.datastream.DeleteDataStreamAction;
21+
import org.elasticsearch.action.admin.cluster.datastream.DeleteDataStreamAction;
2222
import org.elasticsearch.client.node.NodeClient;
2323
import org.elasticsearch.rest.BaseRestHandler;
2424
import org.elasticsearch.rest.RestRequest;
@@ -42,6 +42,6 @@ public List<Route> routes() {
4242
@Override
4343
protected RestChannelConsumer prepareRequest(RestRequest request, NodeClient client) throws IOException {
4444
DeleteDataStreamAction.Request deleteDataStreamRequest = new DeleteDataStreamAction.Request(request.param("name"));
45-
return channel -> client.admin().indices().deleteDataStream(deleteDataStreamRequest, new RestToXContentListener<>(channel));
45+
return channel -> client.admin().cluster().deleteDataStream(deleteDataStreamRequest, new RestToXContentListener<>(channel));
4646
}
4747
}

server/src/main/java/org/elasticsearch/rest/action/admin/cluster/RestGetDataStreamsAction.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
*/
1919
package org.elasticsearch.rest.action.admin.cluster;
2020

21-
import org.elasticsearch.action.admin.indices.datastream.GetDataStreamsAction;
21+
import org.elasticsearch.action.admin.cluster.datastream.GetDataStreamsAction;
2222
import org.elasticsearch.client.node.NodeClient;
2323
import org.elasticsearch.common.Strings;
2424
import org.elasticsearch.rest.BaseRestHandler;
@@ -47,6 +47,6 @@ public List<Route> routes() {
4747
protected RestChannelConsumer prepareRequest(RestRequest request, NodeClient client) throws IOException {
4848
String[] names = Strings.splitStringByCommaToArray(request.param("name"));
4949
GetDataStreamsAction.Request getDataStreamsRequest = new GetDataStreamsAction.Request(names);
50-
return channel -> client.admin().indices().getDataStreams(getDataStreamsRequest, new RestToXContentListener<>(channel));
50+
return channel -> client.admin().cluster().getDataStreams(getDataStreamsRequest, new RestToXContentListener<>(channel));
5151
}
5252
}
+2-2
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@
1616
* specific language governing permissions and limitations
1717
* under the License.
1818
*/
19-
package org.elasticsearch.action.admin.indices.datastream;
19+
package org.elasticsearch.action.admin.cluster.datastream;
2020

21-
import org.elasticsearch.action.admin.indices.datastream.CreateDataStreamAction.Request;
21+
import org.elasticsearch.action.admin.cluster.datastream.CreateDataStreamAction.Request;
2222
import org.elasticsearch.common.io.stream.Writeable;
2323
import org.elasticsearch.test.AbstractWireSerializingTestCase;
2424

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@
1616
* specific language governing permissions and limitations
1717
* under the License.
1818
*/
19-
package org.elasticsearch.action.admin.indices.datastream;
19+
package org.elasticsearch.action.admin.cluster.datastream;
2020

21-
import org.elasticsearch.action.admin.indices.datastream.DeleteDataStreamAction.Request;
21+
import org.elasticsearch.action.admin.cluster.datastream.DeleteDataStreamAction.Request;
2222
import org.elasticsearch.common.io.stream.Writeable;
2323
import org.elasticsearch.test.AbstractWireSerializingTestCase;
2424

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@
1616
* specific language governing permissions and limitations
1717
* under the License.
1818
*/
19-
package org.elasticsearch.action.admin.indices.datastream;
19+
package org.elasticsearch.action.admin.cluster.datastream;
2020

21-
import org.elasticsearch.action.admin.indices.datastream.GetDataStreamsAction.Request;
21+
import org.elasticsearch.action.admin.cluster.datastream.GetDataStreamsAction.Request;
2222
import org.elasticsearch.common.io.stream.Writeable;
2323
import org.elasticsearch.test.AbstractWireSerializingTestCase;
2424

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@
1616
* specific language governing permissions and limitations
1717
* under the License.
1818
*/
19-
package org.elasticsearch.action.admin.indices.datastream;
19+
package org.elasticsearch.action.admin.cluster.datastream;
2020

21-
import org.elasticsearch.action.admin.indices.datastream.GetDataStreamsAction.Response;
21+
import org.elasticsearch.action.admin.cluster.datastream.GetDataStreamsAction.Response;
2222
import org.elasticsearch.cluster.metadata.DataStream;
2323
import org.elasticsearch.common.io.stream.Writeable;
2424
import org.elasticsearch.common.xcontent.XContentParser;

0 commit comments

Comments
 (0)