Merge pull request #37746 from techiesarav

* pr/37746:
  Polish "Remove @ConditionalOnMissingBean from RestTemplateBuilderConfigurer"
  Remove @ConditionalOnMissingBean from RestTemplateBuilderConfigurer

Closes gh-37746
pull/37745/merge
Moritz Halbritter 1 year ago
commit e8d1479bae

@ -45,7 +45,6 @@ public class RestTemplateAutoConfiguration {
@Bean
@Lazy
@ConditionalOnMissingBean
public RestTemplateBuilderConfigurer restTemplateBuilderConfigurer(
ObjectProvider<HttpMessageConverters> messageConverters,
ObjectProvider<RestTemplateCustomizer> restTemplateCustomizers,

@ -21,6 +21,7 @@ import java.util.List;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.support.BeanDefinitionOverrideException;
import org.springframework.boot.autoconfigure.AutoConfigurations;
import org.springframework.boot.autoconfigure.http.HttpMessageConverters;
import org.springframework.boot.autoconfigure.http.HttpMessageConvertersAutoConfiguration;
@ -65,6 +66,14 @@ class RestTemplateAutoConfigurationTests {
.isTrue());
}
@Test
void shouldFailOnCustomRestTemplateBuilderConfigurer() {
this.contextRunner.withUserConfiguration(RestTemplateCustomConfigurerConfig.class)
.run((context) -> assertThat(context).getFailure()
.isInstanceOf(BeanDefinitionOverrideException.class)
.hasMessageContaining("with name 'restTemplateBuilderConfigurer'"));
}
@Test
void restTemplateBuilderShouldBeLazilyDefined() {
this.contextRunner
@ -263,6 +272,16 @@ class RestTemplateAutoConfigurationTests {
}
@Configuration(proxyBeanMethods = false)
static class RestTemplateCustomConfigurerConfig {
@Bean
RestTemplateBuilderConfigurer restTemplateBuilderConfigurer() {
return new RestTemplateBuilderConfigurer();
}
}
static class CustomHttpMessageConverter extends StringHttpMessageConverter {
}

Loading…
Cancel
Save