Add @ConditionalOnAvailableEndpoint to Actuator Endpoints

Resolves #1889

- Added @ConditionalOnAvailableEndpoint to endpoint bean
definitions so that they may be managed by Spring Boot's
configuration properties.
This commit is contained in:
Stephen Oakey
2020-01-15 15:45:28 -05:00
committed by Oleg Zhurakousky
parent c614e15f10
commit 3461b97286
2 changed files with 4 additions and 0 deletions

View File

@@ -19,6 +19,7 @@ package org.springframework.cloud.stream.config;
import java.util.List;
import org.springframework.boot.actuate.autoconfigure.endpoint.EndpointAutoConfiguration;
import org.springframework.boot.actuate.autoconfigure.endpoint.condition.ConditionalOnAvailableEndpoint;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
@@ -41,6 +42,7 @@ import org.springframework.context.annotation.Configuration;
public class BindingsEndpointAutoConfiguration {
@Bean
@ConditionalOnAvailableEndpoint
public BindingsEndpoint bindingsEndpoint(List<InputBindingLifecycle> inputBindings,
List<OutputBindingLifecycle> outputBindings) {
return new BindingsEndpoint(inputBindings, outputBindings);

View File

@@ -20,6 +20,7 @@ import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.actuate.autoconfigure.endpoint.EndpointAutoConfiguration;
import org.springframework.boot.actuate.autoconfigure.endpoint.condition.ConditionalOnAvailableEndpoint;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
@@ -44,6 +45,7 @@ public class ChannelsEndpointAutoConfiguration {
private List<Bindable> adapters;
@Bean
@ConditionalOnAvailableEndpoint
public ChannelsEndpoint channelsEndpoint(BindingServiceProperties properties) {
return new ChannelsEndpoint(this.adapters, properties);
}