Repository: camel Updated Branches: refs/heads/master 1596cf59f -> cb8156d6c
CAMEL-11812: camel-spring-boot auto configuration with singleton scoped beans should not have autowired their configuration but provided as parameter just like the others do - otherwise we can get NPE with Spring Boot at runtime. Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/c1487cee Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/c1487cee Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/c1487cee Branch: refs/heads/master Commit: c1487ceef1c649841572959562cac2135b1eb674 Parents: 1596cf5 Author: Claus Ibsen <davscl...@apache.org> Authored: Sat Sep 23 10:56:43 2017 +0200 Committer: Claus Ibsen <davscl...@apache.org> Committed: Sat Sep 23 10:56:43 2017 +0200 ---------------------------------------------------------------------- .../boot/ha/ClusteredRouteControllerAutoConfiguration.java | 5 ++--- .../spring/boot/health/HealthCheckRoutesAutoConfiguration.java | 5 +---- .../spring/boot/health/HealthCheckServiceAutoConfiguration.java | 5 +---- 3 files changed, 4 insertions(+), 11 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/c1487cee/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/ha/ClusteredRouteControllerAutoConfiguration.java ---------------------------------------------------------------------- diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/ha/ClusteredRouteControllerAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/ha/ClusteredRouteControllerAutoConfiguration.java index 29be993..3be20a3 100644 --- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/ha/ClusteredRouteControllerAutoConfiguration.java +++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/ha/ClusteredRouteControllerAutoConfiguration.java @@ -47,8 +47,7 @@ import org.springframework.context.annotation.Scope; @ConditionalOnProperty(prefix = "camel.clustered.controller", name = "enabled") @EnableConfigurationProperties(ClusteredRouteControllerConfiguration.class) public class ClusteredRouteControllerAutoConfiguration { - @Autowired - private ClusteredRouteControllerConfiguration configuration; + @Autowired(required = false) private List<ClusteredRouteFilter> filters = Collections.emptyList(); @@ -56,7 +55,7 @@ public class ClusteredRouteControllerAutoConfiguration { @Scope(ConfigurableBeanFactory.SCOPE_SINGLETON) @ConditionalOnMissingBean @ConditionalOnBean(CamelClusterService.class) - public RouteController routeController() { + public RouteController routeController(ClusteredRouteControllerConfiguration configuration) { ClusteredRouteController controller = new ClusteredRouteController(); controller.setNamespace(configuration.getNamespace()); http://git-wip-us.apache.org/repos/asf/camel/blob/c1487cee/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/health/HealthCheckRoutesAutoConfiguration.java ---------------------------------------------------------------------- diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/health/HealthCheckRoutesAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/health/HealthCheckRoutesAutoConfiguration.java index ec87e5a..2d287cd 100644 --- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/health/HealthCheckRoutesAutoConfiguration.java +++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/health/HealthCheckRoutesAutoConfiguration.java @@ -24,7 +24,6 @@ import org.apache.camel.impl.health.RoutesHealthCheckRepository; import org.apache.camel.spring.boot.CamelAutoConfiguration; import org.apache.camel.spring.boot.util.GroupCondition; import org.apache.camel.util.ObjectHelper; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.config.ConfigurableBeanFactory; import org.springframework.boot.autoconfigure.AutoConfigureAfter; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; @@ -39,13 +38,11 @@ import org.springframework.context.annotation.Scope; @Conditional(HealthCheckRoutesAutoConfiguration.Condition.class) @EnableConfigurationProperties(HealthCheckRoutesConfiguration.class) public class HealthCheckRoutesAutoConfiguration { - @Autowired - private HealthCheckRoutesConfiguration configuration; @Bean @Scope(ConfigurableBeanFactory.SCOPE_SINGLETON) @ConditionalOnMissingBean(RoutesHealthCheckRepository.class) - public HealthCheckRepository routesHealthCheckRepository() { + public HealthCheckRepository routesHealthCheckRepository(HealthCheckRoutesConfiguration configuration) { final RoutesHealthCheckRepository repository = new RoutesHealthCheckRepository(); final HealthCheckRoutesConfiguration.ThresholdsConfiguration thresholds = configuration.getThresholds(); http://git-wip-us.apache.org/repos/asf/camel/blob/c1487cee/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/health/HealthCheckServiceAutoConfiguration.java ---------------------------------------------------------------------- diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/health/HealthCheckServiceAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/health/HealthCheckServiceAutoConfiguration.java index d54cf0a..58a10cb 100644 --- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/health/HealthCheckServiceAutoConfiguration.java +++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/health/HealthCheckServiceAutoConfiguration.java @@ -27,7 +27,6 @@ import org.apache.camel.health.HealthCheckService; import org.apache.camel.impl.health.DefaultHealthCheckService; import org.apache.camel.spring.boot.CamelAutoConfiguration; import org.apache.camel.spring.boot.util.GroupCondition; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.config.ConfigurableBeanFactory; import org.springframework.boot.autoconfigure.AutoConfigureAfter; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; @@ -43,14 +42,12 @@ import org.springframework.context.annotation.Scope; @Conditional(HealthCheckServiceAutoConfiguration.Condition.class) @EnableConfigurationProperties(HealthCheckServiceConfiguration.class) public class HealthCheckServiceAutoConfiguration { - @Autowired - private HealthCheckServiceConfiguration configuration; @Bean @Scope(ConfigurableBeanFactory.SCOPE_SINGLETON) @ConditionalOnBean(HealthCheckRegistry.class) @ConditionalOnMissingBean - public HealthCheckService healthCheckService() { + public HealthCheckService healthCheckService(HealthCheckServiceConfiguration configuration) { final DefaultHealthCheckService service = new DefaultHealthCheckService(); Optional.ofNullable(configuration.getCheckInterval())