Skip to content

Use correct classes in reactive operations. #1724

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -685,6 +685,7 @@ public Mono<Void> flushIndex(HttpHeaders headers, FlushRequest flushRequest) {
}

@Override
@Deprecated
public Mono<org.elasticsearch.action.admin.indices.mapping.get.GetMappingsResponse> getMapping(HttpHeaders headers,
org.elasticsearch.action.admin.indices.mapping.get.GetMappingsRequest getMappingsRequest) {
return sendRequest(getMappingsRequest, requestCreator.getMapping(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -812,6 +812,7 @@ public static Request indexRefresh(RefreshRequest refreshRequest) {
return request;
}

@Deprecated
public static Request putMapping(PutMappingRequest putMappingRequest) {
// The concreteIndex is an internal concept, not applicable to requests made over the REST API.
if (putMappingRequest.getConcreteIndex() != null) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -184,10 +184,12 @@ public void refresh() {
protected abstract void doRefresh(IndexCoordinates indexCoordinates);

@Override
@Deprecated
public boolean addAlias(AliasQuery query) {
return doAddAlias(query, getIndexCoordinates());
}

@Deprecated
protected abstract boolean doAddAlias(AliasQuery query, IndexCoordinates index);

@Override
Expand All @@ -198,10 +200,12 @@ public List<AliasMetadata> queryForAlias() {
protected abstract List<AliasMetadata> doQueryForAlias(IndexCoordinates index);

@Override
@Deprecated
public boolean removeAlias(AliasQuery query) {
return doRemoveAlias(query, getIndexCoordinates());
}

@Deprecated
protected abstract boolean doRemoveAlias(AliasQuery query, IndexCoordinates index);

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,7 @@ protected Map<String, Object> doGetMapping(IndexCoordinates index) {
}

@Override
@Deprecated
protected boolean doAddAlias(AliasQuery query, IndexCoordinates index) {

IndicesAliasesRequest request = requestFactory.indicesAddAliasesRequest(query, index);
Expand All @@ -149,6 +150,7 @@ protected boolean doAddAlias(AliasQuery query, IndexCoordinates index) {
}

@Override
@Deprecated
protected boolean doRemoveAlias(AliasQuery query, IndexCoordinates index) {

Assert.notNull(index, "No index defined for Alias");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,13 +27,13 @@
import org.elasticsearch.action.admin.indices.alias.IndicesAliasesRequest;
import org.elasticsearch.action.admin.indices.alias.get.GetAliasesRequest;
import org.elasticsearch.action.admin.indices.delete.DeleteIndexRequest;
import org.elasticsearch.action.admin.indices.get.GetIndexRequest;
import org.elasticsearch.action.admin.indices.mapping.get.GetMappingsRequest;
import org.elasticsearch.action.admin.indices.settings.get.GetSettingsRequest;
import org.elasticsearch.action.admin.indices.template.delete.DeleteIndexTemplateRequest;
import org.elasticsearch.client.GetAliasesResponse;
import org.elasticsearch.client.indices.CreateIndexRequest;
import org.elasticsearch.client.indices.GetIndexRequest;
import org.elasticsearch.client.indices.GetIndexTemplatesRequest;
import org.elasticsearch.client.indices.GetMappingsRequest;
import org.elasticsearch.client.indices.IndexTemplatesExistRequest;
import org.elasticsearch.client.indices.PutIndexTemplateRequest;
import org.slf4j.Logger;
Expand Down Expand Up @@ -153,7 +153,7 @@ public Mono<Boolean> delete() {
@Override
public Mono<Boolean> exists() {

GetIndexRequest request = requestFactory.getIndexRequestReactive(getIndexCoordinates().getIndexName());
GetIndexRequest request = requestFactory.getIndexRequest(getIndexCoordinates());
return Mono.from(operations.executeWithIndicesClient(client -> client.existsIndex(request)));
}

Expand Down Expand Up @@ -185,21 +185,21 @@ public Mono<Document> createMapping(Class<?> clazz) {

@Override
public Mono<Boolean> putMapping(Mono<Document> mapping) {
return mapping.map(document -> requestFactory.putMappingRequestReactive(getIndexCoordinates(), document)) //
return mapping.map(document -> requestFactory.putMappingRequest(getIndexCoordinates(), document)) //
.flatMap(request -> Mono.from(operations.executeWithIndicesClient(client -> client.putMapping(request))));
}

@Override
public Mono<Document> getMapping() {

IndexCoordinates indexCoordinates = getIndexCoordinates();
GetMappingsRequest request = requestFactory.getMappingRequestReactive(indexCoordinates);
GetMappingsRequest request = requestFactory.getMappingsRequest(indexCoordinates);

return Mono.from(operations.executeWithIndicesClient(client -> client.getMapping(request)))
.flatMap(getMappingsResponse -> {
Document document = Document.create();
document.put("properties",
getMappingsResponse.mappings().get(indexCoordinates.getIndexName()).get("properties").getSourceAsMap());
Map<String, Object> source = getMappingsResponse.mappings().get(indexCoordinates.getIndexName())
.getSourceAsMap();
Document document = Document.from(source);
return Mono.just(document);
});
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,7 @@ protected boolean doAddAlias(AliasQuery query, IndexCoordinates index) {
}

@Override
@Deprecated
protected boolean doRemoveAlias(AliasQuery query, IndexCoordinates index) {

Assert.notNull(index, "No index defined for Alias");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@ public RequestFactory(ElasticsearchConverter elasticsearchConverter) {
}

// region alias
@Deprecated
public IndicesAliasesRequest.AliasActions aliasAction(AliasQuery query, IndexCoordinates index) {

Assert.notNull(index, "No index defined for Alias");
Expand Down Expand Up @@ -178,6 +179,7 @@ public GetAliasesRequest getAliasesRequest(@Nullable String[] aliasNames, @Nulla
return getAliasesRequest;
}

@Deprecated
public IndicesAliasesRequest indicesAddAliasesRequest(AliasQuery query, IndexCoordinates index) {
IndicesAliasesRequest.AliasActions aliasAction = aliasAction(query, index);
IndicesAliasesRequest request = new IndicesAliasesRequest();
Expand Down Expand Up @@ -253,6 +255,7 @@ public IndicesAliasesRequestBuilder indicesAliasesRequestBuilder(Client client,
return requestBuilder;
}

@Deprecated
public IndicesAliasesRequest indicesRemoveAliasesRequest(AliasQuery query, IndexCoordinates index) {

String[] indexNames = index.getIndexNames();
Expand All @@ -264,6 +267,7 @@ public IndicesAliasesRequest indicesRemoveAliasesRequest(AliasQuery query, Index
.addAliasAction(aliasAction);
}

@Deprecated
IndicesAliasesRequestBuilder indicesRemoveAliasesRequestBuilder(Client client, AliasQuery query,
IndexCoordinates index) {

Expand Down Expand Up @@ -347,26 +351,7 @@ public BulkRequestBuilder bulkRequestBuilder(Client client, List<?> queries, Bul
// endregion

// region index management
/**
* creates a CreateIndexRequest from the rest-high-level-client library.
*
* @param index name of the index
* @param settings optional settings
* @return request
*/
public CreateIndexRequest createIndexRequest(IndexCoordinates index, @Nullable Document settings) {
return createIndexRequest(index, settings, null);
}

/**
* creates a CreateIndexRequest from the rest-high-level-client library.
*
* @param index name of the index
* @param settings optional settings
* @param mapping optional mapping
* @return request
* @since 4.2
*/
public CreateIndexRequest createIndexRequest(IndexCoordinates index, @Nullable Document settings, @Nullable Document mapping) {
CreateIndexRequest request = new CreateIndexRequest(index.getIndexName());

Expand All @@ -381,38 +366,6 @@ public CreateIndexRequest createIndexRequest(IndexCoordinates index, @Nullable D
return request;
}

/**
* creates a CreateIndexRequest from the elasticsearch library, used by the reactive methods.
*
* @param indexName name of the index
* @param settings optional settings
* @return request
*/
public org.elasticsearch.action.admin.indices.create.CreateIndexRequest createIndexRequestReactive(String indexName,
@Nullable Document settings) {

org.elasticsearch.action.admin.indices.create.CreateIndexRequest request = new org.elasticsearch.action.admin.indices.create.CreateIndexRequest(
indexName);
request.index(indexName);

if (settings != null && !settings.isEmpty()) {
request.settings(settings);
}
return request;
}

public CreateIndexRequestBuilder createIndexRequestBuilder(Client client, IndexCoordinates index,
@Nullable Document settings) {

String indexName = index.getIndexName();
CreateIndexRequestBuilder createIndexRequestBuilder = client.admin().indices().prepareCreate(indexName);

if (settings != null) {
createIndexRequestBuilder.setSettings(settings);
}
return createIndexRequestBuilder;
}

public CreateIndexRequestBuilder createIndexRequestBuilder(Client client, IndexCoordinates index,
@Nullable Document settings, @Nullable Document mapping) {

Expand All @@ -431,29 +384,10 @@ public CreateIndexRequestBuilder createIndexRequestBuilder(Client client, IndexC
return createIndexRequestBuilder;
}

/**
* creates a GetIndexRequest from the rest-high-level-client library.
*
* @param index name of the index
* @return request
*/
public GetIndexRequest getIndexRequest(IndexCoordinates index) {
return new GetIndexRequest(index.getIndexNames());
}

/**
* creates a CreateIndexRequest from the elasticsearch library, used by the reactive methods.
*
* @param indexName name of the index
* @return request
*/
public org.elasticsearch.action.admin.indices.get.GetIndexRequest getIndexRequestReactive(String indexName) {

org.elasticsearch.action.admin.indices.get.GetIndexRequest request = new org.elasticsearch.action.admin.indices.get.GetIndexRequest();
request.indices(indexName);
return request;
}

public IndicesExistsRequest indicesExistsRequest(IndexCoordinates index) {

String[] indexNames = index.getIndexNames();
Expand Down Expand Up @@ -485,15 +419,6 @@ public PutMappingRequest putMappingRequest(IndexCoordinates index, Document mapp
return request;
}

public org.elasticsearch.action.admin.indices.mapping.put.PutMappingRequest putMappingRequestReactive(
IndexCoordinates index, Document mapping) {
org.elasticsearch.action.admin.indices.mapping.put.PutMappingRequest request = new org.elasticsearch.action.admin.indices.mapping.put.PutMappingRequest(
index.getIndexName());
request.type("not-used-but-must-be-there");
request.source(mapping);
return request;
}

public PutMappingRequestBuilder putMappingRequestBuilder(Client client, IndexCoordinates index, Document mapping) {

String[] indexNames = index.getIndexNames();
Expand All @@ -503,13 +428,6 @@ public PutMappingRequestBuilder putMappingRequestBuilder(Client client, IndexCoo
return requestBuilder;
}

public org.elasticsearch.action.admin.indices.mapping.get.GetMappingsRequest getMappingRequestReactive(
IndexCoordinates index) {
org.elasticsearch.action.admin.indices.mapping.get.GetMappingsRequest request = new org.elasticsearch.action.admin.indices.mapping.get.GetMappingsRequest();
request.indices(index.getIndexName());
return request;
}

public GetSettingsRequest getSettingsRequest(String indexName, boolean includeDefaults) {
return new GetSettingsRequest().indices(indexName).includeDefaults(includeDefaults);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,6 @@
import org.springframework.data.elasticsearch.core.index.PutTemplateRequest;
import org.springframework.data.elasticsearch.core.index.TemplateData;
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchRestTemplateConfiguration;
import org.springframework.data.elasticsearch.junit.jupiter.ReactiveElasticsearchRestTemplateConfiguration;
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
import org.springframework.lang.Nullable;
Expand All @@ -67,7 +66,7 @@ public class ReactiveIndexOperationsTest {
public static final String TESTINDEX = "reactive-index-operations-testindex";

@Configuration
@Import({ ReactiveElasticsearchRestTemplateConfiguration.class, ElasticsearchRestTemplateConfiguration.class })
@Import({ ReactiveElasticsearchRestTemplateConfiguration.class })
static class Config {}

@Autowired private ReactiveElasticsearchOperations operations;
Expand Down