Deprecate type exists requests. (#34663)
This commit is contained in:
parent
52fc502b7e
commit
fbb9ac34f9
|
@ -1,6 +1,8 @@
|
||||||
[[indices-types-exists]]
|
[[indices-types-exists]]
|
||||||
== Types Exists
|
== Types Exists
|
||||||
|
|
||||||
|
deprecated[7.0.0, Types are deprecated and are in the process of being removed. See <<removal-of-types>>.]
|
||||||
|
|
||||||
Used to check if a type/types exists in an index/indices.
|
Used to check if a type/types exists in an index/indices.
|
||||||
|
|
||||||
[source,js]
|
[source,js]
|
||||||
|
@ -9,6 +11,7 @@ HEAD twitter/_mapping/tweet
|
||||||
--------------------------------------------------
|
--------------------------------------------------
|
||||||
// CONSOLE
|
// CONSOLE
|
||||||
// TEST[setup:twitter]
|
// TEST[setup:twitter]
|
||||||
|
// TEST[warning:Type exists requests are deprecated, as types have been deprecated.]
|
||||||
|
|
||||||
The HTTP status code indicates if the type exists or not. A `404` means
|
The HTTP status code indicates if the type exists or not. A `404` means
|
||||||
it does not exist, and `200` means it does.
|
it does not exist, and `200` means it does.
|
||||||
|
|
|
@ -1,39 +0,0 @@
|
||||||
---
|
|
||||||
"Exists type":
|
|
||||||
- do:
|
|
||||||
indices.create:
|
|
||||||
index: test_1
|
|
||||||
body:
|
|
||||||
mappings:
|
|
||||||
type_1: {}
|
|
||||||
|
|
||||||
- do:
|
|
||||||
indices.exists_type:
|
|
||||||
index: test_2
|
|
||||||
type: type_1
|
|
||||||
|
|
||||||
- is_false: ''
|
|
||||||
|
|
||||||
- do:
|
|
||||||
indices.exists_type:
|
|
||||||
index: test_1
|
|
||||||
type: type_3
|
|
||||||
|
|
||||||
- is_false: ''
|
|
||||||
|
|
||||||
- do:
|
|
||||||
indices.exists_type:
|
|
||||||
index: test_1
|
|
||||||
type: type_1
|
|
||||||
|
|
||||||
- is_true: ''
|
|
||||||
---
|
|
||||||
"Exists type with local flag":
|
|
||||||
|
|
||||||
- do:
|
|
||||||
indices.exists_type:
|
|
||||||
index: test_1
|
|
||||||
type: type_1
|
|
||||||
local: true
|
|
||||||
|
|
||||||
- is_false: ''
|
|
|
@ -26,6 +26,7 @@ import org.elasticsearch.common.Strings;
|
||||||
/**
|
/**
|
||||||
* A builder for {@link TypesExistsRequest}.
|
* A builder for {@link TypesExistsRequest}.
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public class TypesExistsRequestBuilder extends MasterNodeReadOperationRequestBuilder<TypesExistsRequest, TypesExistsResponse, TypesExistsRequestBuilder> {
|
public class TypesExistsRequestBuilder extends MasterNodeReadOperationRequestBuilder<TypesExistsRequest, TypesExistsResponse, TypesExistsRequestBuilder> {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -147,24 +147,31 @@ public interface IndicesAdminClient extends ElasticsearchClient {
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Types Exists.
|
* Types exists.
|
||||||
*
|
*
|
||||||
|
* @deprecated Types are deprecated and are in the process of being removed.
|
||||||
* @param request The types exists request
|
* @param request The types exists request
|
||||||
* @return The result future
|
* @return The result future
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
ActionFuture<TypesExistsResponse> typesExists(TypesExistsRequest request);
|
ActionFuture<TypesExistsResponse> typesExists(TypesExistsRequest request);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Types exists
|
* Types exists.
|
||||||
*
|
*
|
||||||
|
* @deprecated Types are deprecated and are in the process of being removed.
|
||||||
* @param request The types exists
|
* @param request The types exists
|
||||||
* @param listener A listener to be notified with a result
|
* @param listener A listener to be notified with a result
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
void typesExists(TypesExistsRequest request, ActionListener<TypesExistsResponse> listener);
|
void typesExists(TypesExistsRequest request, ActionListener<TypesExistsResponse> listener);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Indices exists.
|
* Types exists.
|
||||||
|
*
|
||||||
|
* @deprecated Types are deprecated and are in the process of being removed.
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
TypesExistsRequestBuilder prepareTypesExists(String... index);
|
TypesExistsRequestBuilder prepareTypesExists(String... index);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1256,6 +1256,7 @@ public abstract class AbstractClient extends AbstractComponent implements Client
|
||||||
return new IndicesExistsRequestBuilder(this, IndicesExistsAction.INSTANCE, indices);
|
return new IndicesExistsRequestBuilder(this, IndicesExistsAction.INSTANCE, indices);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
@Override
|
@Override
|
||||||
public ActionFuture<TypesExistsResponse> typesExists(TypesExistsRequest request) {
|
public ActionFuture<TypesExistsResponse> typesExists(TypesExistsRequest request) {
|
||||||
return execute(TypesExistsAction.INSTANCE, request);
|
return execute(TypesExistsAction.INSTANCE, request);
|
||||||
|
|
|
@ -76,6 +76,10 @@ public class RestGetMappingAction extends BaseRestHandler {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public RestChannelConsumer prepareRequest(final RestRequest request, final NodeClient client) throws IOException {
|
public RestChannelConsumer prepareRequest(final RestRequest request, final NodeClient client) throws IOException {
|
||||||
|
if (request.method().equals(HEAD)) {
|
||||||
|
deprecationLogger.deprecated("Type exists requests are deprecated, as types have been deprecated.");
|
||||||
|
}
|
||||||
|
|
||||||
final boolean includeTypeName = request.paramAsBoolean("include_type_name", true);
|
final boolean includeTypeName = request.paramAsBoolean("include_type_name", true);
|
||||||
final String[] indices = Strings.splitStringByCommaToArray(request.param("index"));
|
final String[] indices = Strings.splitStringByCommaToArray(request.param("index"));
|
||||||
final String[] types = request.paramAsStringArrayOrEmptyIfAll("type");
|
final String[] types = request.paramAsStringArrayOrEmptyIfAll("type");
|
||||||
|
|
|
@ -0,0 +1,49 @@
|
||||||
|
/*
|
||||||
|
* Licensed to Elasticsearch under one or more contributor
|
||||||
|
* license agreements. See the NOTICE file distributed with
|
||||||
|
* this work for additional information regarding copyright
|
||||||
|
* ownership. Elasticsearch licenses this file to you under
|
||||||
|
* the Apache License, Version 2.0 (the "License"); you may
|
||||||
|
* not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing,
|
||||||
|
* software distributed under the License is distributed on an
|
||||||
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
* KIND, either express or implied. See the License for the
|
||||||
|
* specific language governing permissions and limitations
|
||||||
|
* under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.elasticsearch.rest.action.admin.indices;
|
||||||
|
|
||||||
|
import org.elasticsearch.client.node.NodeClient;
|
||||||
|
import org.elasticsearch.common.settings.Settings;
|
||||||
|
import org.elasticsearch.rest.RestController;
|
||||||
|
import org.elasticsearch.rest.RestRequest;
|
||||||
|
import org.elasticsearch.test.ESTestCase;
|
||||||
|
import org.elasticsearch.test.rest.FakeRestRequest;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static org.mockito.Mockito.mock;
|
||||||
|
|
||||||
|
public class RestGetMappingActionTests extends ESTestCase {
|
||||||
|
|
||||||
|
public void testTypeExistsDeprecation() throws Exception {
|
||||||
|
Map<String, String> params = new HashMap<>();
|
||||||
|
params.put("type", "_doc");
|
||||||
|
RestRequest request = new FakeRestRequest.Builder(xContentRegistry())
|
||||||
|
.withMethod(RestRequest.Method.HEAD)
|
||||||
|
.withParams(params)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
RestGetMappingAction handler = new RestGetMappingAction(Settings.EMPTY, mock(RestController.class));
|
||||||
|
handler.prepareRequest(request, mock(NodeClient.class));
|
||||||
|
|
||||||
|
assertWarnings("Type exists requests are deprecated, as types have been deprecated.");
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue