Moves conditional on class to class level

This commit is contained in:
Spencer Gibb
2019-09-12 14:32:40 -04:00
parent 7f5823000f
commit 6f83156c73
5 changed files with 19 additions and 14 deletions

View File

@@ -52,6 +52,7 @@ import org.springframework.context.annotation.Configuration;
public class CommonsClientAutoConfiguration {
@Configuration
@ConditionalOnClass(HealthIndicator.class)
@EnableConfigurationProperties(DiscoveryClientHealthIndicatorProperties.class)
@ConditionalOnBean(DiscoveryClient.class)
@ConditionalOnDiscoveryEnabled
@@ -59,7 +60,6 @@ public class CommonsClientAutoConfiguration {
protected static class DiscoveryLoadBalancerConfiguration {
@Bean
@ConditionalOnClass(HealthIndicator.class)
@ConditionalOnDiscoveryHealthIndicatorEnabled
public DiscoveryClientHealthIndicator discoveryClientHealthIndicator(
ObjectProvider<DiscoveryClient> discoveryClient,
@@ -68,7 +68,6 @@ public class CommonsClientAutoConfiguration {
}
@Bean
@ConditionalOnClass(HealthIndicator.class)
@ConditionalOnProperty(
value = "spring.cloud.discovery.client.composite-indicator.enabled",
matchIfMissing = true)

View File

@@ -45,13 +45,13 @@ public class ReactiveCommonsClientAutoConfiguration {
@Configuration
@EnableConfigurationProperties(DiscoveryClientHealthIndicatorProperties.class)
@ConditionalOnClass(ReactiveHealthIndicator.class)
@ConditionalOnBean(ReactiveDiscoveryClient.class)
@ConditionalOnDiscoveryEnabled
@ConditionalOnReactiveDiscoveryEnabled
protected static class ReactiveDiscoveryLoadBalancerConfiguration {
@Bean
@ConditionalOnClass(ReactiveHealthIndicator.class)
@ConditionalOnProperty(
value = "spring.cloud.discovery.client.composite-indicator.enabled",
matchIfMissing = true)

View File

@@ -82,15 +82,6 @@ public class SimpleReactiveDiscoveryClientAutoConfiguration
return new SimpleReactiveDiscoveryClient(simpleReactiveDiscoveryProperties());
}
@Bean
@ConditionalOnClass(ReactiveHealthIndicator.class)
@ConditionalOnDiscoveryHealthIndicatorEnabled
public ReactiveDiscoveryClientHealthIndicator simpleReactiveDiscoveryClientHealthIndicator(
DiscoveryClientHealthIndicatorProperties properties) {
return new ReactiveDiscoveryClientHealthIndicator(simpleReactiveDiscoveryClient(),
properties);
}
private int findPort() {
if (port > 0) {
return port;
@@ -110,4 +101,19 @@ public class SimpleReactiveDiscoveryClientAutoConfiguration
}
}
@Configuration
@ConditionalOnClass(ReactiveHealthIndicator.class)
protected static class HealthConfiguration {
@Bean
@ConditionalOnDiscoveryHealthIndicatorEnabled
public ReactiveDiscoveryClientHealthIndicator simpleReactiveDiscoveryClientHealthIndicator(
DiscoveryClientHealthIndicatorProperties properties,
SimpleReactiveDiscoveryClient simpleReactiveDiscoveryClient) {
return new ReactiveDiscoveryClientHealthIndicator(
simpleReactiveDiscoveryClient, properties);
}
}
}

View File

@@ -126,7 +126,7 @@ public class CommonsClientAutoConfigurationTests {
.doesNotHaveBean(DiscoveryClientHealthIndicator.class);
assertThat(context)
.doesNotHaveBean(DiscoveryCompositeHealthIndicator.class);
then(context.getBeansOfType(HasFeatures.class).values()).isNotEmpty();
then(context.getBeansOfType(HasFeatures.class).values()).isEmpty();
});
}

View File

@@ -123,7 +123,7 @@ public class ReactiveCommonsClientAutoConfigurationTests {
ReactiveDiscoveryClientHealthIndicator.class);
assertThat(context).doesNotHaveBean(
ReactiveDiscoveryCompositeHealthContributor.class);
then(context.getBeansOfType(HasFeatures.class).values()).isNotEmpty();
then(context.getBeansOfType(HasFeatures.class).values()).isEmpty();
});
}