Expose RestClientBuilder when RestHighLevelClient is not available
This commits exposes the RestClientBuilder as a bean even when the RestHighLevelClient is not available. It allows users to create their own RestClient beans using the Spring Boot configured RestClientBuilder when they are not using the RestHighLevelClient. Fixes gh-28655
This commit is contained in:
committed by
Brian Clozel
parent
6e06e69bba
commit
d6bead1a2a
@@ -16,12 +16,10 @@
|
||||
|
||||
package org.springframework.boot.autoconfigure.elasticsearch;
|
||||
|
||||
import org.elasticsearch.client.RestClient;
|
||||
import org.elasticsearch.client.RestHighLevelClient;
|
||||
import org.elasticsearch.client.RestClientBuilder;
|
||||
|
||||
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.autoconfigure.elasticsearch.ElasticsearchRestClientConfigurations.RestClientBuilderConfiguration;
|
||||
import org.springframework.boot.autoconfigure.elasticsearch.ElasticsearchRestClientConfigurations.RestClientSnifferConfiguration;
|
||||
import org.springframework.boot.autoconfigure.elasticsearch.ElasticsearchRestClientConfigurations.RestHighLevelClientConfiguration;
|
||||
@@ -38,8 +36,7 @@ import org.springframework.context.annotation.Import;
|
||||
*/
|
||||
@SuppressWarnings("deprecation")
|
||||
@Configuration(proxyBeanMethods = false)
|
||||
@ConditionalOnClass(RestHighLevelClient.class)
|
||||
@ConditionalOnMissingBean(RestClient.class)
|
||||
@ConditionalOnClass(RestClientBuilder.class)
|
||||
@EnableConfigurationProperties({ ElasticsearchProperties.class, ElasticsearchRestClientProperties.class,
|
||||
DeprecatedElasticsearchRestClientProperties.class })
|
||||
@Import({ RestClientBuilderConfiguration.class, RestHighLevelClientConfiguration.class,
|
||||
|
||||
@@ -112,7 +112,8 @@ class ElasticsearchRestClientConfigurations {
|
||||
}
|
||||
|
||||
@Configuration(proxyBeanMethods = false)
|
||||
@ConditionalOnMissingBean(RestHighLevelClient.class)
|
||||
@ConditionalOnClass(RestHighLevelClient.class)
|
||||
@ConditionalOnMissingBean({ RestHighLevelClient.class, RestClient.class })
|
||||
static class RestHighLevelClientConfiguration {
|
||||
|
||||
@Bean
|
||||
|
||||
Reference in New Issue
Block a user