This is an automated email from the ASF dual-hosted git repository. rcordier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 529b663a84b5b6d3f8dbdac0ce1ff8f4a013ca53 Author: Quan Tran <[email protected]> AuthorDate: Tue Apr 5 14:35:13 2022 +0700 JAMES-3739: Allow specific index' own settings --- .../apache/james/backends/es/v7/IndexCreationFactory.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/backends-common/elasticsearch-v7/src/main/java/org/apache/james/backends/es/v7/IndexCreationFactory.java b/backends-common/elasticsearch-v7/src/main/java/org/apache/james/backends/es/v7/IndexCreationFactory.java index 9b89fb5801..a528f509fa 100644 --- a/backends-common/elasticsearch-v7/src/main/java/org/apache/james/backends/es/v7/IndexCreationFactory.java +++ b/backends-common/elasticsearch-v7/src/main/java/org/apache/james/backends/es/v7/IndexCreationFactory.java @@ -141,11 +141,15 @@ public class IndexCreationFactory { } public ReactorElasticSearchClient createIndexAndAliases(ReactorElasticSearchClient client) { - return build().createIndexAndAliases(client, Optional.empty()); + return build().createIndexAndAliases(client, Optional.empty(), Optional.empty()); } public ReactorElasticSearchClient createIndexAndAliases(ReactorElasticSearchClient client, XContentBuilder mappingContent) { - return build().createIndexAndAliases(client, Optional.of(mappingContent)); + return build().createIndexAndAliases(client, Optional.empty(), Optional.of(mappingContent)); + } + + public ReactorElasticSearchClient createIndexAndAliases(ReactorElasticSearchClient client, Optional<XContentBuilder> indexSettings, Optional<XContentBuilder> mappingContent) { + return build().createIndexAndAliases(client, indexSettings, mappingContent); } } } @@ -174,10 +178,11 @@ public class IndexCreationFactory { this.customTokenizers = customTokenizers; } - public ReactorElasticSearchClient createIndexAndAliases(ReactorElasticSearchClient client, Optional<XContentBuilder> mappingContent) { + public ReactorElasticSearchClient createIndexAndAliases(ReactorElasticSearchClient client, Optional<XContentBuilder> indexSettings, + Optional<XContentBuilder> mappingContent) { Preconditions.checkNotNull(indexName); try { - createIndexIfNeeded(client, indexName, generateSetting(), mappingContent); + createIndexIfNeeded(client, indexName, indexSettings.orElse(generateSetting()), mappingContent); aliases.forEach(Throwing.<AliasName>consumer(alias -> createAliasIfNeeded(client, indexName, alias)) .sneakyThrow()); } catch (IOException e) { --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
