mirror of
https://github.com/spring-projects/spring-data-elasticsearch.git
synced 2025-06-14 08:02:11 +00:00
parent
e0acc5a2f9
commit
b9dacc9a5e
@ -277,12 +277,22 @@ public class IndicesTemplate extends ChildTemplate<ElasticsearchIndicesClient> i
|
||||
|
||||
@Override
|
||||
public Map<String, Set<AliasData>> getAliases(String... aliasNames) {
|
||||
throw new UnsupportedOperationException("not implemented");
|
||||
|
||||
Assert.notNull(aliasNames, "aliasNames must not be null");
|
||||
|
||||
GetAliasRequest getAliasRequest = requestConverter.indicesGetAliasRequest(aliasNames, null);
|
||||
var getAliasResponse = execute(client -> client.getAlias(getAliasRequest));
|
||||
return responseConverter.indicesGetAliasData(getAliasResponse);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Set<AliasData>> getAliasesForIndex(String... indexNames) {
|
||||
throw new UnsupportedOperationException("not implemented");
|
||||
|
||||
Assert.notNull(indexNames, "indexNames must not be null");
|
||||
|
||||
GetAliasRequest getAliasRequest = requestConverter.indicesGetAliasRequest(null, indexNames);
|
||||
var getAliasResponse = execute(client -> client.getAlias(getAliasRequest));
|
||||
return responseConverter.indicesGetAliasData(getAliasResponse);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -71,6 +71,6 @@ public class AliasData {
|
||||
|
||||
@Nullable
|
||||
public Boolean isHidden() {
|
||||
return isHidden;
|
||||
return Boolean.TRUE.equals(isHidden);
|
||||
}
|
||||
}
|
||||
|
@ -18,6 +18,8 @@ package org.springframework.data.elasticsearch.core.indices;
|
||||
import static org.assertj.core.api.Assertions.*;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.assertj.core.api.SoftAssertions;
|
||||
import org.json.JSONException;
|
||||
@ -120,6 +122,62 @@ public abstract class IndexOperationsIntegrationTests implements NewElasticsearc
|
||||
JSONAssert.assertEquals(expectedMappings, indexInformation.getMapping().toJson(), false);
|
||||
}
|
||||
|
||||
@Test // #2209
|
||||
@DisplayName("should return AliasData with getAliases method")
|
||||
void shouldReturnAliasDataWithGetAliasesMethod() {
|
||||
|
||||
String indexName = indexNameProvider.indexName();
|
||||
String aliasName = "testindexinformationindex";
|
||||
|
||||
AliasActionParameters parameters = AliasActionParameters.builder().withAliases(aliasName).withIndices(indexName)
|
||||
.withIsHidden(false).withIsWriteIndex(false).withRouting("indexrouting").withSearchRouting("searchrouting")
|
||||
.build();
|
||||
indexOperations.alias(new AliasActions(new AliasAction.Add(parameters)));
|
||||
|
||||
Map<String, Set<AliasData>> aliases = indexOperations.getAliases(aliasName);
|
||||
|
||||
assertThat(aliases).hasSize(1);
|
||||
Set<AliasData> aliasDataSet = aliases.get(indexName);
|
||||
assertThat(aliasDataSet).hasSize(1);
|
||||
AliasData aliasData = aliasDataSet.iterator().next();
|
||||
|
||||
SoftAssertions softly = new SoftAssertions();
|
||||
softly.assertThat(aliasData.getAlias()).isEqualTo(aliasName);
|
||||
softly.assertThat(aliasData.isHidden()).isEqualTo(false);
|
||||
softly.assertThat(aliasData.isWriteIndex()).isEqualTo(false);
|
||||
softly.assertThat(aliasData.getIndexRouting()).isEqualTo("indexrouting");
|
||||
softly.assertThat(aliasData.getSearchRouting()).isEqualTo("searchrouting");
|
||||
softly.assertAll();
|
||||
}
|
||||
|
||||
@Test // #2209
|
||||
@DisplayName("should return AliasData with getAliasesForIndex method")
|
||||
void shouldReturnAliasDataWithGetAliasesForIndexMethod() {
|
||||
|
||||
String indexName = indexNameProvider.indexName();
|
||||
String aliasName = "testindexinformationindex";
|
||||
|
||||
AliasActionParameters parameters = AliasActionParameters.builder().withAliases(aliasName).withIndices(indexName)
|
||||
.withIsHidden(false).withIsWriteIndex(false).withRouting("indexrouting").withSearchRouting("searchrouting")
|
||||
.build();
|
||||
indexOperations.alias(new AliasActions(new AliasAction.Add(parameters)));
|
||||
|
||||
Map<String, Set<AliasData>> aliases = indexOperations.getAliasesForIndex(indexName);
|
||||
|
||||
assertThat(aliases).hasSize(1);
|
||||
Set<AliasData> aliasDataSet = aliases.get(indexName);
|
||||
assertThat(aliasDataSet).hasSize(1);
|
||||
AliasData aliasData = aliasDataSet.iterator().next();
|
||||
|
||||
SoftAssertions softly = new SoftAssertions();
|
||||
softly.assertThat(aliasData.getAlias()).isEqualTo(aliasName);
|
||||
softly.assertThat(aliasData.isHidden()).isEqualTo(false);
|
||||
softly.assertThat(aliasData.isWriteIndex()).isEqualTo(false);
|
||||
softly.assertThat(aliasData.getIndexRouting()).isEqualTo("indexrouting");
|
||||
softly.assertThat(aliasData.getSearchRouting()).isEqualTo("searchrouting");
|
||||
softly.assertAll();
|
||||
}
|
||||
|
||||
@Document(indexName = "#{@indexNameProvider.indexName()}")
|
||||
@Setting(settingPath = "settings/test-settings.json")
|
||||
@Mapping(mappingPath = "mappings/test-mappings.json")
|
||||
|
@ -31,6 +31,7 @@ import org.springframework.data.elasticsearch.client.erhlc.RestClients;
|
||||
import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
|
||||
import org.springframework.data.elasticsearch.core.RefreshPolicy;
|
||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||
import org.springframework.http.HttpHeaders;
|
||||
|
||||
/**
|
||||
* Configuration for Spring Data Elasticsearch using {@link ElasticsearchRestTemplate}.
|
||||
@ -42,6 +43,7 @@ import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverte
|
||||
@Configuration
|
||||
public class ElasticsearchRestTemplateConfiguration extends AbstractElasticsearchConfiguration {
|
||||
|
||||
@SuppressWarnings("SpringJavaInjectionPointsAutowiringInspection")
|
||||
@Autowired private ClusterConnectionInfo clusterConnectionInfo;
|
||||
|
||||
@Override
|
||||
@ -71,7 +73,13 @@ public class ElasticsearchRestTemplateConfiguration extends AbstractElasticsearc
|
||||
configurationBuilder.withBasicAuth(user, password);
|
||||
}
|
||||
|
||||
HttpHeaders defaultHeaders = new HttpHeaders();
|
||||
defaultHeaders.add("Accept", "application/vnd.elasticsearch+json;compatible-with=7");
|
||||
defaultHeaders.add("Content-Type", "application/vnd.elasticsearch+json;compatible-with=7");
|
||||
|
||||
//noinspection resource
|
||||
return RestClients.create(configurationBuilder //
|
||||
.withDefaultHeaders(defaultHeaders) //
|
||||
.withConnectTimeout(Duration.ofSeconds(20)) //
|
||||
.withSocketTimeout(Duration.ofSeconds(20)) //
|
||||
.build()) //
|
||||
|
Loading…
x
Reference in New Issue
Block a user