You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2018/04/11 08:14:12 UTC

[camel] branch master updated (4f87cce -> b42e542)

This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git.


    from 4f87cce  Upgrade Spring Data Commons to version 1.13.11.RELEASE
     new 91b8f39  CAMEL-11956: Upgrade to Spring 5.x
     new 03779d8  CAMEL-11430: Migrate to Spring Boot 2 - work in progress
     new 07f3162  CAMEL-11430: Migrate to Spring Boot 2 - work in progress
     new af052b6  CAMEL-11430: Migrate to Spring Boot 2 - work in progress
     new 3a248b3  CAMEL-11430: Migrate to Spring Boot 2 - work in progress
     new 3310703  CAMEL-12363: Upgrade to spring-batch 4.0.1
     new 4ad3bc9  Regen
     new e56c5b1  CAMEL-11430: Migrate to Spring Boot 2 - work in progress
     new 9b520d7  CAMEL-11430: Migrate to Spring Boot 2 - work in progress
     new 208a134  CAMEL-11430: Migrate to Spring Boot 2 - work in progress
     new c9c39ae  Upgrade consul to 1.0.6
     new c34268b  CAMEL-11430: Migrate to Spring Boot 2 - work in progress
     new c222528  CAMEL-11650 - Use Hibernate Validator 6.x where possible
     new e3640f4  CAMEL-11430: Migrate to Spring Boot 2 - work in progress
     new 69276b3  Fix camel-itest-spring-boot 2
     new 5afce0b  Ignore non-ga modules and re-add reactor
     new e5373c0  CAMEL-11430: Spring Boot 2 - Add Camel info contributor to /actuator/info to show Camel information.
     new 31f7c59  CAMEL-12380: remove spring-boot 1.5.x property resolvers
     new f2f6343  CAMEL-12377: fix example SQL init script
     new eeb8357  CAMEL-12373: Spring Boot 2 - Ported route-dump, read-only mode and some unit tests for camel actuator endpoints
     new 0dab0cd  Restored some UTs running fine
     new ac2cb19  CAMEL-12373: Allow route dump only when !read-only
     new ae71adf  CAMEL-12373: Adjusted to SB2 actuator endpoint property names (endpoints.* => management.endpoint*)
     new e528386  Fix CI build style error
     new 7aa10ad  Align spring-cloud-commons, spring-cloud-netflix and spring-cloud-consul version with Finchley.M9 release train
     new fd7226f  upgrade hibernate-validator
     new cb72f5a  CAMEL-12378: Spring Boot 2 - Fix the camel-example-spring-cloud-servicecall
     new cf47355  CAMEL-12378: Use undertow for serviceCall as well
     new be8bcfc  CAMEL-12378: Exclude spring-boot-starter-tomcat to get it work with undertow
     new 3ace0e0  CAMEL-12396: Use $simple{} instead to avoid spring to evaluate Camel simple expression in the property
     new dc68a82  CAMEL-12387: update main spring-boot documentation
     new ef50900  CAMEL-12387: small updates to spring-boot examples documentation
     new 6936f4e  CAMEL-12423: Upgrade to spring-boot 2.0.1
     new 7d334a3  CAMEL-12423: Upgrade spring 4.x and 5.x too
     new 21a4dff  CAMEL-12362: Upgrade to Apache Karaf 4.2.0
     new 5e0be36  CAMEL-12430: Fixed Karaf tests due wrong spring range in camel-spring
     new 25c8c8f  CAMEL-12430: Fixed Karaf tests to use javax validation v1 api
     new 7a19d76  CAMEL-12430: Fixed Karaf test of spring-ldap
     new 486e4c5  CAMEL-12430: Added missing JAR in karaf
     new 8d8baf5  CAMEL-12423: Upgrade to spring-boot 2.0.1
     new b42e542  Spring Boot examples that uses undertow should exclude tomcat

The 41 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 apache-camel/pom.xml                               |   4 -
 apache-camel/src/main/descriptors/common-bin.xml   |   1 -
 .../src/main/resources/archetype-resources/pom.xml |   6 +
 bom/camel-bom/pom.xml                              |   5 -
 components/camel-bean-validator/pom.xml            | 166 +++----
 .../bean/validator/BeanValidatorRouteTest.java     |   6 +-
 components/camel-cm-sms/pom.xml                    |   8 +-
 .../src/main/docs/cm-sms-component.adoc            |  20 +-
 components/camel-quartz/pom.xml                    |   2 +-
 components/camel-spring-boot/pom.xml               |   2 +-
 .../src/main/docs/spring-boot.adoc                 |  33 +-
 .../actuate/endpoint/AbstractCamelMvcEndpoint.java | 111 -----
 .../actuate/endpoint/CamelHealthCheckEndpoint.java | 180 --------
 .../CamelHealthCheckEndpointAutoConfiguration.java |  67 ---
 .../endpoint/CamelHealthCheckMvcEndpoint.java      | 103 -----
 .../endpoint/CamelRouteControllerEndpoint.java     |  20 +-
 ...elRouteControllerEndpointAutoConfiguration.java |  27 +-
 .../endpoint/CamelRouteControllerMvcEndpoint.java  |  31 --
 .../boot/actuate/endpoint/CamelRoutesEndpoint.java | 483 +++++++++++++++++++--
 .../CamelRoutesEndpointAutoConfiguration.java      |  27 +-
 .../actuate/endpoint/CamelRoutesMvcEndpoint.java   | 243 -----------
 .../health/CamelHealthAutoConfiguration.java       |  32 +-
 .../actuate/health/CamelHealthCheckIndicator.java  |  68 ---
 ...CamelHealthCheckIndicatorAutoConfiguration.java |  92 ----
 .../CamelHealthCheckIndicatorConfiguration.java    |  72 ---
 .../actuate/health/CamelHealthConfiguration.java   |  36 --
 .../boot/actuate/health/CamelHealthIndicator.java  |   8 +-
 .../info/CamelInfoAutoConfiguration.java}          |  26 +-
 .../CamelInfoContributor.java}                     |  30 +-
 .../boot/security/CamelSSLAutoConfiguration.java   |   8 +-
 .../boot/util/HierarchicalPropertiesEvaluator.java |  13 +-
 .../additional-spring-configuration-metadata.json  |  18 +-
 .../src/main/resources/META-INF/spring.factories   |   6 +-
 .../boot/actuate/endpoint/ActuatorTestRoute.java   |   4 -
 .../CamelEndpointsGloballyDisabledTest.java        |  22 +-
 .../CamelHealthCheckEndpointDisabledTest.java      |  48 --
 ...ckEndpointGloballyDisabledAndReenabledTest.java |  49 ---
 .../endpoint/CamelHealthCheckEndpointTest.java     | 121 ------
 .../CamelRouteControllerEndpointDisabledTest.java  |  14 +-
 ...erEndpointGloballyDisabledAndReenabledTest.java |  17 +-
 .../endpoint/CamelRouteControllerEndpointTest.java |  10 +-
 .../CamelRouteControllerMvcEndpointTest.java       |  65 ---
 .../endpoint/CamelRoutesEndpointDisabledTest.java  |  12 +-
 ...esEndpointGloballyDisabledAndReenabledTest.java |  17 +-
 .../actuate/endpoint/CamelRoutesEndpointTest.java  |  32 +-
 .../CamelRoutesEndpointWriteOperationTest.java     |  85 ++++
 .../endpoint/CamelRoutesMvcEndpointTest.java       |  89 ----
 .../CamelInfoTest.java}                            |  24 +-
 .../CamelCloudServiceCallSimpleExpressionTest.java |   3 +-
 components/camel-spring-cloud-netflix/pom.xml      |  22 +-
 components/camel-spring-cloud/pom.xml              |  17 +-
 .../cloud/CamelSpringCloudDiscoveryClient.java     |   2 +-
 .../camel/component/redis/RedisConsumerTest.java   |  17 -
 ...ProducerWss4JSecurityHeaderTestInterceptor.java |   2 +-
 components/camel-spring/pom.xml                    |   2 +-
 components/camel-test-spring/pom.xml               |   2 +-
 examples/camel-example-rabbitmq/pom.xml            |   6 +
 .../src/main/resources/application.properties      |   2 +-
 examples/camel-example-rest-producer/pom.xml       |   6 +
 .../cluster-node/pom.xml                           |  10 +-
 .../examples/cluster/ClusterNodeConfiguration.java |  21 -
 .../src/main/resources/application.properties      |   8 +-
 .../camel-example-spring-boot-geocoder/README.adoc |   8 +-
 .../application/pom.xml                            |   6 +
 .../src/main/resources/application.properties      |   8 +-
 .../service/pom.xml                                |   6 +
 .../service/src/main/bash/consul-run-linux.sh      |   2 +-
 .../service/src/main/bash/consul-run-osx.sh        |   2 +-
 .../src/main/resources/application.properties      |   4 +-
 examples/camel-example-spring-boot-master/pom.xml  |  10 +-
 .../examples/master/MasterNodeConfiguration.java   |  21 -
 .../src/main/resources/application.properties      |   8 +-
 .../camel-example-spring-boot-rest-jpa/pom.xml     |   6 +
 .../example/spring/boot/rest/jpa/Application.java  |   5 +-
 .../example/spring/boot/rest/jpa/Database.java     |   2 +-
 .../example/spring/boot/rest/jpa/OrderService.java |   2 +-
 .../src/main/resources/data.sql                    |   6 +-
 .../README.adoc                                    |  13 +-
 .../camel-example-spring-boot-rest-swagger/pom.xml |   6 +
 .../consumer/pom.xml                               |  10 +-
 .../src/main/resources/application.properties      |   4 +-
 .../services/src/main/bash/consul-run-osx.sh       |   2 +-
 .../src/main/resources/application.properties      |   4 +-
 .../pom.xml                                        |   6 +
 .../src/main/resources/application.properties      |  12 +-
 examples/camel-example-spring-boot-xml/pom.xml     |   6 +
 .../src/main/resources/application.properties      |   2 +-
 examples/camel-example-spring-boot/pom.xml         |   8 +-
 .../src/main/resources/application.properties      |  17 +-
 .../consumer/pom.xml                               |  22 +-
 .../src/main/resources/application.properties      |   6 +-
 .../camel-example-spring-cloud-servicecall/pom.xml |  14 +-
 .../service/pom.xml                                |   4 +
 .../service/src/main/bash/consul-run-linux.sh      |   2 +-
 .../service/src/main/bash/consul-run-osx.sh        |   2 +-
 .../src/main/resources/application.properties      |   4 +-
 examples/camel-example-twitter-salesforce/pom.xml  |   6 +
 .../camel-example-validator-spring-boot/pom.xml    |   6 +
 parent/pom.xml                                     |  69 +--
 platforms/commands/commands-spring-boot/README.md  |  34 --
 platforms/commands/commands-spring-boot/pom.xml    |  56 ---
 .../commands/crsh/ArgumentCamelContext.java        |  31 --
 .../springboot/commands/crsh/ArgumentRouteID.java  |  31 --
 .../commands/crsh/CamelCommandsFacade.java         | 132 ------
 .../commands/crsh/CamelCommandsPlugin.java         |  56 ---
 .../springboot/commands/crsh/CamelCompleter.java   |  71 ---
 .../commands/crsh/CamelControllerImpl.java         |  83 ----
 .../springboot/commands/crsh/NoopStringEscape.java |  34 --
 .../springboot/commands/crsh/OutputBuffer.java     |  51 ---
 .../META-INF/services/org.crsh.plugin.CRaSHPlugin  |  17 -
 .../resources/crash/commands/camel/camel.groovy    | 251 -----------
 platforms/commands/pom.xml                         |   1 -
 .../karaf/features/src/main/resources/features.xml |  34 +-
 .../components-starter/camel-amqp-starter/pom.xml  |   8 -
 .../components-starter/camel-bam-starter/pom.xml   |   8 -
 .../components-starter/camel-cxf-starter/pom.xml   |   8 -
 .../camel-cxf-transport-starter/pom.xml            |   8 -
 .../components-starter/camel-drill-starter/pom.xml |   8 -
 .../components-starter/camel-elsql-starter/pom.xml |   8 -
 .../HazelcastComponentAutoConfiguration.java       |   8 +-
 .../components-starter/camel-jms-starter/pom.xml   |   8 -
 .../components-starter/camel-jpa-starter/pom.xml   |   8 -
 .../camel-kubernetes-starter/pom.xml               |   8 +-
 .../camel-spring-batch-starter/pom.xml             |   8 -
 .../camel-spring-cloud-netflix-starter/pom.xml     |  12 +
 .../camel-spring-cloud-starter/pom.xml             |  20 +-
 .../camel-spring-integration-starter/pom.xml       |   8 -
 .../camel-spring-javaconfig-starter/pom.xml        |   8 -
 .../camel-spring-redis-starter/pom.xml             |   8 -
 .../camel-spring-starter/pom.xml                   |   8 -
 .../components-starter/camel-sql-starter/pom.xml   |   8 -
 .../camel-swagger-java-starter/pom.xml             |   8 +-
 .../camel-undertow-starter/pom.xml                 |   4 +
 .../pom.xml                                        |  13 +-
 .../camel-spring-boot-dependencies/pom.xml         |  10 -
 platforms/spring-boot/spring-boot-dm/pom.xml       |   2 +-
 .../apache/camel/itest/springboot/ITestConfig.java |   2 +-
 .../itest/springboot/CamelCassandraqlTest.java     |   2 +
 .../camel/itest/springboot/CamelHbaseTest.java     |   1 +
 .../camel/itest/springboot/CamelJetty9Test.java    |   2 +-
 .../itest/springboot/CamelKubernetesTest.java      |   2 +-
 .../camel/itest/springboot/CamelMongodb3Test.java  |   2 +
 .../itest/springboot/CamelMongodbGridfsTest.java   |   2 +
 .../camel/itest/springboot/CamelMongodbTest.java   |   2 +
 .../itest/springboot/CamelNetty4HttpTest.java      |   4 +-
 .../camel/itest/springboot/CamelNettyTest.java     |   2 +-
 .../camel/itest/springboot/CamelReactorTest.java   |   2 -
 .../itest/springboot/CamelRestSwaggerTest.java     |   2 +
 .../camel/itest/springboot/CamelRestletTest.java   |   2 +-
 .../springboot/CamelSpringCloudNetflixTest.java    |   2 +
 .../itest/springboot/CamelSpringCloudTest.java     |   2 +
 .../itest/springboot/CamelSwaggerJavaTest.java     |   2 +-
 .../camel/itest/springboot/CamelUndertowTest.java  |   4 +-
 .../itest/springboot/util/ArquillianPackager.java  |  14 +-
 ...ication-pom-sb1.xml => application-pom-sb2.xml} |   0
 .../packaging/SpringBootAutoConfigurationMojo.java |   8 +-
 .../spring-boot-fix-dependencies.properties        |   6 +-
 157 files changed, 1167 insertions(+), 2981 deletions(-)
 delete mode 100644 components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/AbstractCamelMvcEndpoint.java
 delete mode 100644 components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpoint.java
 delete mode 100644 components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointAutoConfiguration.java
 delete mode 100644 components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckMvcEndpoint.java
 delete mode 100644 components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerMvcEndpoint.java
 delete mode 100644 components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesMvcEndpoint.java
 delete mode 100644 components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthCheckIndicator.java
 delete mode 100644 components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthCheckIndicatorAutoConfiguration.java
 delete mode 100644 components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthCheckIndicatorConfiguration.java
 delete mode 100644 components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthConfiguration.java
 copy components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/{cloud/CamelCloudAutoConfiguration.java => actuate/info/CamelInfoAutoConfiguration.java} (58%)
 rename components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/{endpoint/AbstractCamelEndpoint.java => info/CamelInfoContributor.java} (52%)
 delete mode 100644 components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointDisabledTest.java
 delete mode 100644 components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointGloballyDisabledAndReenabledTest.java
 delete mode 100644 components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointTest.java
 delete mode 100644 components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerMvcEndpointTest.java
 create mode 100644 components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointWriteOperationTest.java
 delete mode 100644 components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesMvcEndpointTest.java
 rename components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/{health/CamelHealthDisabledTest.java => info/CamelInfoTest.java} (69%)
 delete mode 100644 platforms/commands/commands-spring-boot/README.md
 delete mode 100644 platforms/commands/commands-spring-boot/pom.xml
 delete mode 100644 platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/ArgumentCamelContext.java
 delete mode 100644 platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/ArgumentRouteID.java
 delete mode 100644 platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelCommandsFacade.java
 delete mode 100644 platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelCommandsPlugin.java
 delete mode 100644 platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelCompleter.java
 delete mode 100644 platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelControllerImpl.java
 delete mode 100644 platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/NoopStringEscape.java
 delete mode 100644 platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/OutputBuffer.java
 delete mode 100755 platforms/commands/commands-spring-boot/src/main/resources/META-INF/services/org.crsh.plugin.CRaSHPlugin
 delete mode 100644 platforms/commands/commands-spring-boot/src/main/resources/crash/commands/camel/camel.groovy
 copy tests/camel-itest-spring-boot/src/test/resources/{application-pom-sb1.xml => application-pom-sb2.xml} (100%)

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 13/41: CAMEL-11650 - Use Hibernate Validator 6.x where possible

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit c2225289c7e631d37962508725e060151ec61e1d
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Mar 19 12:11:48 2018 +0100

    CAMEL-11650 - Use Hibernate Validator 6.x where possible
    
    This reverts commit eed918215d6d5506bb768c1829a35f289fdd306e.
---
 components/camel-bean-validator/pom.xml                  |  6 +++---
 .../component/bean/validator/BeanValidatorRouteTest.java |  6 +++---
 components/camel-cm-sms/pom.xml                          |  8 ++++----
 .../camel-cm-sms/src/main/docs/cm-sms-component.adoc     | 14 +++++++-------
 parent/pom.xml                                           |  2 ++
 platforms/karaf/features/src/main/resources/features.xml | 16 +++-------------
 6 files changed, 22 insertions(+), 30 deletions(-)

diff --git a/components/camel-bean-validator/pom.xml b/components/camel-bean-validator/pom.xml
index d0c4e57..e039e10 100644
--- a/components/camel-bean-validator/pom.xml
+++ b/components/camel-bean-validator/pom.xml
@@ -63,12 +63,12 @@
     <dependency>
       <groupId>javax.el</groupId>
       <artifactId>javax.el-api</artifactId>
-      <version>${javax.el-api-version}</version>
+      <version>${javax.el-api-hibernate-validator-version}</version>
     </dependency>
     <dependency>
-      <groupId>org.glassfish.web</groupId>
+      <groupId>org.glassfish</groupId>
       <artifactId>javax.el</artifactId>
-      <version>${javax.el-version}</version>
+      <version>${javax.el-hibernate-validator-version}</version>
     </dependency>
     <dependency>
       <groupId>org.slf4j</groupId>
diff --git a/components/camel-bean-validator/src/test/java/org/apache/camel/component/bean/validator/BeanValidatorRouteTest.java b/components/camel-bean-validator/src/test/java/org/apache/camel/component/bean/validator/BeanValidatorRouteTest.java
index 261df77..93cfe11 100644
--- a/components/camel-bean-validator/src/test/java/org/apache/camel/component/bean/validator/BeanValidatorRouteTest.java
+++ b/components/camel-bean-validator/src/test/java/org/apache/camel/component/bean/validator/BeanValidatorRouteTest.java
@@ -101,7 +101,7 @@ public class BeanValidatorRouteTest extends CamelTestSupport {
             ConstraintViolation<Object> constraintViolation = constraintViolations.iterator().next();
             assertEquals("licensePlate", constraintViolation.getPropertyPath().toString());
             assertEquals(null, constraintViolation.getInvalidValue());
-            assertEquals("may not be null", constraintViolation.getMessage());
+            assertEquals("must not be null", constraintViolation.getMessage());
         }
         
         car.setLicensePlate("D-A");
@@ -138,7 +138,7 @@ public class BeanValidatorRouteTest extends CamelTestSupport {
             ConstraintViolation<Object> constraintViolation = constraintViolations.iterator().next();
             assertEquals("licensePlate", constraintViolation.getPropertyPath().toString());
             assertEquals(null, constraintViolation.getInvalidValue());
-            assertEquals("may not be null", constraintViolation.getMessage());
+            assertEquals("must not be null", constraintViolation.getMessage());
         }
         
         car.setLicensePlate("D-A");
@@ -212,7 +212,7 @@ public class BeanValidatorRouteTest extends CamelTestSupport {
             ConstraintViolation<Object> constraintViolation = constraintViolations.iterator().next();
             assertEquals("manufacturer", constraintViolation.getPropertyPath().toString());
             assertEquals(null, constraintViolation.getInvalidValue());
-            assertEquals("may not be null", constraintViolation.getMessage());
+            assertEquals("must not be null", constraintViolation.getMessage());
         }
         
         car.setManufacturer("BMW");
diff --git a/components/camel-cm-sms/pom.xml b/components/camel-cm-sms/pom.xml
index df14b38..1caa1ec 100644
--- a/components/camel-cm-sms/pom.xml
+++ b/components/camel-cm-sms/pom.xml
@@ -69,10 +69,10 @@
     <dependency>
       <groupId>javax.el</groupId>
       <artifactId>javax.el-api</artifactId>
-      <version>${javax.el-api-version}</version>
+      <version>${javax.el-api-hibernate-validator-version}</version>
     </dependency>
     <dependency>
-      <groupId>org.hibernate</groupId>
+      <groupId>org.hibernate.validator</groupId>
       <artifactId>hibernate-validator</artifactId>
       <version>${hibernate-validator-version}</version>
     </dependency>
@@ -104,9 +104,9 @@
       <scope>test</scope>
     </dependency>
     <dependency>
-      <groupId>org.glassfish.web</groupId>
+      <groupId>org.glassfish</groupId>
       <artifactId>javax.el</artifactId>
-      <version>${javax.el-version}</version>
+      <version>${javax.el-hibernate-validator-version}</version>
       <scope>test</scope>
     </dependency>
     <dependency>
diff --git a/components/camel-cm-sms/src/main/docs/cm-sms-component.adoc b/components/camel-cm-sms/src/main/docs/cm-sms-component.adoc
index 6dc2253..9e485e1 100644
--- a/components/camel-cm-sms/src/main/docs/cm-sms-component.adoc
+++ b/components/camel-cm-sms/src/main/docs/cm-sms-component.adoc
@@ -10,25 +10,25 @@ It allows to integrate https://dashboard.onlinesmsgateway.com/docs[CM SMS API]in
 
 You must have a valid account.  More information are available at https://www.cmtelecom.com/support[CM Telecom].
 
-[source,java]
--------------------------------
+[source,text]
+----
 cm-sms://sgw01.cm.nl/gateway.ashx?defaultFrom=DefaultSender&defaultMaxNumberOfParts=8&productToken=xxxxx
--------------------------------
+----
 
 Maven users will need to add the following dependency to their pom.xml
 for this component:
 
 [source,xml]
----------------------------------------------------------
+---
 <dependency>
  <groupId>org.apache.camel</groupId>
  <artifactId>camel-cm-sms</artifactId>
  <version>x.x.x</version>
  <!-- use the same version as your Camel core version -->
 </dependency>
----------------------------------------------------------
+---
 
-### Options
+=== Options
 
 
 // component options: START
@@ -71,6 +71,6 @@ with the following path and query parameters:
 // endpoint options: END
 
 
-### Sample
+=== Sample
 
 You can try https://github.com/oalles/camel-cm-sample[this project] to see how camel-cm-sms can be integrated in a camel route. 
diff --git a/parent/pom.xml b/parent/pom.xml
index 7826924..4ce5b55 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -356,6 +356,8 @@
     <javassist-version>3.20.0-GA</javassist-version>
     <javax.el-api-version>2.2.5</javax.el-api-version>
     <javax.el-version>2.2.5</javax.el-version>
+    <javax.el-api-hibernate-validator-version>3.0.1-b04</javax.el-api-hibernate-validator-version>
+    <javax.el-hibernate-validator-version>3.0.1-b10</javax.el-hibernate-validator-version>
     <javax-inject-bundle-version>1_2</javax-inject-bundle-version>
     <javax-mail-version>1.6.1</javax-mail-version>
     <javax.servlet-api-version>3.1.0</javax.servlet-api-version>
diff --git a/platforms/karaf/features/src/main/resources/features.xml b/platforms/karaf/features/src/main/resources/features.xml
index 4211863..4c4f74b 100644
--- a/platforms/karaf/features/src/main/resources/features.xml
+++ b/platforms/karaf/features/src/main/resources/features.xml
@@ -21,6 +21,7 @@
   <repository>mvn:org.apache.cxf.karaf/apache-cxf/${cxf-version}/xml/features</repository>
   <repository>mvn:org.apache.jclouds.karaf/jclouds-karaf/${jclouds-version}/xml/features</repository>
   <repository>mvn:org.ops4j.pax.cdi/pax-cdi-features/${pax-cdi-version}/xml/features</repository>
+  <repository>mvn:org.hibernate.validator/hibernate-validator-osgi-karaf-features/${hibernate-validator-version}/xml/features</repository>
 
   <feature name='xml-specs-api' version='${servicemix-specs-version}' resolver='(obr)' start-level='10'>
     <bundle dependency='true'>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.activation-api-1.1/${servicemix-specs-version}</bundle>
@@ -223,12 +224,7 @@
   </feature>
   <feature name='camel-bean-validator' version='${project.version}' resolver='(obr)' start-level='50'>
     <feature version='${project.version}'>camel-core</feature>
-    <bundle dependency='true'>mvn:javax.validation/validation-api/${validation-api-version}</bundle>
-    <bundle dependency='true'>mvn:javax.el/javax.el-api/${javax.el-api-version}</bundle>
-    <bundle dependency='true'>mvn:org.glassfish.web/javax.el/${javax.el-version}</bundle>
-    <bundle dependency='true'>mvn:com.fasterxml/classmate/${classmate-version}</bundle>
-    <bundle dependency='true'>mvn:org.hibernate/hibernate-validator/${hibernate-validator-version}</bundle>
-    <bundle dependency='true'>mvn:org.jboss.logging/jboss-logging/${jboss-logging-version}</bundle>
+    <feature version='${hibernate-validator-version}'>hibernate-validator</feature>
     <bundle>mvn:org.apache.camel/camel-bean-validator/${project.version}</bundle>
   </feature>
   <feature name='camel-beanio' version='${project.version}' resolver='(obr)' start-level='50'>
@@ -379,17 +375,11 @@
   <feature name='camel-cm-sms' version='${project.version}' resolver='(obr)' start-level='50'>
     <feature version='${project.version}'>camel-core</feature>
     <feature version='${cxf-version-range}'>cxf-specs</feature>
+    <feature version='${hibernate-validator-version}'>hibernate-validator</feature>
     <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.libphonenumber/${libphonenumber-bundle-version}</bundle>
     <bundle dependency='true'>mvn:org.apache.httpcomponents/httpcore-osgi/${httpcore4-version}</bundle>
     <bundle dependency='true'>mvn:org.apache.httpcomponents/httpclient-osgi/${httpclient4-version}</bundle>
     <bundle dependency='true'>mvn:javax.servlet/javax.servlet-api/${javax.servlet-api-version}</bundle>
-    <bundle dependency='true'>mvn:org.jsoup/jsoup/${jsoup-version}</bundle>
-    <bundle dependency='true'>mvn:javax.validation/validation-api/${validation-api-version}</bundle>
-    <bundle dependency='true'>mvn:javax.el/javax.el-api/${javax.el-api-version}</bundle>
-    <bundle dependency='true'>mvn:org.glassfish.web/javax.el/${javax.el-version}</bundle>
-    <bundle dependency='true'>mvn:com.fasterxml/classmate/${classmate-version}</bundle>
-    <bundle dependency='true'>mvn:org.hibernate/hibernate-validator/${hibernate-validator-version}</bundle>
-    <bundle dependency='true'>mvn:org.jboss.logging/jboss-logging/${jboss-logging-version}</bundle>
     <bundle>mvn:org.apache.camel/camel-cm-sms/${project.version}</bundle>
   </feature>
   <feature name='camel-cmis' version='${project.version}' resolver='(obr)' start-level='50'>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 12/41: CAMEL-11430: Migrate to Spring Boot 2 - work in progress

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit c34268b124d1974eed8f48ec39657f9dde69f8b6
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Mar 19 11:11:37 2018 +0100

    CAMEL-11430: Migrate to Spring Boot 2 - work in progress
---
 components/camel-bean-validator/pom.xml            | 166 +++++++++++----------
 .../src/main/docs/cm-sms-component.adoc            |   6 +-
 .../camel-example-spring-boot-rest-jpa/pom.xml     |   6 +
 parent/pom.xml                                     |   4 +-
 4 files changed, 95 insertions(+), 87 deletions(-)

diff --git a/components/camel-bean-validator/pom.xml b/components/camel-bean-validator/pom.xml
index 828d868..d0c4e57 100644
--- a/components/camel-bean-validator/pom.xml
+++ b/components/camel-bean-validator/pom.xml
@@ -17,94 +17,96 @@
     limitations under the License.
 
 -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-    <modelVersion>4.0.0</modelVersion>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
 
-    <parent>
-        <groupId>org.apache.camel</groupId>
-        <artifactId>components</artifactId>
-        <version>2.22.0-SNAPSHOT</version>
-    </parent>
+  <parent>
+    <groupId>org.apache.camel</groupId>
+    <artifactId>components</artifactId>
+    <version>2.22.0-SNAPSHOT</version>
+  </parent>
 
-    <artifactId>camel-bean-validator</artifactId>
-    <name>Camel :: Bean validator</name>
-    <description>Camel bean validation support (JSR 303)</description>
-    <packaging>jar</packaging>
+  <artifactId>camel-bean-validator</artifactId>
+  <name>Camel :: Bean validator</name>
+  <description>Camel bean validation support (JSR 303)</description>
+  <packaging>jar</packaging>
 
-    <properties>
-        <camel.osgi.export.pkg>org.apache.camel.component.bean.validator.*</camel.osgi.export.pkg>
-        <camel.osgi.export.service>org.apache.camel.spi.ComponentResolver;component=bean-validator</camel.osgi.export.service>
-    </properties>
+  <properties>
+    <camel.osgi.export.pkg>org.apache.camel.component.bean.validator.*</camel.osgi.export.pkg>
+    <camel.osgi.export.service>org.apache.camel.spi.ComponentResolver;component=bean-validator
+    </camel.osgi.export.service>
+  </properties>
 
-    <dependencies>
+  <dependencies>
 
-        <dependency>
-            <groupId>org.apache.camel</groupId>
-            <artifactId>camel-core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.hibernate</groupId>
-            <artifactId>hibernate-validator</artifactId>
-            <version>${hibernate-validator-version}</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>org.jboss.logging</groupId>
-                    <artifactId>jboss.logging</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>org.jboss.logging</groupId>
-            <artifactId>jboss-logging</artifactId>
-            <version>${jboss-logging-version}</version>
-        </dependency>
-        <dependency>
-            <groupId>javax.el</groupId>
-            <artifactId>javax.el-api</artifactId>
-            <version>${javax.el-api-version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.glassfish.web</groupId>
-            <artifactId>javax.el</artifactId>
-            <version>${javax.el-version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-api</artifactId>
-        </dependency>
+    <dependency>
+      <groupId>org.apache.camel</groupId>
+      <artifactId>camel-core</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.hibernate.validator</groupId>
+      <artifactId>hibernate-validator</artifactId>
+      <version>${hibernate-validator-version}</version>
+      <exclusions>
+        <exclusion>
+          <groupId>org.jboss.logging</groupId>
+          <artifactId>jboss.logging</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+    <dependency>
+      <groupId>org.jboss.logging</groupId>
+      <artifactId>jboss-logging</artifactId>
+      <version>${jboss-logging-version}</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.el</groupId>
+      <artifactId>javax.el-api</artifactId>
+      <version>${javax.el-api-version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.glassfish.web</groupId>
+      <artifactId>javax.el</artifactId>
+      <version>${javax.el-version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-api</artifactId>
+    </dependency>
 
-        <!-- for testing -->
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.mockito</groupId>
-            <artifactId>mockito-core</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.camel</groupId>
-            <artifactId>camel-test</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.logging.log4j</groupId>
-            <artifactId>log4j-api</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.logging.log4j</groupId>
-            <artifactId>log4j-core</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.logging.log4j</groupId>
-            <artifactId>log4j-slf4j-impl</artifactId>
-            <scope>test</scope>
-        </dependency>
+    <!-- for testing -->
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.mockito</groupId>
+      <artifactId>mockito-core</artifactId>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.camel</groupId>
+      <artifactId>camel-test</artifactId>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.logging.log4j</groupId>
+      <artifactId>log4j-api</artifactId>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.logging.log4j</groupId>
+      <artifactId>log4j-core</artifactId>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.logging.log4j</groupId>
+      <artifactId>log4j-slf4j-impl</artifactId>
+      <scope>test</scope>
+    </dependency>
 
-    </dependencies>
+  </dependencies>
 
 </project>
diff --git a/components/camel-cm-sms/src/main/docs/cm-sms-component.adoc b/components/camel-cm-sms/src/main/docs/cm-sms-component.adoc
index 994918a..6dc2253 100644
--- a/components/camel-cm-sms/src/main/docs/cm-sms-component.adoc
+++ b/components/camel-cm-sms/src/main/docs/cm-sms-component.adoc
@@ -62,9 +62,9 @@ with the following path and query parameters:
 [width="100%",cols="2,5,^1,2",options="header"]
 |===
 | Name | Description | Default | Type
-| *defaultFrom* (producer) | This is the sender name. The maximum length is 11 characters. |  | String
-| *defaultMaxNumberOfParts* (producer) | If it is a multipart message forces the max number. Message can be truncated. Technically the gateway will first check if a message is larger than 160 characters, if so, the message will be cut into multiple 153 characters parts limited by these parameters. | 8 | int
-| *productToken* (producer) | *Required* The unique token to use |  | String
+| *defaultFrom* (producer) | This is the sender name. The maximum length is 11 characters. |  | String)
+| *defaultMaxNumberOfParts* (producer) | If it is a multipart message forces the max number. Message can be truncated. Technically the gateway will first check if a message is larger than 160 characters, if so, the message will be cut into multiple 153 characters parts limited by these parameters. | 8 | Max(8L)::Int)
+| *productToken* (producer) | *Required* The unique token to use |  | String)
 | *testConnectionOnStartup* (producer) | Whether to test the connection to the SMS Gateway on startup | false | boolean
 | *synchronous* (advanced) | Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported). | false | boolean
 |===
diff --git a/examples/camel-example-spring-boot-rest-jpa/pom.xml b/examples/camel-example-spring-boot-rest-jpa/pom.xml
index e2d98e7..fac0ef8 100644
--- a/examples/camel-example-spring-boot-rest-jpa/pom.xml
+++ b/examples/camel-example-spring-boot-rest-jpa/pom.xml
@@ -93,6 +93,12 @@
     <dependency>
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-swagger-java-starter</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.hibernate</groupId>
+          <artifactId>hibernate-validator</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.apache.camel</groupId>
diff --git a/parent/pom.xml b/parent/pom.xml
index 405e97b..7826924 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -297,7 +297,7 @@
     <hazelcast-version>3.9.3</hazelcast-version>
     <hbase-version>1.2.6</hbase-version>
     <hessian-version>4.0.51</hessian-version>
-    <hibernate-validator-version>5.4.2.Final</hibernate-validator-version>
+    <hibernate-validator-version>6.0.8.Final</hibernate-validator-version>
     <hibernate-version>5.2.16.Final</hibernate-version>
     <hikaricp-version>2.3.13</hikaricp-version>
     <hk2-version>2.3.0</hk2-version>
@@ -697,7 +697,7 @@
     <unix-socket-factory-bundle-version>1.0.0</unix-socket-factory-bundle-version>
     <urlrewritefilter-version>4.0.4</urlrewritefilter-version>
     <urlrewritefilter-bundle-version>4.0.4_1</urlrewritefilter-bundle-version>
-    <validation-api-version>1.1.0.Final</validation-api-version>
+    <validation-api-version>2.0.1.Final</validation-api-version>
     <velocity-bundle-version>1.7_6</velocity-bundle-version>
     <velocity-tools-version>2.0</velocity-tools-version>
     <velocity-version>2.0</velocity-version>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 16/41: Ignore non-ga modules and re-add reactor

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 5afce0b3593a5e9d7513fe1a9a7d267e405565b0
Author: nferraro <ni...@gmail.com>
AuthorDate: Tue Mar 20 12:12:40 2018 +0100

    Ignore non-ga modules and re-add reactor
---
 .../test/java/org/apache/camel/itest/springboot/CamelReactorTest.java   | 2 --
 .../org/apache/camel/itest/springboot/CamelSpringCloudNetflixTest.java  | 2 ++
 .../java/org/apache/camel/itest/springboot/CamelSpringCloudTest.java    | 2 ++
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelReactorTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelReactorTest.java
index 1524138..4b7dd2a 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelReactorTest.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelReactorTest.java
@@ -20,13 +20,11 @@ import org.apache.camel.itest.springboot.util.ArquillianPackager;
 import org.jboss.arquillian.container.test.api.Deployment;
 import org.jboss.arquillian.junit.Arquillian;
 import org.jboss.shrinkwrap.api.Archive;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 
 
 @RunWith(Arquillian.class)
-@Ignore("Does not work with Spring Boot 1.x")
 public class CamelReactorTest extends AbstractSpringBootTestSupport {
 
     @Deployment
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelSpringCloudNetflixTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelSpringCloudNetflixTest.java
index c194a07..e3ca6e6 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelSpringCloudNetflixTest.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelSpringCloudNetflixTest.java
@@ -20,11 +20,13 @@ import org.apache.camel.itest.springboot.util.ArquillianPackager;
 import org.jboss.arquillian.container.test.api.Deployment;
 import org.jboss.arquillian.junit.Arquillian;
 import org.jboss.shrinkwrap.api.Archive;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 
 
 @RunWith(Arquillian.class)
+@Ignore("Spring-Cloud referenced in Spring-Boot 2.0.0.RELEASE is not GA")
 public class CamelSpringCloudNetflixTest extends AbstractSpringBootTestSupport {
 
     @Deployment
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelSpringCloudTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelSpringCloudTest.java
index a8a48ab..4f69d10 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelSpringCloudTest.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelSpringCloudTest.java
@@ -20,11 +20,13 @@ import org.apache.camel.itest.springboot.util.ArquillianPackager;
 import org.jboss.arquillian.container.test.api.Deployment;
 import org.jboss.arquillian.junit.Arquillian;
 import org.jboss.shrinkwrap.api.Archive;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 
 
 @RunWith(Arquillian.class)
+@Ignore("Spring-Cloud referenced in Spring-Boot 2.0.0.RELEASE is not GA")
 public class CamelSpringCloudTest extends AbstractSpringBootTestSupport {
 
     @Deployment

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 33/41: CAMEL-12423: Upgrade to spring-boot 2.0.1

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 6936f4e29ad160e2faa7c340cf9687e5555d57fc
Author: David J. M. Karlsen <da...@davidkarlsen.com>
AuthorDate: Thu Apr 5 19:36:49 2018 +0200

    CAMEL-12423: Upgrade to spring-boot 2.0.1
---
 parent/pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/parent/pom.xml b/parent/pom.xml
index 14d3bf0..f116460 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -636,7 +636,7 @@
     <splunk-version>1.6.4.0_1</splunk-version>
     <spring-batch-version>4.0.1.RELEASE</spring-batch-version>
     <spring-batch-bundle-version>3.0.8.RELEASE_1</spring-batch-bundle-version>
-    <spring-boot-version>2.0.0.RELEASE</spring-boot-version>
+    <spring-boot-version>2.0.1.RELEASE</spring-boot-version>
     <spring-cloud-commons-version>1.3.3.RELEASE</spring-cloud-commons-version>
     <spring-cloud-netflix-version>1.4.4.RELEASE</spring-cloud-netflix-version>
     <spring-castor-bundle-version>1.2.0</spring-castor-bundle-version>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 37/41: CAMEL-12430: Fixed Karaf tests to use javax validation v1 api

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 25c8c8f6c96dfd702ade0d2cb3b7615abaa520b7
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Tue Apr 10 16:46:16 2018 +0200

    CAMEL-12430: Fixed Karaf tests to use javax validation v1 api
---
 parent/pom.xml                                           | 1 +
 platforms/karaf/features/src/main/resources/features.xml | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/parent/pom.xml b/parent/pom.xml
index 2919792..82434b5 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -695,6 +695,7 @@
     <unix-socket-factory-bundle-version>1.0.0</unix-socket-factory-bundle-version>
     <urlrewritefilter-version>4.0.4</urlrewritefilter-version>
     <urlrewritefilter-bundle-version>4.0.4_1</urlrewritefilter-bundle-version>
+    <validation-1-api-version>1.1.0.Final</validation-1-api-version>
     <validation-api-version>2.0.1.Final</validation-api-version>
     <velocity-bundle-version>1.7_6</velocity-bundle-version>
     <velocity-tools-version>2.0</velocity-tools-version>
diff --git a/platforms/karaf/features/src/main/resources/features.xml b/platforms/karaf/features/src/main/resources/features.xml
index f5a0aeb..b493067 100644
--- a/platforms/karaf/features/src/main/resources/features.xml
+++ b/platforms/karaf/features/src/main/resources/features.xml
@@ -1349,7 +1349,7 @@
   </feature>
   <feature name='camel-kubernetes' version='${project.version}' resolver='(obr)' start-level='50'>
     <feature version='${project.version}'>camel-core</feature>
-    <bundle dependency='true'>mvn:javax.validation/validation-api/${validation-api-version}</bundle>
+    <bundle dependency='true'>mvn:javax.validation/validation-api/${validation-1-api-version}</bundle>
     <bundle dependency='true'>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jsr311-api-1.1.1/${servicemix-specs-version}</bundle>
     <bundle dependency='true'>mvn:com.fasterxml.jackson.core/jackson-core/${jackson2-version}</bundle>
     <bundle dependency='true'>mvn:com.fasterxml.jackson.core/jackson-annotations/${jackson2-version}</bundle>
@@ -2200,7 +2200,7 @@
     <bundle dependency='true'>mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-base/${jackson2-version}</bundle>
     <bundle dependency='true'>mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-json-provider/${jackson2-version}</bundle>
     <bundle dependency='true'>mvn:org.yaml/snakeyaml/${snakeyaml-version}</bundle>
-    <bundle dependency='true'>mvn:javax.validation/validation-api/${validation-api-version}</bundle>
+    <bundle dependency='true'>mvn:javax.validation/validation-api/${validation-1-api-version}</bundle>
     <bundle dependency='true'>mvn:org.apache.commons/commons-lang3/${commons-lang3-version}</bundle>
     <bundle dependency='true'>mvn:com.google.guava/guava/${swagger-java-guava-version}</bundle>
     <bundle dependency='true'>mvn:io.swagger/swagger-core/${swagger-java-version}</bundle>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 27/41: CAMEL-12378: Spring Boot 2 - Fix the camel-example-spring-cloud-servicecall

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit cb72f5a4761424750912de8b46a6685060d39e9c
Author: Tomohisa Igarashi <tm...@gmail.com>
AuthorDate: Wed Mar 28 13:21:51 2018 -0400

    CAMEL-12378: Spring Boot 2 - Fix the camel-example-spring-cloud-servicecall
---
 .../camel-example-spring-cloud-servicecall/consumer/pom.xml  | 12 ++++++++++--
 .../consumer/src/main/resources/application.properties       |  6 ++++--
 2 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml b/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
index 889526b..44112bb 100644
--- a/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
+++ b/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
@@ -78,6 +78,14 @@
       <artifactId>spring-boot-starter</artifactId>
     </dependency>
     <dependency>
+      <groupId>org.springframework.boot</groupId>
+      <artifactId>spring-boot-starter-undertow</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.springframework.boot</groupId>
+      <artifactId>spring-boot-starter-web</artifactId>
+    </dependency>
+    <dependency>
       <groupId>org.springframework.cloud</groupId>
       <artifactId>spring-cloud-starter-consul-discovery</artifactId>
     </dependency>
@@ -93,11 +101,11 @@
     </dependency>
     <dependency>
       <groupId>org.apache.camel</groupId>
-      <artifactId>camel-servlet-starter</artifactId>
+      <artifactId>camel-http4-starter</artifactId>
     </dependency>
     <dependency>
       <groupId>org.apache.camel</groupId>
-      <artifactId>camel-http-starter</artifactId>
+      <artifactId>camel-servlet-starter</artifactId>
     </dependency>
     <dependency>
       <groupId>org.apache.camel</groupId>
diff --git a/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties b/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties
index e5df334..5e9f543 100644
--- a/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties
+++ b/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties
@@ -15,6 +15,8 @@
 ## limitations under the License.
 ## ---------------------------------------------------------------------------
 
+spring.application.name=consumer
+
 # Spring Boot
 management.endpoints.enabled-by-default=false
 management.endpoint.health.enabled=true
@@ -30,8 +32,8 @@ spring.cloud.consul.discovery.register = false
 camel.springboot.main-run-controller=true
 camel.springboot.jmx-enabled=false
 
-camel.rest.component=undertow
+camel.rest.component=servlet
 camel.rest.binding-mode=auto
 
 # Configure the underlying Service Call component
-camel.cloud.service-call.component = http
+camel.cloud.service-call.component = http4

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 20/41: CAMEL-12373: Spring Boot 2 - Ported route-dump, read-only mode and some unit tests for camel actuator endpoints

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit eeb8357654f59b368dab40862bbe66f0d68e0234
Author: Tomohisa Igarashi <tm...@gmail.com>
AuthorDate: Wed Mar 21 22:21:00 2018 -0400

    CAMEL-12373: Spring Boot 2 - Ported route-dump, read-only mode and some unit tests for camel actuator endpoints
---
 ...elRouteControllerEndpointAutoConfiguration.java |  2 ++
 .../boot/actuate/endpoint/CamelRoutesEndpoint.java | 33 ++++++++++++++++-
 .../CamelRoutesEndpointAutoConfiguration.java      |  3 ++
 .../additional-spring-configuration-metadata.json  | 12 +++++--
 ...ava => CamelEndpointsGloballyDisabledTest.java} | 41 ++++++++--------------
 ... CamelRouteControllerEndpointDisabledTest.java} | 24 ++++++-------
 ...rEndpointGloballyDisabledAndReenabledTest.java} | 26 +++++++-------
 ....java => CamelRouteControllerEndpointTest.java} | 25 +++++++------
 ...t.java => CamelRoutesEndpointDisabledTest.java} | 22 ++++++------
 ...sEndpointGloballyDisabledAndReenabledTest.java} | 26 +++++++-------
 .../actuate/endpoint/CamelRoutesEndpointTest.java  | 35 ++++++++++++++++++
 ... => CamelRoutesEndpointWriteOperationTest.java} | 30 +++++++++++-----
 12 files changed, 182 insertions(+), 97 deletions(-)

diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointAutoConfiguration.java
index bf7918f..3f77ed9 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointAutoConfiguration.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointAutoConfiguration.java
@@ -18,6 +18,7 @@ package org.apache.camel.spring.boot.actuate.endpoint;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
+import org.springframework.boot.actuate.autoconfigure.endpoint.condition.ConditionalOnEnabledEndpoint;
 import org.springframework.boot.autoconfigure.AutoConfigureAfter;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
@@ -36,6 +37,7 @@ public class CamelRouteControllerEndpointAutoConfiguration {
     @Bean
     @ConditionalOnClass(CamelContext.class)
     @ConditionalOnMissingBean
+    @ConditionalOnEnabledEndpoint
     public CamelRouteControllerEndpoint routeControllerEndpoint(CamelContext camelContext) {
         return new CamelRouteControllerEndpoint(camelContext);
     }
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpoint.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpoint.java
index f8c8ff7..9a061f1 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpoint.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpoint.java
@@ -30,19 +30,25 @@ import org.apache.camel.Route;
 import org.apache.camel.RuntimeCamelException;
 import org.apache.camel.StatefulService;
 import org.apache.camel.api.management.mbean.ManagedRouteMBean;
+import org.apache.camel.model.ModelHelper;
+import org.apache.camel.model.RouteDefinition;
 import org.apache.camel.spi.RouteError;
+import org.apache.camel.util.ObjectHelper;
 import org.springframework.boot.actuate.endpoint.annotation.Endpoint;
 import org.springframework.boot.actuate.endpoint.annotation.ReadOperation;
 import org.springframework.boot.actuate.endpoint.annotation.Selector;
 import org.springframework.boot.actuate.endpoint.annotation.WriteOperation;
+import org.springframework.boot.context.properties.ConfigurationProperties;
 
 /**
  * {@link Endpoint} to expose {@link org.apache.camel.Route} information.
  */
 @Endpoint(id = "camelroutes", enableByDefault = true)
+@ConfigurationProperties("management.endpoint.camelroutes")
 public class CamelRoutesEndpoint {
 
     private CamelContext camelContext;
+    private boolean readOnly = true;
 
     public CamelRoutesEndpoint(CamelContext camelContext) {
         this.camelContext = camelContext;
@@ -67,6 +73,10 @@ public class CamelRoutesEndpoint {
 
     @WriteOperation
     public void doWriteAction(@Selector String id, @Selector WriteAction action, TimeInfo timeInfo) {
+        if (this.isReadOnly()) {
+            throw new IllegalArgumentException(String.format("Read only: write action %s is not allowed", action));
+        }
+
         switch (action) {
         case STOP:
             stopRoute(
@@ -94,6 +104,27 @@ public class CamelRoutesEndpoint {
         }
     }
 
+    @ReadOperation
+    public String getRouteDump(@Selector String id) {
+        RouteDefinition route = camelContext.getRouteDefinition(id);
+        if (route != null) {
+            try {
+                return ModelHelper.dumpModelAsXml(camelContext, route);
+            } catch (Exception e) {
+                throw ObjectHelper.wrapRuntimeCamelException(e);
+            }
+        }
+        return null;
+    }
+
+    public boolean isReadOnly() {
+        return readOnly;
+    }
+
+    public void setReadOnly(boolean readOnly) {
+        this.readOnly = readOnly;
+    }
+
     private RouteEndpointInfo getRouteInfo(String id) {
         Route route = camelContext.getRoute(id);
         if (route != null) {
@@ -103,7 +134,7 @@ public class CamelRoutesEndpoint {
         return null;
     }
 
-    public List<RouteEndpointInfo> getRoutesInfo() {
+    private List<RouteEndpointInfo> getRoutesInfo() {
         return camelContext.getRoutes().stream()
                 .map(RouteEndpointInfo::new)
                 .collect(Collectors.toList());
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointAutoConfiguration.java
index 26199cf..5b44269 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointAutoConfiguration.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointAutoConfiguration.java
@@ -18,6 +18,7 @@ package org.apache.camel.spring.boot.actuate.endpoint;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
+import org.springframework.boot.actuate.autoconfigure.endpoint.condition.ConditionalOnEnabledEndpoint;
 import org.springframework.boot.autoconfigure.AutoConfigureAfter;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
@@ -33,9 +34,11 @@ import org.springframework.context.annotation.Configuration;
 @ConditionalOnBean(CamelAutoConfiguration.class)
 @AutoConfigureAfter(CamelAutoConfiguration.class)
 public class CamelRoutesEndpointAutoConfiguration {
+
     @Bean
     @ConditionalOnClass(CamelContext.class)
     @ConditionalOnMissingBean
+    @ConditionalOnEnabledEndpoint
     public CamelRoutesEndpoint camelEndpoint(CamelContext camelContext) {
         return new CamelRoutesEndpoint(camelContext);
     }
diff --git a/components/camel-spring-boot/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/components/camel-spring-boot/src/main/resources/META-INF/additional-spring-configuration-metadata.json
index d9610aa..e756628 100644
--- a/components/camel-spring-boot/src/main/resources/META-INF/additional-spring-configuration-metadata.json
+++ b/components/camel-spring-boot/src/main/resources/META-INF/additional-spring-configuration-metadata.json
@@ -1,24 +1,30 @@
 {
   "properties": [
     {
-      "name": "endpoints.camelroutes.path",
+      "name": "management.endpoint.camelroutes.path",
       "type": "java.lang.String",
       "description": "The URL path to use for Camel Routes actuator endpoint.",
       "defaultValue": "/camel/routes"
     },
     {
-      "name": "endpoints.camelroutes.read-only",
+      "name": "management.endpoint.camelroutes.read-only",
       "type": "java.lang.Boolean",
       "description": "Whether Camel Routes actuator is in read-only mode. If not in read-only mode then operations to start/stop routes would be enabled.",
       "defaultValue": "true"
     },
     {
-      "name": "endpoints.camelroutes.enabled",
+      "name": "management.endpoint.camelroutes.enabled",
       "type": "java.lang.Boolean",
       "description": "To turn on or off information about Camel Routes via actuator endpoint.",
       "defaultValue": true
     },
     {
+      "name": "management.endpoint.camelroutecontroller.enabled",
+      "type": "java.lang.Boolean",
+      "description": "To turn on or off information about Camel Route Controller via actuator endpoint.",
+      "defaultValue": true
+    },
+    {
       "name": "management.info.camel.enabled",
       "type": "java.lang.Boolean",
       "description": "Whether to enable Camel info.",
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelEndpointsGloballyDisabledTest.java
similarity index 56%
copy from components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
copy to components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelEndpointsGloballyDisabledTest.java
index 20118be..7f11fff 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelEndpointsGloballyDisabledTest.java
@@ -14,46 +14,35 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.camel.spring.boot.actuate.endpoint;
 
-import java.util.List;
+package org.apache.camel.spring.boot.actuate.endpoint;
 
-import org.apache.camel.CamelContext;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.RouteEndpointInfo;
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.annotation.DirtiesContext;
 import org.springframework.test.context.junit4.SpringRunner;
 
-/**
- * Test for the {@link CamelRoutesEndpoint} actuator endpoint.
- */
 @DirtiesContext
 @RunWith(SpringRunner.class)
-@EnableAutoConfiguration
-@SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class, ActuatorTestRoute.class})
-public class CamelRoutesEndpointTest extends Assert {
-
-    @Autowired
-    CamelRoutesEndpoint endpoint;
-
-    @Autowired
-    CamelContext camelContext;
+@SpringBootTest(
+    classes = {CamelAutoConfiguration.class, CamelRouteControllerEndpointAutoConfiguration.class,
+               CamelRoutesEndpointAutoConfiguration.class},
+    properties = {"management.endpoints.enabled-by-default = false"}
+)
+public class CamelEndpointsGloballyDisabledTest {
+    @Autowired(required = false)
+    private CamelRouteControllerEndpoint routeControllerEndpoint;
+
+    @Autowired(required = false)
+    private CamelRoutesEndpoint routesEndpoint;
 
     @Test
-    public void testRoutesEndpoint() throws Exception {
-        List<RouteEndpointInfo> routes = endpoint.readRoutes();
-
-        assertFalse(routes.isEmpty());
-        assertEquals(routes.size(), camelContext.getRoutes().size());
-        assertTrue(routes.stream().anyMatch(r -> "foo-route".equals(r.getId())));
+    public void testHealthCheckEndpointNotPresent() throws Exception {
+        Assert.assertNull(routeControllerEndpoint);
+        Assert.assertNull(routesEndpoint);
     }
-
 }
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointDisabledTest.java
similarity index 71%
copy from components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
copy to components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointDisabledTest.java
index 20118be..78cafca 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointDisabledTest.java
@@ -16,19 +16,18 @@
  */
 package org.apache.camel.spring.boot.actuate.endpoint;
 
-import java.util.List;
-
 import org.apache.camel.CamelContext;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.RouteEndpointInfo;
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.actuate.context.ShutdownEndpoint;
 import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.annotation.DirtiesContext;
+import org.springframework.test.context.TestPropertySource;
 import org.springframework.test.context.junit4.SpringRunner;
 
 /**
@@ -38,22 +37,21 @@ import org.springframework.test.context.junit4.SpringRunner;
 @RunWith(SpringRunner.class)
 @EnableAutoConfiguration
 @SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class, ActuatorTestRoute.class})
-public class CamelRoutesEndpointTest extends Assert {
+@SpringBootTest(
+    classes = {CamelAutoConfiguration.class, CamelRouteControllerEndpointAutoConfiguration.class, ActuatorTestRoute.class},
+    properties = {"management.endpoint.camelroutecontroller.enabled=false"}
+)
+public class CamelRouteControllerEndpointDisabledTest extends Assert {
 
-    @Autowired
-    CamelRoutesEndpoint endpoint;
+    @Autowired(required = false)
+    CamelRouteControllerEndpoint routeControllerEndpoint;
 
     @Autowired
     CamelContext camelContext;
 
     @Test
-    public void testRoutesEndpoint() throws Exception {
-        List<RouteEndpointInfo> routes = endpoint.readRoutes();
-
-        assertFalse(routes.isEmpty());
-        assertEquals(routes.size(), camelContext.getRoutes().size());
-        assertTrue(routes.stream().anyMatch(r -> "foo-route".equals(r.getId())));
+    public void testRoutesEndpointNotPresent() throws Exception {
+        Assert.assertNull(routeControllerEndpoint);
     }
 
 }
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointGloballyDisabledAndReenabledTest.java
similarity index 69%
copy from components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
copy to components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointGloballyDisabledAndReenabledTest.java
index 20118be..93e316c 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointGloballyDisabledAndReenabledTest.java
@@ -16,11 +16,8 @@
  */
 package org.apache.camel.spring.boot.actuate.endpoint;
 
-import java.util.List;
-
 import org.apache.camel.CamelContext;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.RouteEndpointInfo;
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -38,22 +35,27 @@ import org.springframework.test.context.junit4.SpringRunner;
 @RunWith(SpringRunner.class)
 @EnableAutoConfiguration
 @SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class, ActuatorTestRoute.class})
-public class CamelRoutesEndpointTest extends Assert {
+@SpringBootTest(
+    classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class,
+               CamelRouteControllerEndpointAutoConfiguration.class, ActuatorTestRoute.class},
+    properties = {"management.endpoints.enabled-by-default = false",
+                  "management.endpoint.camelroutecontroller.enabled = true"}
+)
+public class CamelRouteControllerEndpointGloballyDisabledAndReenabledTest extends Assert {
 
     @Autowired
-    CamelRoutesEndpoint endpoint;
+    CamelRouteControllerEndpoint routeControllerEndpoint;
+
+    @Autowired(required = false)
+    CamelRoutesEndpoint routesEndpoint;
 
     @Autowired
     CamelContext camelContext;
 
     @Test
-    public void testRoutesEndpoint() throws Exception {
-        List<RouteEndpointInfo> routes = endpoint.readRoutes();
-
-        assertFalse(routes.isEmpty());
-        assertEquals(routes.size(), camelContext.getRoutes().size());
-        assertTrue(routes.stream().anyMatch(r -> "foo-route".equals(r.getId())));
+    public void testRoutesEndpointPresent() throws Exception {
+        Assert.assertNull(routesEndpoint);
+        Assert.assertNotNull(routeControllerEndpoint);
     }
 
 }
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointTest.java
similarity index 70%
copy from components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
copy to components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointTest.java
index 20118be..77826e7 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointTest.java
@@ -20,7 +20,6 @@ import java.util.List;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.RouteEndpointInfo;
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -31,29 +30,33 @@ import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.annotation.DirtiesContext;
 import org.springframework.test.context.junit4.SpringRunner;
 
+
 /**
- * Test for the {@link CamelRoutesEndpoint} actuator endpoint.
+ * Test for the {@link CamelRouteControllerEndpoint} actuator endpoint.
  */
 @DirtiesContext
 @RunWith(SpringRunner.class)
 @EnableAutoConfiguration
 @SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class, ActuatorTestRoute.class})
-public class CamelRoutesEndpointTest extends Assert {
+@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRouteControllerEndpointAutoConfiguration.class, ActuatorTestRoute.class})
+public class CamelRouteControllerEndpointTest extends Assert {
 
     @Autowired
-    CamelRoutesEndpoint endpoint;
+    CamelRouteControllerEndpoint endpoint;
 
     @Autowired
     CamelContext camelContext;
 
     @Test
-    public void testRoutesEndpoint() throws Exception {
-        List<RouteEndpointInfo> routes = endpoint.readRoutes();
-
-        assertFalse(routes.isEmpty());
-        assertEquals(routes.size(), camelContext.getRoutes().size());
-        assertTrue(routes.stream().anyMatch(r -> "foo-route".equals(r.getId())));
+    public void testRouteControllerEndpoint() throws Exception {
+        List<String> routesId = endpoint.getControlledRoutes();
+
+        assertNotNull(routesId);
+        /* FIXME DefaultRouteController returns empty list while it does control any route...
+        assertFalse(routesId.isEmpty());
+        assertEquals(routesId.size(), camelContext.getRoutes().size());
+        assertTrue(routesId.stream().anyMatch(r -> "foo-route".equals(r)));
+        */
     }
 
 }
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointDisabledTest.java
similarity index 72%
copy from components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
copy to components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointDisabledTest.java
index 20118be..ece2cd0 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointDisabledTest.java
@@ -20,7 +20,7 @@ import java.util.List;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.RouteEndpointInfo;
+import org.apache.camel.spring.boot.model.RouteInfo;
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -31,6 +31,7 @@ import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.annotation.DirtiesContext;
 import org.springframework.test.context.junit4.SpringRunner;
 
+
 /**
  * Test for the {@link CamelRoutesEndpoint} actuator endpoint.
  */
@@ -38,22 +39,21 @@ import org.springframework.test.context.junit4.SpringRunner;
 @RunWith(SpringRunner.class)
 @EnableAutoConfiguration
 @SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class, ActuatorTestRoute.class})
-public class CamelRoutesEndpointTest extends Assert {
+@SpringBootTest(
+    classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class, ActuatorTestRoute.class},
+    properties = {"management.endpoint.camelroutes.enabled = false"}
+)
+public class CamelRoutesEndpointDisabledTest extends Assert {
 
-    @Autowired
-    CamelRoutesEndpoint endpoint;
+    @Autowired(required = false)
+    CamelRoutesEndpoint routesEndpoint;
 
     @Autowired
     CamelContext camelContext;
 
     @Test
-    public void testRoutesEndpoint() throws Exception {
-        List<RouteEndpointInfo> routes = endpoint.readRoutes();
-
-        assertFalse(routes.isEmpty());
-        assertEquals(routes.size(), camelContext.getRoutes().size());
-        assertTrue(routes.stream().anyMatch(r -> "foo-route".equals(r.getId())));
+    public void testRoutesEndpointNotPresent() throws Exception {
+        Assert.assertNull(routesEndpoint);
     }
 
 }
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointGloballyDisabledAndReenabledTest.java
similarity index 70%
copy from components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
copy to components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointGloballyDisabledAndReenabledTest.java
index 20118be..59b7f2b7 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointGloballyDisabledAndReenabledTest.java
@@ -16,11 +16,8 @@
  */
 package org.apache.camel.spring.boot.actuate.endpoint;
 
-import java.util.List;
-
 import org.apache.camel.CamelContext;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.RouteEndpointInfo;
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -38,22 +35,27 @@ import org.springframework.test.context.junit4.SpringRunner;
 @RunWith(SpringRunner.class)
 @EnableAutoConfiguration
 @SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class, ActuatorTestRoute.class})
-public class CamelRoutesEndpointTest extends Assert {
+@SpringBootTest(
+    classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class,
+               CamelRouteControllerEndpointAutoConfiguration.class, ActuatorTestRoute.class},
+    properties = {"management.endpoints.enabled-by-default = false",
+                  "management.endpoint.camelroutes.enabled = true"}
+)
+public class CamelRoutesEndpointGloballyDisabledAndReenabledTest extends Assert {
 
     @Autowired
-    CamelRoutesEndpoint endpoint;
+    CamelRoutesEndpoint routesEndpoint;
+
+    @Autowired(required = false)
+    CamelRouteControllerEndpoint routeControllerEndpoint;
 
     @Autowired
     CamelContext camelContext;
 
     @Test
-    public void testRoutesEndpoint() throws Exception {
-        List<RouteEndpointInfo> routes = endpoint.readRoutes();
-
-        assertFalse(routes.isEmpty());
-        assertEquals(routes.size(), camelContext.getRoutes().size());
-        assertTrue(routes.stream().anyMatch(r -> "foo-route".equals(r.getId())));
+    public void testRoutesEndpointPresent() throws Exception {
+        Assert.assertNull(routeControllerEndpoint);
+        Assert.assertNotNull(routesEndpoint);
     }
 
 }
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
index 20118be..1878336 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
@@ -19,8 +19,14 @@ package org.apache.camel.spring.boot.actuate.endpoint;
 import java.util.List;
 
 import org.apache.camel.CamelContext;
+import org.apache.camel.Route;
+import org.apache.camel.ServiceStatus;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
+import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.ReadAction;
+import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.RouteDetailsEndpointInfo;
 import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.RouteEndpointInfo;
+import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.TimeInfo;
+import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.WriteAction;
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -56,4 +62,33 @@ public class CamelRoutesEndpointTest extends Assert {
         assertTrue(routes.stream().anyMatch(r -> "foo-route".equals(r.getId())));
     }
 
+    @Test
+    public void testRouteDump() throws Exception {
+        String dump = endpoint.getRouteDump("foo-route");
+        assertNotNull(dump);
+        assertTrue(dump, dump.contains("<route "));
+        assertTrue(dump, dump.contains("<from "));
+        assertTrue(dump, dump.contains("uri=\"timer:foo\""));
+        assertTrue(dump, dump.contains("<to "));
+        assertTrue(dump, dump.contains("uri=\"log:foo\""));
+        assertTrue(dump, dump.contains("</route>"));
+    }
+
+    @Test
+    public void testReadOperation() throws Exception {
+        Object answer = endpoint.doReadAction("foo-route", ReadAction.INFO);
+        Assert.assertEquals(RouteEndpointInfo.class, answer.getClass());
+        Assert.assertEquals("foo-route", RouteEndpointInfo.class.cast(answer).getId());
+        answer = endpoint.doReadAction("foo-route", ReadAction.DETAIL);
+        Assert.assertEquals(RouteDetailsEndpointInfo.class, answer.getClass());
+    }
+
+    @Test(expected = IllegalArgumentException.class)
+    public void testWriteOperationReadOnly() throws Exception {
+        TimeInfo timeInfo = new TimeInfo();
+        timeInfo.setAbortAfterTimeout(true);
+        timeInfo.setTimeout(5L);
+        endpoint.doWriteAction("foo-route", WriteAction.STOP, timeInfo);
+    }
+
 }
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointWriteOperationTest.java
similarity index 57%
copy from components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
copy to components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointWriteOperationTest.java
index 20118be..779de02 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointWriteOperationTest.java
@@ -19,8 +19,14 @@ package org.apache.camel.spring.boot.actuate.endpoint;
 import java.util.List;
 
 import org.apache.camel.CamelContext;
+import org.apache.camel.Route;
+import org.apache.camel.ServiceStatus;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
+import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.ReadAction;
+import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.RouteDetailsEndpointInfo;
 import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.RouteEndpointInfo;
+import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.TimeInfo;
+import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.WriteAction;
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -38,8 +44,10 @@ import org.springframework.test.context.junit4.SpringRunner;
 @RunWith(SpringRunner.class)
 @EnableAutoConfiguration
 @SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class, ActuatorTestRoute.class})
-public class CamelRoutesEndpointTest extends Assert {
+@SpringBootTest(
+    classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class, ActuatorTestRoute.class},
+    properties = {"management.endpoint.camelroutes.read-only = false"})
+public class CamelRoutesEndpointWriteOperationTest extends Assert {
 
     @Autowired
     CamelRoutesEndpoint endpoint;
@@ -48,12 +56,18 @@ public class CamelRoutesEndpointTest extends Assert {
     CamelContext camelContext;
 
     @Test
-    public void testRoutesEndpoint() throws Exception {
-        List<RouteEndpointInfo> routes = endpoint.readRoutes();
-
-        assertFalse(routes.isEmpty());
-        assertEquals(routes.size(), camelContext.getRoutes().size());
-        assertTrue(routes.stream().anyMatch(r -> "foo-route".equals(r.getId())));
+    public void testWriteOperation() throws Exception {
+        ServiceStatus status = camelContext.getRouteStatus("foo-route");
+        Assert.assertTrue(status.isStarted());
+        TimeInfo timeInfo = new TimeInfo();
+        timeInfo.setAbortAfterTimeout(true);
+        timeInfo.setTimeout(5L);
+        endpoint.doWriteAction("foo-route", WriteAction.STOP, timeInfo);
+        status = camelContext.getRouteStatus("foo-route");
+        Assert.assertTrue(status.isStopped());
+        endpoint.doWriteAction("foo-route", WriteAction.START, timeInfo);
+        status = camelContext.getRouteStatus("foo-route");
+        Assert.assertTrue(status.isStarted());
     }
 
 }

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 15/41: Fix camel-itest-spring-boot 2

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 69276b3cea40805ad546ec971351549399c2eaec
Author: nferraro <ni...@gmail.com>
AuthorDate: Mon Mar 19 17:14:33 2018 +0100

    Fix camel-itest-spring-boot 2
---
 .../camel-kubernetes-starter/pom.xml               |   4 +
 .../camel-swagger-java-starter/pom.xml             |   4 +
 .../camel-undertow-starter/pom.xml                 |   4 +
 .../apache/camel/itest/springboot/ITestConfig.java |   2 +-
 .../itest/springboot/CamelCassandraqlTest.java     |   2 +
 .../camel/itest/springboot/CamelHbaseTest.java     |   1 +
 .../camel/itest/springboot/CamelJetty9Test.java    |   2 +-
 .../itest/springboot/CamelKubernetesTest.java      |   2 +-
 .../camel/itest/springboot/CamelMongodb3Test.java  |   2 +
 .../itest/springboot/CamelMongodbGridfsTest.java   |   2 +
 .../camel/itest/springboot/CamelMongodbTest.java   |   2 +
 .../itest/springboot/CamelNetty4HttpTest.java      |   4 +-
 .../camel/itest/springboot/CamelNettyTest.java     |   2 +-
 .../itest/springboot/CamelRestSwaggerTest.java     |   2 +
 .../camel/itest/springboot/CamelRestletTest.java   |   2 +-
 .../itest/springboot/CamelSwaggerJavaTest.java     |   2 +-
 .../camel/itest/springboot/CamelUndertowTest.java  |   4 +-
 .../src/test/resources/application-pom-sb2.xml     | 112 +++++++++++++++++++++
 18 files changed, 145 insertions(+), 10 deletions(-)

diff --git a/platforms/spring-boot/components-starter/camel-kubernetes-starter/pom.xml b/platforms/spring-boot/components-starter/camel-kubernetes-starter/pom.xml
index 8fef119..f4c0a72 100644
--- a/platforms/spring-boot/components-starter/camel-kubernetes-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-kubernetes-starter/pom.xml
@@ -39,6 +39,10 @@
       <artifactId>camel-kubernetes</artifactId>
       <version>${project.version}</version>
     </dependency>
+    <dependency>
+      <groupId>org.hibernate.validator</groupId>
+      <artifactId>hibernate-validator</artifactId>
+    </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
       <groupId>org.apache.camel</groupId>
diff --git a/platforms/spring-boot/components-starter/camel-swagger-java-starter/pom.xml b/platforms/spring-boot/components-starter/camel-swagger-java-starter/pom.xml
index 5e679e9..690b48b 100644
--- a/platforms/spring-boot/components-starter/camel-swagger-java-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-swagger-java-starter/pom.xml
@@ -39,6 +39,10 @@
       <artifactId>camel-swagger-java</artifactId>
       <version>${project.version}</version>
     </dependency>
+    <dependency>
+      <groupId>org.hibernate.validator</groupId>
+      <artifactId>hibernate-validator</artifactId>
+    </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
       <groupId>org.apache.camel</groupId>
diff --git a/platforms/spring-boot/components-starter/camel-undertow-starter/pom.xml b/platforms/spring-boot/components-starter/camel-undertow-starter/pom.xml
index 7b76421..25b6620 100644
--- a/platforms/spring-boot/components-starter/camel-undertow-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-undertow-starter/pom.xml
@@ -39,6 +39,10 @@
       <artifactId>camel-undertow</artifactId>
       <version>${project.version}</version>
     </dependency>
+    <dependency>
+      <groupId>io.undertow</groupId>
+      <artifactId>undertow-servlet</artifactId>
+    </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
       <groupId>org.apache.camel</groupId>
diff --git a/tests/camel-itest-spring-boot/src/main/java/org/apache/camel/itest/springboot/ITestConfig.java b/tests/camel-itest-spring-boot/src/main/java/org/apache/camel/itest/springboot/ITestConfig.java
index c1d9ea8..c877cb9 100644
--- a/tests/camel-itest-spring-boot/src/main/java/org/apache/camel/itest/springboot/ITestConfig.java
+++ b/tests/camel-itest-spring-boot/src/main/java/org/apache/camel/itest/springboot/ITestConfig.java
@@ -25,7 +25,7 @@ import java.util.Set;
  */
 public class ITestConfig implements Serializable {
 
-    private static final int DEFAULT_SPRING_BOOT_MAJOR_VERSION = 1;
+    private static final int DEFAULT_SPRING_BOOT_MAJOR_VERSION = 2;
 
     private static final long serialVersionUID = -3641997669166217595L;
 
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelCassandraqlTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelCassandraqlTest.java
index ae838cb..3d2aa2b 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelCassandraqlTest.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelCassandraqlTest.java
@@ -37,6 +37,8 @@ public class CamelCassandraqlTest extends AbstractSpringBootTestSupport {
         return new ITestConfigBuilder()
                 .module(inferModuleName(CamelCassandraqlTest.class))
                 .unitTestExclusionPattern(".*(\\.integration\\..*|IntegrationTest$|CassandraComponentProducerTest$|CassandraComponentBeanRefTest$|CassandraComponentConsumerTest$)")
+                .includeTestDependencies(false)
+                .unitTestsEnabled(false)
                 .build();
     }
 
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelHbaseTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelHbaseTest.java
index 014937f..9ee57a5 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelHbaseTest.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelHbaseTest.java
@@ -34,6 +34,7 @@ public class CamelHbaseTest extends AbstractSpringBootTestSupport {
 
     public static ITestConfig createTestConfig() {
         return new ITestConfigBuilder()
+                .dependency("log4j:log4j")
                 .module(inferModuleName(CamelHbaseTest.class))
                 .unitTestsEnabled(false)
                 .includeTestDependencies(false)
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelJetty9Test.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelJetty9Test.java
index 8623d89..9ad2561 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelJetty9Test.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelJetty9Test.java
@@ -36,7 +36,7 @@ public class CamelJetty9Test extends AbstractSpringBootTestSupport {
         return new ITestConfigBuilder()
                 .module(inferModuleName(CamelJetty9Test.class))
                 .unitTestExclusionPattern(".*(\\.integration\\..*|IntegrationTest$|JettyHttpContentTypeTest$)")
-                .dependency("org.hibernate:hibernate-validator")
+                .dependency("org.hibernate.validator:hibernate-validator")
                 // in JettyHttpContentTypeTest the case of the encoding string is different in Jetty 9.3
                 .build();
     }
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelKubernetesTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelKubernetesTest.java
index 8fe6c8a..3d44a26 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelKubernetesTest.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelKubernetesTest.java
@@ -35,7 +35,7 @@ public class CamelKubernetesTest extends AbstractSpringBootTestSupport {
     public static ITestConfig createTestConfig() {
         return new ITestConfigBuilder()
                 .module(inferModuleName(CamelKubernetesTest.class))
-                //.dependency(DependencyResolver.withVersion("org.hibernate:hibernate-validator"))
+                //.dependency(DependencyResolver.withVersion("org.hibernate.validator:hibernate-validator"))
                 .build();
     }
 
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelMongodb3Test.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelMongodb3Test.java
index 138b696..cbb83d5 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelMongodb3Test.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelMongodb3Test.java
@@ -35,6 +35,8 @@ public class CamelMongodb3Test extends AbstractSpringBootTestSupport {
     public static ITestConfig createTestConfig() {
         return new ITestConfigBuilder()
                 .module(inferModuleName(CamelMongodb3Test.class))
+                .includeTestDependencies(false)
+                .unitTestsEnabled(false)
                 .build();
     }
 
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelMongodbGridfsTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelMongodbGridfsTest.java
index e7e7420..95ef63a 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelMongodbGridfsTest.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelMongodbGridfsTest.java
@@ -35,6 +35,8 @@ public class CamelMongodbGridfsTest extends AbstractSpringBootTestSupport {
     public static ITestConfig createTestConfig() {
         return new ITestConfigBuilder()
                 .module(inferModuleName(CamelMongodbGridfsTest.class))
+                .includeTestDependencies(false)
+                .unitTestsEnabled(false)
                 .build();
     }
 
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelMongodbTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelMongodbTest.java
index 4664e32..f54fd35 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelMongodbTest.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelMongodbTest.java
@@ -35,6 +35,8 @@ public class CamelMongodbTest extends AbstractSpringBootTestSupport {
     public static ITestConfig createTestConfig() {
         return new ITestConfigBuilder()
                 .module(inferModuleName(CamelMongodbTest.class))
+                .includeTestDependencies(false)
+                .unitTestsEnabled(false)
                 .build();
     }
 
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelNetty4HttpTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelNetty4HttpTest.java
index 0d4d87e..a0f8879 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelNetty4HttpTest.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelNetty4HttpTest.java
@@ -35,9 +35,9 @@ public class CamelNetty4HttpTest extends AbstractSpringBootTestSupport {
     public static ITestConfig createTestConfig() {
         return new ITestConfigBuilder()
                 .module(inferModuleName(CamelNetty4HttpTest.class))
-                //.dependency(DependencyResolver.withVersion("org.hibernate:hibernate-validator"))
+                //.dependency(DependencyResolver.withVersion("org.hibernate.validator:hibernate-validator"))
                 .unitTestExclusionPattern(".*(\\.integration\\..*|IntegrationTest$|BaseNettyTest$|ManagedNettyEndpointTest$|NettyMixedCaseHttpPathTest$|NettyHttpContentTypeTest$)")
-                .dependency("org.hibernate:hibernate-validator")
+                .dependency("org.hibernate.validator:hibernate-validator")
                 // removed JMX check tests and tests that nof fail singularly
                 .build();
     }
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelNettyTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelNettyTest.java
index 1dbee13..25e821a 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelNettyTest.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelNettyTest.java
@@ -35,7 +35,7 @@ public class CamelNettyTest extends AbstractSpringBootTestSupport {
     public static ITestConfig createTestConfig() {
         return new ITestConfigBuilder()
                 .module(inferModuleName(CamelNettyTest.class))
-                //.dependency(DependencyResolver.withVersion("org.hibernate:hibernate-validator"))
+                //.dependency(DependencyResolver.withVersion("org.hibernate.validator:hibernate-validator"))
                 .unitTestExclusionPattern(".*(\\.integration\\..*|IntegrationTest$|BaseNettyTest$)")
                 .build();
     }
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelRestSwaggerTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelRestSwaggerTest.java
index d631a15..22d6cf8 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelRestSwaggerTest.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelRestSwaggerTest.java
@@ -35,6 +35,8 @@ public class CamelRestSwaggerTest extends AbstractSpringBootTestSupport {
     public static ITestConfig createTestConfig() {
         return new ITestConfigBuilder()
                 .module(inferModuleName(CamelRestSwaggerTest.class))
+                .unitTestsEnabled(false)
+                .includeTestDependencies(false)
                 .build();
     }
 
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelRestletTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelRestletTest.java
index 0f15ca0..151f98f 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelRestletTest.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelRestletTest.java
@@ -38,7 +38,7 @@ public class CamelRestletTest extends AbstractSpringBootTestSupport {
                 .module(inferModuleName(CamelRestletTest.class))
                 .unitTestExclusionPattern(".*(\\.integration\\..*|IntegrationTest$|RestletConfigurationTest$)")
                 .testLibraryVersion("com.google.guava:guava", DependencyResolver.resolveCamelParentProperty("${google-guava-version}"))
-                .dependency("org.hibernate:hibernate-validator")
+                .dependency("org.hibernate.validator:hibernate-validator")
                 .build();
     }
 
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelSwaggerJavaTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelSwaggerJavaTest.java
index 582a0c9..9bd1adc 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelSwaggerJavaTest.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelSwaggerJavaTest.java
@@ -35,7 +35,7 @@ public class CamelSwaggerJavaTest extends AbstractSpringBootTestSupport {
     public static ITestConfig createTestConfig() {
         return new ITestConfigBuilder()
                 .module(inferModuleName(CamelSwaggerJavaTest.class))
-                //.dependency(DependencyResolver.withVersion("org.hibernate:hibernate-validator"))
+                //.dependency(DependencyResolver.withVersion("org.hibernate.validator:hibernate-validator"))
                 .build();
     }
 
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelUndertowTest.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelUndertowTest.java
index e2cc7d8..c82ba94 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelUndertowTest.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/CamelUndertowTest.java
@@ -35,9 +35,9 @@ public class CamelUndertowTest extends AbstractSpringBootTestSupport {
     public static ITestConfig createTestConfig() {
         return new ITestConfigBuilder()
                 .module(inferModuleName(CamelUndertowTest.class))
-                //.dependency(DependencyResolver.withVersion("org.hibernate:hibernate-validator"))
+                //.dependency(DependencyResolver.withVersion("org.hibernate.validator:hibernate-validator"))
                 .unitTestExclusionPattern(".*(\\.integration\\..*|IntegrationTest$|BaseUndertowTest$|UndertowHttpsSpringTest$)")
-                .dependency("org.hibernate:hibernate-validator")
+                .dependency("org.hibernate.validator:hibernate-validator")
                 .build();
     }
 
diff --git a/tests/camel-itest-spring-boot/src/test/resources/application-pom-sb2.xml b/tests/camel-itest-spring-boot/src/test/resources/application-pom-sb2.xml
new file mode 100644
index 0000000..67eed1f
--- /dev/null
+++ b/tests/camel-itest-spring-boot/src/test/resources/application-pom-sb2.xml
@@ -0,0 +1,112 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>com.company</groupId>
+    <artifactId>spring-boot-application</artifactId>
+    <version>1.0</version>
+
+    <name>Spring-Boot Application</name>
+    <description>This a the base pom of spring-boot applications launched by the users</description>
+
+    <dependencyManagement>
+        <dependencies>
+
+            <!-- The two BOMs -->
+            <dependency>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-dependencies</artifactId>
+                <version>${spring-boot-version}</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.camel</groupId>
+                <artifactId>camel-spring-boot-dependencies</artifactId>
+                <version>${project.version}</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+
+        </dependencies>
+    </dependencyManagement>
+
+    <dependencies>
+
+        <dependency>
+            <groupId>org.apache.camel</groupId>
+            <artifactId>camel-spring-boot-starter</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.camel</groupId>
+            <artifactId>#{module}-starter</artifactId>
+        </dependency>
+
+        <!-- Required by the integration tests to run -->
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+        </dependency>
+
+        <!-- DEPENDENCIES -->
+
+    </dependencies>
+
+    <repositories>
+        <repository>
+            <id>central</id>
+            <name>Maven Central</name>
+            <url>http://repo1.maven.org/maven2/</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>apache-snapshots</id>
+            <name>Apache Snapshots</name>
+            <url>http://repository.apache.org/snapshots/</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>atlassian-public</id>
+            <name>Atlassian Public</name>
+            <url>https://maven.atlassian.com/repository/public</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+
+</project>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 40/41: CAMEL-12423: Upgrade to spring-boot 2.0.1

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 8d8baf58b2d682460603734267527d17939b8e2c
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Wed Apr 11 09:17:12 2018 +0200

    CAMEL-12423: Upgrade to spring-boot 2.0.1
---
 platforms/spring-boot/spring-boot-dm/pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/platforms/spring-boot/spring-boot-dm/pom.xml b/platforms/spring-boot/spring-boot-dm/pom.xml
index 6141dbd..38a3025 100644
--- a/platforms/spring-boot/spring-boot-dm/pom.xml
+++ b/platforms/spring-boot/spring-boot-dm/pom.xml
@@ -41,7 +41,7 @@
 
   <properties>
     <!-- Spring-Boot target version -->
-    <spring-boot-version>2.0.0.RELEASE</spring-boot-version>
+    <spring-boot-version>2.0.1.RELEASE</spring-boot-version>
 
     <!-- The following dependencies should be aligned with the ones in standard camel parent -->
     <!-- Needed by BOM generator-->

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 25/41: Align spring-cloud-commons, spring-cloud-netflix and spring-cloud-consul version with Finchley.M9 release train

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 7aa10ad0c2536e07aa1e996b554faee354dec56e
Author: Tomohisa Igarashi <tm...@gmail.com>
AuthorDate: Mon Mar 26 09:09:16 2018 -0400

    Align spring-cloud-commons, spring-cloud-netflix and spring-cloud-consul version with Finchley.M9 release train
---
 components/camel-spring-cloud-netflix/pom.xml              | 14 +++++++++-----
 components/camel-spring-cloud/pom.xml                      |  8 ++++----
 .../consumer/pom.xml                                       |  2 +-
 3 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/components/camel-spring-cloud-netflix/pom.xml b/components/camel-spring-cloud-netflix/pom.xml
index a219782..c2a1b6a 100644
--- a/components/camel-spring-cloud-netflix/pom.xml
+++ b/components/camel-spring-cloud-netflix/pom.xml
@@ -38,9 +38,8 @@
 
     <camel.osgi.export.pkg/>
 
-    <spring-cloud-commons-version>2.0.0.M7</spring-cloud-commons-version>
-    <spring-cloud-netflix-version>2.0.0.M7</spring-cloud-netflix-version>
-    <spring-cloud-ribbon-version>2.0.0.M2</spring-cloud-ribbon-version>
+    <spring-cloud-commons-version>2.0.0.M9</spring-cloud-commons-version>
+    <spring-cloud-netflix-version>2.0.0.M8</spring-cloud-netflix-version>
   </properties>
 
   <!-- spring-cloud with support for spring boot 2 is not in maven central yet -->
@@ -68,6 +67,11 @@
     </dependency>
     <dependency>
       <groupId>org.springframework.cloud</groupId>
+      <artifactId>spring-cloud-netflix-ribbon</artifactId>
+      <version>${spring-cloud-netflix-version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.springframework.cloud</groupId>
       <artifactId>spring-cloud-netflix-core</artifactId>
       <version>${spring-cloud-netflix-version}</version>
     </dependency>
@@ -132,8 +136,8 @@
     </dependency>
     <dependency>
       <groupId>org.springframework.cloud</groupId>
-      <artifactId>spring-cloud-starter-ribbon</artifactId>
-      <version>${spring-cloud-ribbon-version}</version>
+      <artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
+      <version>${spring-cloud-netflix-version}</version>
       <scope>test</scope>
     </dependency>
     <dependency>
diff --git a/components/camel-spring-cloud/pom.xml b/components/camel-spring-cloud/pom.xml
index b8a48d1..74b1281 100644
--- a/components/camel-spring-cloud/pom.xml
+++ b/components/camel-spring-cloud/pom.xml
@@ -38,8 +38,8 @@
 
     <camel.osgi.export.pkg/>
 
-    <spring-cloud-commons-version>2.0.0.M7</spring-cloud-commons-version>
-    <spring-cloud-ribbon-version>2.0.0.M2</spring-cloud-ribbon-version>
+    <spring-cloud-commons-version>2.0.0.M9</spring-cloud-commons-version>
+    <spring-cloud-netflix-version>2.0.0.M8</spring-cloud-netflix-version>
   </properties>
 
   <!-- spring-cloud with support for spring boot 2 is not in maven central yet -->
@@ -122,8 +122,8 @@
     </dependency>
     <dependency>
       <groupId>org.springframework.cloud</groupId>
-      <artifactId>spring-cloud-starter-ribbon</artifactId>
-      <version>${spring-cloud-ribbon-version}</version>
+      <artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
+      <version>${spring-cloud-netflix-version}</version>
       <scope>test</scope>
     </dependency>
     <dependency>
diff --git a/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml b/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
index 202b7f8..889526b 100644
--- a/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
+++ b/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
@@ -39,7 +39,7 @@
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
     <spring.boot-version>${spring-boot-version}</spring.boot-version>
-    <spring.cloud-version>2.0.0.M6</spring.cloud-version>
+    <spring.cloud-version>2.0.0.M7</spring.cloud-version>
   </properties>
 
   <dependencyManagement>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 24/41: Fix CI build style error

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit e528386f485837ca8934cf683a1e5e835161f3f0
Author: nferraro <ni...@gmail.com>
AuthorDate: Mon Mar 26 10:29:37 2018 +0200

    Fix CI build style error
---
 .../camel/spring/boot/security/CamelSSLAutoConfiguration.java       | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/security/CamelSSLAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/security/CamelSSLAutoConfiguration.java
index 33bd857..91bc79a 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/security/CamelSSLAutoConfiguration.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/security/CamelSSLAutoConfiguration.java
@@ -16,6 +16,9 @@
  */
 package org.apache.camel.spring.boot.security;
 
+import java.util.Collections;
+import java.util.Map;
+
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
 import org.apache.camel.util.jsse.GlobalSSLContextParametersSupplier;
 import org.apache.camel.util.jsse.SSLContextParameters;
@@ -32,9 +35,6 @@ import org.springframework.context.annotation.Conditional;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.core.type.AnnotatedTypeMetadata;
 
-import java.util.Collections;
-import java.util.Map;
-
 @Configuration
 @AutoConfigureBefore(CamelAutoConfiguration.class)
 @EnableConfigurationProperties(CamelSSLConfigurationProperties.class)

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 31/41: CAMEL-12387: update main spring-boot documentation

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit dc68a828f3aa7cc9e9cbcac913d4aa69c9cdcee0
Author: nferraro <ni...@gmail.com>
AuthorDate: Fri Mar 30 16:10:05 2018 +0200

    CAMEL-12387: update main spring-boot documentation
---
 .../src/main/docs/spring-boot.adoc                 | 33 +++++++++-------------
 1 file changed, 14 insertions(+), 19 deletions(-)

diff --git a/components/camel-spring-boot/src/main/docs/spring-boot.adoc b/components/camel-spring-boot/src/main/docs/spring-boot.adoc
index 478f045..f4a746d 100644
--- a/components/camel-spring-boot/src/main/docs/spring-boot.adoc
+++ b/components/camel-spring-boot/src/main/docs/spring-boot.adoc
@@ -3,8 +3,7 @@
 
 *Available as of Camel 2.15*
 
-NOTE: Camel only supports Spring Boot 1.5.x. Support for Spring Boot 2 is planned
-for Camel 2.22 which is scheduled for summer 2018.
+NOTE: Spring Boot 2 is supported since Camel 2.22 (summer 2018). Previous versions of Camel support Spring Boot 1.x only.
 
 Spring Boot component provides auto-configuration for Apache Camel. Our
 opinionated auto-configuration of the Camel context auto-detects Camel
@@ -334,29 +333,25 @@ camel.springboot.type-conversion = false
 ----
 
 
-[[SpringBoot-Blockingmainthread]]
-=== Blocking main thread
+[[SpringBoot-Keepingapplicationalive]]
+=== Keeping the application alive
 
 This feature is available starting from Camel *2.15.2*. Camel
-applications extending FatJarRouter by default block the main thread of
-the application. It means that after you start your fat jar, your
-application waits for Ctrl+C signal and does not exit immediately. If
-you would like to achieve similar behavior for non-`FatJarRouter`
-applications, retrieve `CamelSpringBootApplicationController `bean from
-your `ApplicationContext` and use the former to block the main thread of
-your application using
-`CamelSpringBootApplicationController#blockMainThread()` method.
+applications having this feature enabled launch a new thread on startup for the sole purpose of
+keeping the application alive by preventing JVM termination.
+It means that after you start a Camel application with Spring Boot, your
+application waits for a Ctrl+C signal and does not exit immediately.
 
-[source,java]
+The controller thread can be activated using the `camel.springboot.main-run-controller` to `true`.
+
+[source,text]
 ----
-public static void main(String... args) {
-    ApplicationContext applicationContext = new SpringApplication(MyCamelApplication.class).run(args);
-    CamelSpringBootApplicationController applicationController =
-            applicationContext.getBean(CamelSpringBootApplicationController.class);
-    applicationController.blockMainThread();
-}
+camel.springboot.main-run-controller = true
 ----
 
+Applications using web modules (e.g. importing the `org.springframework.boot:spring-boot-web-starter` module),
+usually don't need to use this feature because the application is kept alive by the presence of other non-daemon threads.
+
 [[SpringBoot-AddingXMLroutes]]
 === Adding XML routes
 

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 26/41: upgrade hibernate-validator

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit fd7226f63d0e012cb0a928dd08a7d4ba0423d1b6
Author: David J. M. Karlsen <da...@davidkarlsen.com>
AuthorDate: Tue Mar 27 20:26:29 2018 +0200

    upgrade hibernate-validator
---
 parent/pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/parent/pom.xml b/parent/pom.xml
index 4ce5b55..14d3bf0 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -297,7 +297,7 @@
     <hazelcast-version>3.9.3</hazelcast-version>
     <hbase-version>1.2.6</hbase-version>
     <hessian-version>4.0.51</hessian-version>
-    <hibernate-validator-version>6.0.8.Final</hibernate-validator-version>
+    <hibernate-validator-version>6.0.9.Final</hibernate-validator-version>
     <hibernate-version>5.2.16.Final</hibernate-version>
     <hikaricp-version>2.3.13</hikaricp-version>
     <hk2-version>2.3.0</hk2-version>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 38/41: CAMEL-12430: Fixed Karaf test of spring-ldap

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 7a19d76df0f942c8e9762a388221401d8fc32558
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Tue Apr 10 16:51:32 2018 +0200

    CAMEL-12430: Fixed Karaf test of spring-ldap
---
 platforms/karaf/features/src/main/resources/features.xml | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/platforms/karaf/features/src/main/resources/features.xml b/platforms/karaf/features/src/main/resources/features.xml
index b493067..85fe915 100644
--- a/platforms/karaf/features/src/main/resources/features.xml
+++ b/platforms/karaf/features/src/main/resources/features.xml
@@ -2069,9 +2069,9 @@
   <feature name='camel-spring-ldap' version='${project.version}' resolver='(obr)' start-level='50'>
     <feature version='${project.version}'>camel-core</feature>
     <feature>transaction</feature>
-    <feature version='${spring42-version-range}'>spring</feature>
-    <feature version='${spring42-version-range}'>spring-jdbc</feature>
-    <feature version='${spring42-version-range}'>spring-tx</feature>
+    <feature version='${spring-version-range}'>spring</feature>
+    <feature version='${spring-version-range}'>spring-jdbc</feature>
+    <feature version='${spring-version-range}'>spring-tx</feature>
     <bundle dependency='true'>mvn:commons-lang/commons-lang/${commons-lang-version}</bundle>
     <bundle dependency='true'>mvn:commons-pool/commons-pool/${commons-pool-version}</bundle>
     <bundle dependency='true'>mvn:org.apache.commons/commons-pool2/${commons-pool2-version}</bundle>
@@ -2079,14 +2079,14 @@
     <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-ldap/${spring-ldap-bundle-version}</bundle>
     <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-batch-core/${spring-batch-bundle-version}</bundle>
     <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-batch-infrastructure/${spring-batch-bundle-version}</bundle>
-    <bundle dependency='true'>mvn:org.springframework.data/spring-data-commons/${spring-data-commons-version}</bundle>
+    <bundle dependency='true'>wrap:mvn:org.springframework.data/spring-data-commons/${spring-data-commons-version}</bundle>
     <bundle>mvn:org.apache.camel/camel-spring-ldap/${project.version}</bundle>
   </feature>
   <feature name='camel-spring-redis' version='${project.version}' resolver='(obr)' start-level='50'>
     <details>Does not work with Karaf 4.1.x due KARAF-4921, but work with Karaf 4.2.x</details>
     <feature version='${project.version}'>camel-core</feature>
-    <feature version='${spring42-version-range}'>spring</feature>
-    <feature version='${spring42-version-range}'>spring-tx</feature>
+    <feature version='${spring-version-range}'>spring</feature>
+    <feature version='${spring-version-range}'>spring-tx</feature>
     <bundle dependency='true'>mvn:commons-pool/commons-pool/${commons-pool-version}</bundle>
     <bundle dependency='true'>mvn:org.springframework.data/spring-data-redis/${spring-data-redis-version}</bundle>
     <bundle dependency='true'>mvn:org.springframework.data/spring-data-keyvalue/${spring-data-keyvalue-version}</bundle>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 17/41: CAMEL-11430: Spring Boot 2 - Add Camel info contributor to /actuator/info to show Camel information.

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit e5373c0d3e899d5d377535ec8204441c13c1bf83
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Tue Mar 20 15:23:39 2018 +0100

    CAMEL-11430: Spring Boot 2 - Add Camel info contributor to /actuator/info to show Camel information.
---
 .../boot/actuate/health/CamelHealthIndicator.java  |  8 +++-
 .../actuate/info/CamelInfoAutoConfiguration.java   | 48 ++++++++++++++++++++
 .../boot/actuate/info/CamelInfoContributor.java    | 46 +++++++++++++++++++
 .../additional-spring-configuration-metadata.json  |  6 +++
 .../src/main/resources/META-INF/spring.factories   |  1 +
 .../spring/boot/actuate/info/CamelInfoTest.java    | 53 ++++++++++++++++++++++
 examples/camel-example-spring-boot/pom.xml         |  2 +-
 .../src/main/resources/application.properties      | 11 +++--
 8 files changed, 167 insertions(+), 8 deletions(-)

diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthIndicator.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthIndicator.java
index 1968068..09c723a 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthIndicator.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthIndicator.java
@@ -26,7 +26,7 @@ import org.springframework.boot.actuate.health.HealthIndicator;
  */
 public class CamelHealthIndicator extends AbstractHealthIndicator {
 
-    private CamelContext camelContext;
+    private final CamelContext camelContext;
 
     public CamelHealthIndicator(CamelContext camelContext) {
         this.camelContext = camelContext;
@@ -39,7 +39,11 @@ public class CamelHealthIndicator extends AbstractHealthIndicator {
         } else {
             builder.withDetail("name", camelContext.getName());
             builder.withDetail("version", camelContext.getVersion());
-            builder.withDetail("contextStatus", camelContext.getStatus().name());
+            if (camelContext.getUptime() != null) {
+                builder.withDetail("uptime", camelContext.getUptime());
+                builder.withDetail("uptimeMillis", camelContext.getUptimeMillis());
+            }
+            builder.withDetail("status", camelContext.getStatus().name());
             if (camelContext.getStatus().isStarted()) {
                 builder.up();
             } else if (camelContext.getStatus().isStopped()) {
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/info/CamelInfoAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/info/CamelInfoAutoConfiguration.java
new file mode 100644
index 0000000..0b71129
--- /dev/null
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/info/CamelInfoAutoConfiguration.java
@@ -0,0 +1,48 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.spring.boot.actuate.info;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spring.boot.CamelAutoConfiguration;
+import org.springframework.boot.actuate.autoconfigure.info.ConditionalOnEnabledInfoContributor;
+import org.springframework.boot.actuate.info.InfoContributor;
+import org.springframework.boot.autoconfigure.AutoConfigureAfter;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+@Configuration
+@ConditionalOnClass({InfoContributor.class})
+@ConditionalOnBean(CamelAutoConfiguration.class)
+@AutoConfigureAfter(CamelAutoConfiguration.class)
+public class CamelInfoAutoConfiguration {
+
+    @ConditionalOnClass({CamelContext.class})
+    @ConditionalOnMissingBean(CamelInfoContributor.class)
+    @ConditionalOnEnabledInfoContributor(value = "camel")
+    protected static class CamelInfoContributorInitializer {
+
+        @Bean
+        public InfoContributor camelInfoContributor(CamelContext camelContext) {
+            return new CamelInfoContributor(camelContext);
+        }
+
+    }
+
+}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/info/CamelInfoContributor.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/info/CamelInfoContributor.java
new file mode 100644
index 0000000..811e721
--- /dev/null
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/info/CamelInfoContributor.java
@@ -0,0 +1,46 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.spring.boot.actuate.info;
+
+import org.apache.camel.CamelContext;
+import org.springframework.boot.actuate.info.Info;
+import org.springframework.boot.actuate.info.InfoContributor;
+
+/**
+ * Camel {@link InfoContributor}
+ */
+public class CamelInfoContributor implements InfoContributor {
+
+    private final CamelContext camelContext;
+
+    public CamelInfoContributor(CamelContext camelContext) {
+        this.camelContext = camelContext;
+    }
+
+    @Override
+    public void contribute(Info.Builder builder) {
+        if (camelContext != null) {
+            builder.withDetail("camel.name", camelContext.getName());
+            builder.withDetail("camel.version", camelContext.getVersion());
+            if (camelContext.getUptime() != null) {
+                builder.withDetail("camel.uptime", camelContext.getUptime());
+                builder.withDetail("camel.uptimeMillis", camelContext.getUptimeMillis());
+            }
+            builder.withDetail("camel.status", camelContext.getStatus().name());
+        }
+    }
+}
diff --git a/components/camel-spring-boot/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/components/camel-spring-boot/src/main/resources/META-INF/additional-spring-configuration-metadata.json
index 6074cb7..d9610aa 100644
--- a/components/camel-spring-boot/src/main/resources/META-INF/additional-spring-configuration-metadata.json
+++ b/components/camel-spring-boot/src/main/resources/META-INF/additional-spring-configuration-metadata.json
@@ -17,6 +17,12 @@
       "type": "java.lang.Boolean",
       "description": "To turn on or off information about Camel Routes via actuator endpoint.",
       "defaultValue": true
+    },
+    {
+      "name": "management.info.camel.enabled",
+      "type": "java.lang.Boolean",
+      "description": "Whether to enable Camel info.",
+      "defaultValue": true
     }
   ]
 }
diff --git a/components/camel-spring-boot/src/main/resources/META-INF/spring.factories b/components/camel-spring-boot/src/main/resources/META-INF/spring.factories
index 2d21167..312323c 100644
--- a/components/camel-spring-boot/src/main/resources/META-INF/spring.factories
+++ b/components/camel-spring-boot/src/main/resources/META-INF/spring.factories
@@ -21,6 +21,7 @@ org.apache.camel.spring.boot.SupervisingRouteControllerAutoConfiguration,\
 org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpointAutoConfiguration,\
 org.apache.camel.spring.boot.actuate.endpoint.CamelRouteControllerEndpointAutoConfiguration,\
 org.apache.camel.spring.boot.actuate.health.CamelHealthAutoConfiguration,\
+org.apache.camel.spring.boot.actuate.info.CamelInfoAutoConfiguration,\
 org.apache.camel.spring.boot.cloud.CamelCloudAutoConfiguration,\
 org.apache.camel.spring.boot.cloud.CamelCloudServiceCallConfigurationAutoConfiguration,\
 org.apache.camel.spring.boot.cloud.CamelCloudServiceDiscoveryAutoConfiguration,\
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/info/CamelInfoTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/info/CamelInfoTest.java
new file mode 100644
index 0000000..83c08bd
--- /dev/null
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/info/CamelInfoTest.java
@@ -0,0 +1,53 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.spring.boot.actuate.info;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spring.boot.CamelAutoConfiguration;
+import org.junit.Assert;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.actuate.info.Info;
+import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringRunner;
+
+@RunWith(SpringRunner.class)
+@EnableAutoConfiguration
+@SpringBootApplication
+@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelInfoAutoConfiguration.class})
+public class CamelInfoTest extends Assert {
+
+    @Autowired
+    CamelInfoContributor indicator;
+
+    @Autowired
+    CamelContext camelContext;
+
+    @Test
+    public void shouldHaveInfo() throws Exception {
+        Info.Builder builder = new Info.Builder();
+        indicator.contribute(builder);
+        assertNotNull(builder);
+
+        assertEquals(camelContext.getName(), builder.build().get("camel.name"));
+        assertEquals(camelContext.getVersion(), builder.build().get("camel.version"));
+    }
+
+}
diff --git a/examples/camel-example-spring-boot/pom.xml b/examples/camel-example-spring-boot/pom.xml
index 6f64fc6..d771ba3 100644
--- a/examples/camel-example-spring-boot/pom.xml
+++ b/examples/camel-example-spring-boot/pom.xml
@@ -74,7 +74,7 @@
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
-      <artifactId>spring-boot-actuator</artifactId>
+      <artifactId>spring-boot-starter-actuator</artifactId>
     </dependency>
 
     <!-- Camel -->
diff --git a/examples/camel-example-spring-boot/src/main/resources/application.properties b/examples/camel-example-spring-boot/src/main/resources/application.properties
index 34397fc..032746e 100644
--- a/examples/camel-example-spring-boot/src/main/resources/application.properties
+++ b/examples/camel-example-spring-boot/src/main/resources/application.properties
@@ -31,15 +31,16 @@ timer.period = 2000
 # add for example: &repeatCount=5 to the timer endpoint to make Camel idle
 #camel.springboot.duration-max-idle-seconds=15
 
-# all access to actuator endpoints without security
-management.security.enabled = false
-# turn on actuator health check
-endpoints.health.enabled = true
+# show verbose /health/health details so you can see Camel information also
+management.endpoint.health.show-details=always
 
-# allow to obtain basic information about camel routes (read only mode)
+# allow to obtain basic information about Camel routes (read only mode)
 endpoints.camelroutes.enabled = true
 endpoints.camelroutes.read-only = true
 
+# to turn off Camel info in: /health/info
+#management.info.camel.enabled=false
+
 # to configure logging levels
 #logging.level.org.springframework = INFO
 #logging.level.org.apache.camel.spring.boot = INFO

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 19/41: CAMEL-12377: fix example SQL init script

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit f2f634365ecc87c6ce939dea933b87c2ea0d373f
Author: nferraro <ni...@gmail.com>
AuthorDate: Thu Mar 22 15:17:50 2018 +0100

    CAMEL-12377: fix example SQL init script
---
 .../camel-example-spring-boot-rest-jpa/src/main/resources/data.sql  | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/examples/camel-example-spring-boot-rest-jpa/src/main/resources/data.sql b/examples/camel-example-spring-boot-rest-jpa/src/main/resources/data.sql
index 5698c3d..626f98b 100644
--- a/examples/camel-example-spring-boot-rest-jpa/src/main/resources/data.sql
+++ b/examples/camel-example-spring-boot-rest-jpa/src/main/resources/data.sql
@@ -15,7 +15,7 @@
 -- limitations under the License.
 -- ------------------------------------------------------------------------
 
-INSERT INTO books (item, description)
+INSERT INTO books (id, item, description)
   VALUES
-      ('Camel',    'Camel in Action'),
-      ('ActiveMQ', 'ActiveMQ in Action');
\ No newline at end of file
+      (1, 'Camel',    'Camel in Action'),
+      (2, 'ActiveMQ', 'ActiveMQ in Action');
\ No newline at end of file

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 34/41: CAMEL-12423: Upgrade spring 4.x and 5.x too

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 7d334a33b8ed36b4a5e0968988fd89ecaf43cfc7
Author: David J. M. Karlsen <da...@davidkarlsen.com>
AuthorDate: Sat Apr 7 14:39:37 2018 +0200

    CAMEL-12423: Upgrade spring 4.x and 5.x too
---
 parent/pom.xml | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/parent/pom.xml b/parent/pom.xml
index f116460..af85bdd 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -651,12 +651,8 @@
     <!-- karaf 4.1.x supports spring 4.x and karaf 4.2.x supports spring 5 -->
     <spring-version-range>[4.3,6)</spring-version-range>
     <spring-version>${spring5-version}</spring-version>
-    <spring40-version>4.0.9.RELEASE</spring40-version>
-    <spring41-version>4.1.9.RELEASE</spring41-version>
-    <spring42-version>4.2.9.RELEASE</spring42-version>
-    <spring43-version>4.3.15.RELEASE</spring43-version>
-    <spring4-version>4.3.15.RELEASE</spring4-version>
-    <spring5-version>5.0.4.RELEASE</spring5-version>
+    <spring4-version>4.3.16.RELEASE</spring4-version>
+    <spring5-version>5.0.5.RELEASE</spring5-version>
     <spring-osgi-version>1.2.1</spring-osgi-version>
     <spring-security-version>5.0.3.RELEASE</spring-security-version>
     <spring-security-bundle-version>4.2.4.RELEASE_1</spring-security-bundle-version>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 06/41: CAMEL-12363: Upgrade to spring-batch 4.0.1

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 3310703f652f8f83a2e8cbbb172ca6c6121aa185
Author: David J. M. Karlsen <da...@davidkarlsen.com>
AuthorDate: Sat Mar 17 23:10:34 2018 +0100

    CAMEL-12363: Upgrade to spring-batch 4.0.1
---
 parent/pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/parent/pom.xml b/parent/pom.xml
index f073b9a..0dbd05e 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -633,7 +633,7 @@
     <spark-rest-version>2.7.2</spark-rest-version>
     <spark-rest-bundle-version>2.7.2_1</spark-rest-bundle-version>
     <splunk-version>1.6.4.0_1</splunk-version>
-    <spring-batch-version>3.0.9.RELEASE</spring-batch-version>
+    <spring-batch-version>4.0.1.RELEASE</spring-batch-version>
     <spring-batch-bundle-version>3.0.8.RELEASE_1</spring-batch-bundle-version>
     <spring-boot-version>2.0.0.RELEASE</spring-boot-version>
     <!-- use same version of spring-cloud 1.3.x -->

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 08/41: CAMEL-11430: Migrate to Spring Boot 2 - work in progress

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit e56c5b1480a664660ba53bbd378c910d839272ce
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sun Mar 18 09:05:41 2018 +0100

    CAMEL-11430: Migrate to Spring Boot 2 - work in progress
---
 .../camel/component/redis/RedisConsumerTest.java    | 17 -----------------
 .../ProducerWss4JSecurityHeaderTestInterceptor.java |  2 +-
 parent/pom.xml                                      | 21 +++++++++------------
 3 files changed, 10 insertions(+), 30 deletions(-)

diff --git a/components/camel-spring-redis/src/test/java/org/apache/camel/component/redis/RedisConsumerTest.java b/components/camel-spring-redis/src/test/java/org/apache/camel/component/redis/RedisConsumerTest.java
index 817bebd..7bcccb9 100644
--- a/components/camel-spring-redis/src/test/java/org/apache/camel/component/redis/RedisConsumerTest.java
+++ b/components/camel-spring-redis/src/test/java/org/apache/camel/component/redis/RedisConsumerTest.java
@@ -20,17 +20,14 @@ import java.util.Collection;
 import java.util.Iterator;
 
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.mock.MockEndpoint;
 import org.apache.camel.impl.JndiRegistry;
 import org.apache.camel.test.junit4.CamelTestSupport;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.ArgumentCaptor;
-import org.mockito.ArgumentMatchers;
 import org.mockito.Captor;
 import org.mockito.Mock;
 import org.mockito.junit.MockitoJUnitRunner;
-import org.springframework.data.redis.connection.DefaultMessage;
 import org.springframework.data.redis.connection.MessageListener;
 import org.springframework.data.redis.listener.ChannelTopic;
 import org.springframework.data.redis.listener.RedisMessageListenerContainer;
@@ -71,20 +68,6 @@ public class RedisConsumerTest extends CamelTestSupport {
         assertEquals("two", twoTopic.getTopic());
     }
 
-    @Test
-    public void consumerReceivesMessages() throws Exception {
-        MockEndpoint mock = getMockEndpoint("mock:result");
-        mock.expectedMinimumMessageCount(2);
-
-        verify(listenerContainer).addMessageListener(messageListenerCaptor.capture(), ArgumentMatchers.<Collection<? extends Topic>>any());
-
-        MessageListener messageListener = messageListenerCaptor.getValue();
-        messageListener.onMessage(new DefaultMessage(null, null), null);
-        messageListener.onMessage(new DefaultMessage(null, null), null);
-
-        mock.assertIsSatisfied();
-    }
-
     protected RouteBuilder createRouteBuilder() {
         return new RouteBuilder() {
             public void configure() {
diff --git a/components/camel-spring-ws/src/test/java/org/apache/camel/component/spring/ws/security/ProducerWss4JSecurityHeaderTestInterceptor.java b/components/camel-spring-ws/src/test/java/org/apache/camel/component/spring/ws/security/ProducerWss4JSecurityHeaderTestInterceptor.java
index 98f146c..38efd99 100644
--- a/components/camel-spring-ws/src/test/java/org/apache/camel/component/spring/ws/security/ProducerWss4JSecurityHeaderTestInterceptor.java
+++ b/components/camel-spring-ws/src/test/java/org/apache/camel/component/spring/ws/security/ProducerWss4JSecurityHeaderTestInterceptor.java
@@ -22,7 +22,7 @@ import java.io.IOException;
 
 import org.springframework.ws.context.MessageContext;
 import org.springframework.ws.soap.SoapMessage;
-import org.springframework.ws.soap.security.wss4j.Wss4jSecurityInterceptor;
+import org.springframework.ws.soap.security.wss4j2.Wss4jSecurityInterceptor;
 
 public class ProducerWss4JSecurityHeaderTestInterceptor extends Wss4jSecurityInterceptor {
 
diff --git a/parent/pom.xml b/parent/pom.xml
index 0dbd05e..405e97b 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -196,7 +196,7 @@
     <eclipse-equinox-common-version>3.3.0-v20070426</eclipse-equinox-common-version>
     <egit-github-core-version>2.1.5</egit-github-core-version>
     <egit-github-core-bundle-version>2.1.5_1</egit-github-core-bundle-version>
-    <ehcache-version>2.10.1</ehcache-version>
+    <ehcache-version>2.10.4</ehcache-version>
     <ehcache3-version>3.5.2</ehcache3-version>
     <ekstazi-maven-plugin-version>5.3.0</ekstazi-maven-plugin-version>
     <elasticsearch-bundle-version>2.4.4_1</elasticsearch-bundle-version>
@@ -496,8 +496,7 @@
     <maven-surefire-report-plugin-version>2.13</maven-surefire-report-plugin-version>
     <maven-war-plugin-version>3.0.0</maven-war-plugin-version>
     <mchange-commons-java-version>0.2.11</mchange-commons-java-version>
-    <!-- TODO: spring-boot uses metrics 3.1.x -->
-    <metrics-version>3.1.5</metrics-version>
+    <metrics-version>3.2.6</metrics-version>
     <milo-version>0.2.1</milo-version>
     <mina-bundle-version>1.1.7_6</mina-bundle-version>
     <mina-version>1.1.7</mina-version>
@@ -636,19 +635,17 @@
     <spring-batch-version>4.0.1.RELEASE</spring-batch-version>
     <spring-batch-bundle-version>3.0.8.RELEASE_1</spring-batch-bundle-version>
     <spring-boot-version>2.0.0.RELEASE</spring-boot-version>
-    <!-- use same version of spring-cloud 1.3.x -->
     <spring-cloud-commons-version>1.3.3.RELEASE</spring-cloud-commons-version>
     <spring-cloud-netflix-version>1.4.4.RELEASE</spring-cloud-netflix-version>
     <spring-castor-bundle-version>1.2.0</spring-castor-bundle-version>
-    <spring-data-commons-version>1.13.11.RELEASE</spring-data-commons-version>
-    <spring-data-keyvalue-version>1.2.6.RELEASE</spring-data-keyvalue-version>
-    <spring-data-redis-version>1.8.6.RELEASE</spring-data-redis-version>
-    <spring-integration-version>4.3.14.RELEASE</spring-integration-version>
+    <spring-data-commons-version>2.0.5.RELEASE</spring-data-commons-version>
+    <spring-data-keyvalue-version>2.0.5.RELEASE</spring-data-keyvalue-version>
+    <spring-data-redis-version>2.0.5.RELEASE</spring-data-redis-version>
+    <spring-integration-version>5.0.3.RELEASE</spring-integration-version>
     <spring-javaconfig-version>1.0.0-20090215</spring-javaconfig-version>
     <spring-ldap-version>2.3.2.RELEASE</spring-ldap-version>
     <spring-ldap-bundle-version>2.3.2.RELEASE_1</spring-ldap-bundle-version>
-    <!-- spring 1.1.0 is not OSGi bundle any more -->
-    <spring-retry-version>1.0.3.RELEASE</spring-retry-version>
+    <spring-retry-version>1.2.2.RELEASE</spring-retry-version>
     <!-- karaf 4.1.x supports spring 4.x and karaf 4.2.x supports spring 5 -->
     <spring-version-range>[4.3,6)</spring-version-range>
     <spring-version>${spring5-version}</spring-version>
@@ -659,11 +656,11 @@
     <spring4-version>4.3.15.RELEASE</spring4-version>
     <spring5-version>5.0.4.RELEASE</spring5-version>
     <spring-osgi-version>1.2.1</spring-osgi-version>
-    <spring-security-version>4.2.4.RELEASE</spring-security-version>
+    <spring-security-version>5.0.3.RELEASE</spring-security-version>
     <spring-security-bundle-version>4.2.4.RELEASE_1</spring-security-bundle-version>
     <spring-ws-bundle-version>2.4.2.RELEASE_1</spring-ws-bundle-version>
     <spring-xml-bundle-version>2.4.2.RELEASE_1</spring-xml-bundle-version>
-    <spring-ws-version>2.4.2.RELEASE</spring-ws-version>
+    <spring-ws-version>3.0.0.RELEASE</spring-ws-version>
     <spymemcached-bundle-version>2.5_2</spymemcached-bundle-version> <!-- FIXME cmueller: not in sync! -->
     <spymemcached-version>2.12.0</spymemcached-version>
     <squareup-okhttp-version>2.7.5</squareup-okhttp-version>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 10/41: CAMEL-11430: Migrate to Spring Boot 2 - work in progress

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 208a1340c317dc7acfca0cbae3052e9ed08ac529
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Mar 19 09:43:39 2018 +0100

    CAMEL-11430: Migrate to Spring Boot 2 - work in progress
---
 .../consumer/pom.xml                                   | 18 +-----------------
 .../consumer/src/main/resources/application.properties |  4 ++--
 .../camel-example-spring-cloud-servicecall/pom.xml     | 14 +++++++++++++-
 .../service/pom.xml                                    |  4 ++++
 4 files changed, 20 insertions(+), 20 deletions(-)

diff --git a/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml b/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
index 13acec0..202b7f8 100644
--- a/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
+++ b/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
@@ -39,7 +39,7 @@
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
     <spring.boot-version>${spring-boot-version}</spring.boot-version>
-    <spring.cloud-version>1.1.3.RELEASE</spring.cloud-version>
+    <spring.cloud-version>2.0.0.M6</spring.cloud-version>
   </properties>
 
   <dependencyManagement>
@@ -78,18 +78,6 @@
       <artifactId>spring-boot-starter</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.springframework.boot</groupId>
-      <artifactId>spring-boot-starter-web</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework.boot</groupId>
-      <artifactId>spring-boot-starter-undertow</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework.boot</groupId>
-      <artifactId>spring-boot-actuator</artifactId>
-    </dependency>
-    <dependency>
       <groupId>org.springframework.cloud</groupId>
       <artifactId>spring-cloud-starter-consul-discovery</artifactId>
     </dependency>
@@ -109,10 +97,6 @@
     </dependency>
     <dependency>
       <groupId>org.apache.camel</groupId>
-      <artifactId>camel-undertow-starter</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.camel</groupId>
       <artifactId>camel-http-starter</artifactId>
     </dependency>
     <dependency>
diff --git a/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties b/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties
index c633bcc..c5d7a0b 100644
--- a/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties
+++ b/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties
@@ -30,8 +30,8 @@ spring.cloud.consul.discovery.register = false
 camel.springboot.main-run-controller=true
 camel.springboot.jmx-enabled=false
 
-camel.rest.component=servlet
+camel.rest.component=undertow
 camel.rest.binding-mode=auto
 
 # Configure the underlying Service Call component
-camel.cloud.service-call.component = undertow
+camel.cloud.service-call.component = http
diff --git a/examples/camel-example-spring-cloud-servicecall/pom.xml b/examples/camel-example-spring-cloud-servicecall/pom.xml
index abb141f..8d193ef 100644
--- a/examples/camel-example-spring-cloud-servicecall/pom.xml
+++ b/examples/camel-example-spring-cloud-servicecall/pom.xml
@@ -34,10 +34,22 @@
   <description>An example showing how to work with Camel ServiceCall EIP and Spring Cloud</description>
   <packaging>pom</packaging>
 
-    <properties>
+  <properties>
     <category>Cloud</category>
   </properties>
 
+  <!-- spring-cloud with support for spring boot 2 is not in maven central yet -->
+  <repositories>
+    <repository>
+      <id>spring-milestones</id>
+      <name>Spring Milestones</name>
+      <url>https://repo.spring.io/libs-milestone</url>
+      <snapshots>
+        <enabled>false</enabled>
+      </snapshots>
+    </repository>
+  </repositories>
+
   <modules>
     <module>consumer</module>
     <module>service</module>
diff --git a/examples/camel-example-spring-cloud-servicecall/service/pom.xml b/examples/camel-example-spring-cloud-servicecall/service/pom.xml
index 967be03..1564779 100644
--- a/examples/camel-example-spring-cloud-servicecall/service/pom.xml
+++ b/examples/camel-example-spring-cloud-servicecall/service/pom.xml
@@ -69,6 +69,10 @@
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter</artifactId>
     </dependency>
+    <dependency>
+      <groupId>org.springframework.boot</groupId>
+      <artifactId>spring-boot-starter-undertow</artifactId>
+    </dependency>
 
     <!-- Camel -->
     <dependency>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 03/41: CAMEL-11430: Migrate to Spring Boot 2 - work in progress

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 07f31622b3ae25109c6d53735e879577b810528f
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Mar 17 16:49:19 2018 +0100

    CAMEL-11430: Migrate to Spring Boot 2 - work in progress
---
 .../actuate/endpoint/AbstractCamelEndpoint.java    |  42 --
 .../actuate/endpoint/AbstractCamelMvcEndpoint.java | 111 -----
 .../actuate/endpoint/CamelHealthCheckEndpoint.java | 180 --------
 .../CamelHealthCheckEndpointAutoConfiguration.java |  67 ---
 .../endpoint/CamelHealthCheckMvcEndpoint.java      | 103 -----
 .../endpoint/CamelRouteControllerEndpoint.java     |  20 +-
 ...elRouteControllerEndpointAutoConfiguration.java |  25 --
 .../endpoint/CamelRouteControllerMvcEndpoint.java  |  31 --
 .../boot/actuate/endpoint/CamelRoutesEndpoint.java | 456 ++++++++++++++++++---
 .../CamelRoutesEndpointAutoConfiguration.java      |  24 --
 .../actuate/endpoint/CamelRoutesMvcEndpoint.java   | 243 -----------
 .../health/CamelHealthAutoConfiguration.java       |  32 +-
 .../actuate/health/CamelHealthCheckIndicator.java  |  68 ---
 ...CamelHealthCheckIndicatorAutoConfiguration.java |  92 -----
 .../CamelHealthCheckIndicatorConfiguration.java    |  72 ----
 .../actuate/health/CamelHealthConfiguration.java   |  36 --
 .../boot/actuate/health/CamelHealthIndicator.java  |   4 +-
 .../boot/security/CamelSSLAutoConfiguration.java   |   2 +-
 .../boot/util/HierarchicalPropertiesEvaluator.java |   2 +-
 .../spring/boot/util/PropertySourceUtils.java      |  93 +++++
 .../camel/spring/boot/util/RelaxedNames.java       | 260 ++++++++++++
 .../spring/boot/util/RelaxedPropertyResolver.java  | 162 ++++++++
 .../src/main/resources/META-INF/spring.factories   |   5 +-
 .../boot/actuate/endpoint/ActuatorTestRoute.java   |   4 -
 .../CamelEndpointsGloballyDisabledTest.java        |  64 ---
 .../CamelHealthCheckEndpointDisabledTest.java      |  48 ---
 ...ckEndpointGloballyDisabledAndReenabledTest.java |  49 ---
 .../endpoint/CamelHealthCheckEndpointTest.java     | 121 ------
 .../CamelRouteControllerEndpointDisabledTest.java  |  59 ---
 ...erEndpointGloballyDisabledAndReenabledTest.java |  60 ---
 .../endpoint/CamelRouteControllerEndpointTest.java |  62 ---
 .../CamelRouteControllerMvcEndpointTest.java       |  65 ---
 .../endpoint/CamelRoutesEndpointDisabledTest.java  |  63 ---
 ...esEndpointGloballyDisabledAndReenabledTest.java |  60 ---
 .../actuate/endpoint/CamelRoutesEndpointTest.java  |   4 +-
 .../endpoint/CamelRoutesMvcEndpointTest.java       |  89 ----
 .../actuate/health/CamelHealthDisabledTest.java    |  49 ---
 .../CamelCloudServiceCallConfigurationTest.java    |   2 +
 ...melCloudServiceCallGlobalConfigurationTest.java |   2 +
 .../CamelCloudServiceCallRefExpressionTest.java    |   2 +
 .../CamelCloudServiceCallSimpleExpressionTest.java |   2 +
 .../boot/cloud/CamelCloudServiceCallTest.java      |   2 +
 parent/pom.xml                                     |   3 +-
 43 files changed, 961 insertions(+), 1979 deletions(-)

diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/AbstractCamelEndpoint.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/AbstractCamelEndpoint.java
deleted file mode 100644
index 532d0d6..0000000
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/AbstractCamelEndpoint.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.spi.HasCamelContext;
-import org.springframework.boot.actuate.endpoint.AbstractEndpoint;
-import org.springframework.boot.actuate.endpoint.Endpoint;
-
-/**
- * Abstract camel {@link Endpoint}.
- */
-abstract class AbstractCamelEndpoint<T> extends AbstractEndpoint<T> implements HasCamelContext {
-    private final CamelContext camelContext;
-
-    protected AbstractCamelEndpoint(String id, CamelContext camelContext) {
-        super(id);
-        this.camelContext = camelContext;
-
-        // is enabled by default
-        this.setEnabled(true);
-    }
-
-    @Override
-    public CamelContext getCamelContext() {
-        return this.camelContext;
-    }
-}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/AbstractCamelMvcEndpoint.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/AbstractCamelMvcEndpoint.java
deleted file mode 100644
index 9f937a0..0000000
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/AbstractCamelMvcEndpoint.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import java.util.Collections;
-import java.util.Map;
-import java.util.function.Function;
-import java.util.function.Supplier;
-
-import org.springframework.boot.actuate.endpoint.Endpoint;
-import org.springframework.boot.actuate.endpoint.mvc.EndpointMvcAdapter;
-import org.springframework.boot.actuate.endpoint.mvc.MvcEndpoint;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.ResponseStatus;
-
-/**
- * Adapter to expose {@link T} as an {@link MvcEndpoint}.
- */
-abstract class AbstractCamelMvcEndpoint<T extends Endpoint> extends EndpointMvcAdapter {
-    /**
-     * A {@link ResponseEntity} returned for forbidden operations (such as trying to stop a route).
-     */
-    private static final ResponseEntity<Map<String, String>> FORBIDDEN_RESPONSE = new ResponseEntity<Map<String, String>>(
-        Collections.singletonMap("message", "This operation is forbidden"),
-        HttpStatus.FORBIDDEN);
-
-    private final T delegate;
-    private boolean readOnly = true;
-
-    protected AbstractCamelMvcEndpoint(String path, T delegate) {
-        super(delegate);
-        this.delegate = delegate;
-
-        setPath(path);
-    }
-
-    /**
-     * Returns the response that should be returned when the operation is forbidden.
-     * @return The response to be returned when the operation is disabled
-     */
-    protected ResponseEntity<?> getForbiddenResponse() {
-        return FORBIDDEN_RESPONSE;
-    }
-
-    public boolean isReadOnly() {
-        return readOnly;
-    }
-
-    public void setReadOnly(boolean readOnly) {
-        this.readOnly = readOnly;
-    }
-
-    // ********************************************
-    // Helpers
-    // ********************************************
-
-
-    protected T delegate() {
-        return this.delegate;
-    }
-
-    protected Object doIfEnabled(Supplier<Object> supplier) {
-        if (!delegate.isEnabled()) {
-            return getDisabledResponse();
-        }
-
-        return supplier.get();
-    }
-
-    protected Object doIfEnabled(Function<T, Object> supplier) {
-        if (!delegate.isEnabled()) {
-            return getDisabledResponse();
-        }
-
-        return supplier.apply(delegate);
-    }
-
-    protected Object doIfEnabledAndNotReadOnly(Supplier<Object> supplier) {
-        if (!delegate.isEnabled()) {
-            return getDisabledResponse();
-        }
-        if (isReadOnly()) {
-            return getForbiddenResponse();
-        }
-
-        return supplier.get();
-    }
-
-    @SuppressWarnings("serial")
-    @ResponseStatus(value = HttpStatus.INTERNAL_SERVER_ERROR)
-    public static class GenericException extends RuntimeException {
-        public GenericException(String message, Throwable cause) {
-            super(message, cause);
-        }
-    }
-}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpoint.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpoint.java
deleted file mode 100644
index a55aca2..0000000
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpoint.java
+++ /dev/null
@@ -1,180 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import java.time.Duration;
-import java.util.Collection;
-import java.util.Map;
-import java.util.Optional;
-
-import static java.util.stream.Collectors.toList;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonPropertyOrder;
-import org.apache.camel.CamelContext;
-import org.apache.camel.health.HealthCheck;
-import org.apache.camel.health.HealthCheckConfiguration;
-import org.apache.camel.health.HealthCheckHelper;
-import org.apache.camel.util.ObjectHelper;
-import org.springframework.boot.actuate.endpoint.Endpoint;
-import org.springframework.boot.context.properties.ConfigurationProperties;
-
-/**
- * {@link Endpoint} to expose {@link org.apache.camel.health.HealthCheck} information.
- */
-@ConfigurationProperties(prefix = "endpoints." + CamelHealthCheckEndpoint.ENDPOINT_ID)
-public class CamelHealthCheckEndpoint extends AbstractCamelEndpoint<Collection<CamelHealthCheckEndpoint.HealthCheckResult>> {
-    public static final String ENDPOINT_ID = "camelhealthcheck";
-
-    public CamelHealthCheckEndpoint(CamelContext camelContext) {
-        super(ENDPOINT_ID, camelContext);
-    }
-
-    @Override
-    public Collection<HealthCheckResult> invoke() {
-        return HealthCheckHelper.invoke(getCamelContext()).stream()
-            .map(result -> new HealthCheckResult(result, new Check(result)))
-            .collect(toList());
-    }
-
-    // ****************************************
-    // Used by CamelHealthCheckMvcEndpoint
-    // ****************************************
-
-    Optional<HealthCheckResult> query(String id, Map<String, Object> options) {
-        return HealthCheckHelper.query(getCamelContext(), id, options)
-            .map(result -> new DetailedHealthCheckResult(result, new DetailedCheck(result)));
-    }
-
-    Optional<HealthCheckResult> invoke(String id, Map<String, Object> options) {
-        return HealthCheckHelper.invoke(getCamelContext(), id, options)
-            .map(result -> new DetailedHealthCheckResult(result, new DetailedCheck(result)));
-    }
-
-    // ****************************************
-    // Wrappers
-    // ****************************************
-
-    @JsonInclude(JsonInclude.Include.NON_EMPTY)
-    @JsonPropertyOrder({"enabled", "interval", "failureThreshold"})
-    public static class CheckConfiguration {
-        protected final HealthCheckConfiguration configuration;
-
-        public CheckConfiguration(HealthCheckConfiguration configuration) {
-            this.configuration = ObjectHelper.supplyIfEmpty(configuration, HealthCheckConfiguration::new);
-        }
-
-        @JsonProperty("enabled")
-        public Boolean isEnabled() {
-            return configuration.isEnabled();
-        }
-
-        @JsonProperty("interval")
-        public String getDuration() {
-            Duration interval = configuration.getInterval();
-            return interval != null ? interval.toString() : null;
-        }
-
-        @JsonProperty("failureThreshold")
-        public Integer getFailureThreshold() {
-            return configuration.getFailureThreshold();
-        }
-    }
-
-    @JsonInclude(JsonInclude.Include.NON_EMPTY)
-    @JsonPropertyOrder({"id", "group"})
-    public static class Check {
-        protected final HealthCheck.Result result;
-
-        public Check(HealthCheck.Result result) {
-            this.result = result;
-        }
-
-        @JsonProperty("id")
-        public String getId() {
-            return result.getCheck().getId();
-        }
-
-        @JsonProperty("group")
-        public String getGroup() {
-            return result.getCheck().getGroup();
-        }
-    }
-
-    @JsonInclude(JsonInclude.Include.NON_EMPTY)
-    @JsonPropertyOrder({"status", "message", "check"})
-    public static class HealthCheckResult {
-        protected final HealthCheck.Result result;
-        protected final Check check;
-
-        public HealthCheckResult(HealthCheck.Result result, Check check) {
-            this.result = result;
-            this.check = check;
-        }
-
-        @JsonProperty("status")
-        public String getStatus() {
-            return result.getState().name();
-        }
-
-        @JsonProperty("message")
-        public String getMessage() {
-            return result.getMessage().orElse(null);
-        }
-
-        @JsonProperty("check")
-        public Check getCheck() {
-            return this.check;
-        }
-    }
-
-    @JsonInclude(JsonInclude.Include.NON_EMPTY)
-    @JsonPropertyOrder({"id", "group", "metaData"})
-    public static class DetailedCheck extends Check {
-        private CheckConfiguration configuration;
-
-        public DetailedCheck(HealthCheck.Result result) {
-            super(result);
-
-            this.configuration = new CheckConfiguration(result.getCheck().getConfiguration());
-        }
-
-        @JsonProperty("configuration")
-        public CheckConfiguration getConfiguration() {
-            return this.configuration;
-        }
-
-        @JsonProperty("metaData")
-        public Map<String, Object> getMeta() {
-            return result.getCheck().getMetaData();
-        }
-    }
-
-    @JsonInclude(JsonInclude.Include.NON_EMPTY)
-    @JsonPropertyOrder({"status", "message", "details", "check"})
-    public static class DetailedHealthCheckResult extends HealthCheckResult {
-        public DetailedHealthCheckResult(HealthCheck.Result result, Check check) {
-            super(result, check);
-        }
-
-        @JsonProperty("details")
-        public Map<String, Object> getDetails() {
-            return result.getDetails();
-        }
-    }
-}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointAutoConfiguration.java
deleted file mode 100644
index a005cf2..0000000
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointAutoConfiguration.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.util.GroupCondition;
-import org.springframework.boot.autoconfigure.AutoConfigureAfter;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Conditional;
-import org.springframework.context.annotation.Configuration;
-
-/**
- * Auto configuration for the {@link CamelHealthCheckEndpoint}.
- */
-@Configuration
-@ConditionalOnClass(CamelHealthCheckEndpoint.class)
-@ConditionalOnBean(CamelAutoConfiguration.class)
-@AutoConfigureAfter(CamelAutoConfiguration.class)
-@Conditional(CamelHealthCheckEndpointAutoConfiguration.Condition.class)
-public class CamelHealthCheckEndpointAutoConfiguration {
-    @Bean
-    @ConditionalOnBean(CamelContext.class)
-    @ConditionalOnMissingBean
-    public CamelHealthCheckEndpoint healthChecksEndpoint(CamelContext camelContext) {
-        return new CamelHealthCheckEndpoint(camelContext);
-    }
-
-    @Bean
-    @ConditionalOnBean(CamelContext.class)
-    @ConditionalOnMissingBean
-    @ConditionalOnWebApplication
-    public CamelHealthCheckMvcEndpoint healthChecksMvcEndpoint(CamelHealthCheckEndpoint delegate) {
-        return new CamelHealthCheckMvcEndpoint(delegate);
-    }
-
-    // ***************************************
-    // Condition
-    // ***************************************
-
-    public static class Condition extends GroupCondition {
-        public Condition() {
-            super(
-                    "endpoints",
-                    "endpoints." + CamelHealthCheckEndpoint.ENDPOINT_ID
-            );
-        }
-    }
-}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckMvcEndpoint.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckMvcEndpoint.java
deleted file mode 100644
index 9f9a84c..0000000
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckMvcEndpoint.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import java.util.Collections;
-import java.util.Map;
-
-import org.apache.camel.util.ObjectHelper;
-import org.springframework.boot.actuate.endpoint.mvc.ActuatorMediaTypes;
-import org.springframework.boot.actuate.endpoint.mvc.MvcEndpoint;
-import org.springframework.boot.context.properties.ConfigurationProperties;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.ResponseBody;
-import org.springframework.web.bind.annotation.ResponseStatus;
-
-/**
- * Adapter to expose {@link CamelHealthCheckEndpoint} as an {@link MvcEndpoint}.
- */
-@ConfigurationProperties(prefix = "endpoints." + CamelHealthCheckEndpoint.ENDPOINT_ID)
-public class CamelHealthCheckMvcEndpoint extends AbstractCamelMvcEndpoint<CamelHealthCheckEndpoint> {
-
-    public CamelHealthCheckMvcEndpoint(CamelHealthCheckEndpoint delegate) {
-        super("/camel/health/check", delegate);
-    }
-
-    // ********************************************
-    // Endpoints
-    // ********************************************
-
-    @ResponseBody
-    @GetMapping(
-        value = "/{id}",
-        produces = {
-            ActuatorMediaTypes.APPLICATION_ACTUATOR_V1_JSON_VALUE,
-            MediaType.APPLICATION_JSON_VALUE
-        }
-    )
-    public Object query(
-        @PathVariable String id,
-        @RequestParam(required = false) Map<String, Object> options) {
-
-        return doIfEnabled(
-            delegate -> delegate.query(
-                id,
-                ObjectHelper.supplyIfEmpty(options, Collections::emptyMap)
-            ).orElseThrow(
-                () -> new NoSuchCheckException("No such check " + id)
-            )
-        );
-    }
-
-    @ResponseBody
-    @GetMapping(
-        value = "/{id}/invoke",
-        produces = {
-            ActuatorMediaTypes.APPLICATION_ACTUATOR_V1_JSON_VALUE,
-            MediaType.APPLICATION_JSON_VALUE
-        }
-    )
-    public Object invoke(
-        @PathVariable String id,
-        @RequestParam(required = false) Map<String, Object> options) {
-
-        return doIfEnabled(
-            delegate -> delegate.invoke(
-                id,
-                ObjectHelper.supplyIfEmpty(options, Collections::emptyMap)
-            ).orElseThrow(
-                () -> new NoSuchCheckException("No such check " + id)
-            )
-        );
-    }
-
-    // ********************************************
-    // Exceptions
-    // ********************************************
-
-    @SuppressWarnings("serial")
-    @ResponseStatus(value = HttpStatus.NOT_FOUND, reason = "No such check")
-    public static class NoSuchCheckException extends RuntimeException {
-        public NoSuchCheckException(String message) {
-            super(message);
-        }
-    }
-}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpoint.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpoint.java
index 01dc98b..89231b9 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpoint.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpoint.java
@@ -23,23 +23,25 @@ import java.util.stream.Collectors;
 import org.apache.camel.CamelContext;
 import org.apache.camel.Route;
 import org.apache.camel.spi.RouteController;
-import org.springframework.boot.actuate.endpoint.Endpoint;
-import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.actuate.endpoint.annotation.Endpoint;
+import org.springframework.boot.actuate.endpoint.annotation.ReadOperation;
 
 /**
  * {@link Endpoint} to expose {@link RouteController} information.
  */
-@ConfigurationProperties(prefix = "endpoints." + CamelRouteControllerEndpoint.ENDPOINT_ID)
-public class CamelRouteControllerEndpoint extends AbstractCamelEndpoint<List<String>> {
-    public static final String ENDPOINT_ID = "camelroutecontroller";
+@Endpoint(id = "camelroutecontroller", enableByDefault = true)
+public class CamelRouteControllerEndpoint {
+
+    private CamelContext camelContext;
 
     public CamelRouteControllerEndpoint(CamelContext camelContext) {
-        super(ENDPOINT_ID, camelContext);
+        this.camelContext = camelContext;
     }
 
-    @Override
-    public List<String> invoke() {
-        RouteController controller = getCamelContext().getRouteController();
+    @ReadOperation
+    public List<String> getControlledRoutes() {
+        RouteController controller = camelContext.getRouteController();
+
         if (controller != null) {
             return controller.getControlledRoutes().stream()
                 .map(Route::getId)
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointAutoConfiguration.java
index 44d5f1e..bf7918f 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointAutoConfiguration.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointAutoConfiguration.java
@@ -18,14 +18,11 @@ package org.apache.camel.spring.boot.actuate.endpoint;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.util.GroupCondition;
 import org.springframework.boot.autoconfigure.AutoConfigureAfter;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
 import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Conditional;
 import org.springframework.context.annotation.Configuration;
 
 /**
@@ -35,7 +32,6 @@ import org.springframework.context.annotation.Configuration;
 @ConditionalOnClass({CamelRouteControllerEndpoint.class})
 @ConditionalOnBean(CamelAutoConfiguration.class)
 @AutoConfigureAfter(CamelAutoConfiguration.class)
-@Conditional(CamelRouteControllerEndpointAutoConfiguration.Condition.class)
 public class CamelRouteControllerEndpointAutoConfiguration {
     @Bean
     @ConditionalOnClass(CamelContext.class)
@@ -43,25 +39,4 @@ public class CamelRouteControllerEndpointAutoConfiguration {
     public CamelRouteControllerEndpoint routeControllerEndpoint(CamelContext camelContext) {
         return new CamelRouteControllerEndpoint(camelContext);
     }
-
-    @Bean
-    @ConditionalOnClass(CamelContext.class)
-    @ConditionalOnMissingBean
-    @ConditionalOnWebApplication
-    public CamelRouteControllerMvcEndpoint routeControllerMvcEndpoint(CamelRouteControllerEndpoint delegate) {
-        return new CamelRouteControllerMvcEndpoint(delegate);
-    }
-
-    // ***************************************
-    // Condition
-    // ***************************************
-
-    public static class Condition extends GroupCondition {
-        public Condition() {
-            super(
-                    "endpoints",
-                    "endpoints." + CamelRouteControllerEndpoint.ENDPOINT_ID
-            );
-        }
-    }
 }
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerMvcEndpoint.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerMvcEndpoint.java
deleted file mode 100644
index 700188f..0000000
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerMvcEndpoint.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import org.springframework.boot.actuate.endpoint.mvc.MvcEndpoint;
-import org.springframework.boot.context.properties.ConfigurationProperties;
-
-/**
- * Adapter to expose {@link CamelRouteControllerEndpoint} as an {@link MvcEndpoint}.
- */
-@ConfigurationProperties(prefix = "endpoints." + CamelRouteControllerEndpoint.ENDPOINT_ID)
-public class CamelRouteControllerMvcEndpoint extends AbstractCamelMvcEndpoint<CamelRouteControllerEndpoint> {
-
-    public CamelRouteControllerMvcEndpoint(CamelRouteControllerEndpoint delegate) {
-        super("/camel/route-controller", delegate);
-    }
-}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpoint.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpoint.java
index e96ac6b..f8c8ff7 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpoint.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpoint.java
@@ -16,98 +16,462 @@
  */
 package org.apache.camel.spring.boot.actuate.endpoint;
 
+import java.util.Date;
 import java.util.List;
 import java.util.Optional;
 import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
 
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
 import org.apache.camel.CamelContext;
 import org.apache.camel.Route;
+import org.apache.camel.RuntimeCamelException;
+import org.apache.camel.StatefulService;
 import org.apache.camel.api.management.mbean.ManagedRouteMBean;
-import org.apache.camel.model.ModelHelper;
-import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.spring.boot.model.RouteDetailsInfo;
-import org.apache.camel.spring.boot.model.RouteInfo;
-import org.springframework.boot.actuate.endpoint.Endpoint;
-import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.apache.camel.spi.RouteError;
+import org.springframework.boot.actuate.endpoint.annotation.Endpoint;
+import org.springframework.boot.actuate.endpoint.annotation.ReadOperation;
+import org.springframework.boot.actuate.endpoint.annotation.Selector;
+import org.springframework.boot.actuate.endpoint.annotation.WriteOperation;
 
 /**
  * {@link Endpoint} to expose {@link org.apache.camel.Route} information.
  */
-@ConfigurationProperties(prefix = "endpoints." + CamelRoutesEndpoint.ENDPOINT_ID)
-public class CamelRoutesEndpoint extends AbstractCamelEndpoint<List<RouteInfo>> {
-    public static final String ENDPOINT_ID = "camelroutes";
+@Endpoint(id = "camelroutes", enableByDefault = true)
+public class CamelRoutesEndpoint {
+
+    private CamelContext camelContext;
 
     public CamelRoutesEndpoint(CamelContext camelContext) {
-        super(ENDPOINT_ID, camelContext);
+        this.camelContext = camelContext;
     }
 
-    @Override
-    public List<RouteInfo> invoke() {
+    @ReadOperation
+    public List<RouteEndpointInfo> readRoutes() {
         return getRoutesInfo();
     }
 
-    public RouteInfo getRouteInfo(String id) {
-        Route route = getCamelContext().getRoute(id);
+    @ReadOperation
+    public Object doReadAction(@Selector String id, @Selector ReadAction action) {
+        switch (action) {
+        case DETAIL:
+            return getRouteDetailsInfo(id);
+        case INFO:
+            return getRouteInfo(id);
+        default:
+            throw new IllegalArgumentException("Unsupported read action " + action);
+        }
+    }
+
+    @WriteOperation
+    public void doWriteAction(@Selector String id, @Selector WriteAction action, TimeInfo timeInfo) {
+        switch (action) {
+        case STOP:
+            stopRoute(
+                    id,
+                    Optional.ofNullable(timeInfo).flatMap(ti -> Optional.ofNullable(ti.getTimeout())),
+                    Optional.of(TimeUnit.SECONDS),
+                    Optional.ofNullable(timeInfo).flatMap(ti -> Optional.ofNullable(ti.getAbortAfterTimeout())));
+            break;
+        case START:
+            startRoute(id);
+            break;
+        case RESET:
+            resetRoute(id);
+            break;
+        case SUSPEND:
+            suspendRoute(id,
+                    Optional.ofNullable(timeInfo).flatMap(ti -> Optional.ofNullable(ti.getTimeout())),
+                    Optional.of(TimeUnit.SECONDS));
+            break;
+        case RESUME:
+            resumeRoute(id);
+            break;
+        default:
+            throw new IllegalArgumentException("Unsupported write action " + action);
+        }
+    }
+
+    private RouteEndpointInfo getRouteInfo(String id) {
+        Route route = camelContext.getRoute(id);
         if (route != null) {
-            return new RouteInfo(route);
+            return new RouteEndpointInfo(route);
         }
 
         return null;
     }
 
-    public List<RouteInfo> getRoutesInfo() {
-        return getCamelContext().getRoutes().stream()
-            .map(RouteInfo::new)
-            .collect(Collectors.toList());
+    public List<RouteEndpointInfo> getRoutesInfo() {
+        return camelContext.getRoutes().stream()
+                .map(RouteEndpointInfo::new)
+                .collect(Collectors.toList());
     }
 
-    public RouteDetailsInfo getRouteDetailsInfo(String id) {
-        Route route = getCamelContext().getRoute(id);
+    private RouteDetailsEndpointInfo getRouteDetailsInfo(String id) {
+        Route route = camelContext.getRoute(id);
         if (route != null) {
-            return new RouteDetailsInfo(getCamelContext(), route);
+            return new RouteDetailsEndpointInfo(camelContext, route);
         }
 
         return null;
     }
 
-    public String getRouteDump(String id) throws Exception {
-        RouteDefinition route = getCamelContext().getRouteDefinition(id);
-        if (route != null) {
-            return ModelHelper.dumpModelAsXml(getCamelContext(), route);
+    private void startRoute(String id) {
+        try {
+            camelContext.getRouteController().startRoute(id);
+        } catch (Exception e) {
+            throw new RuntimeCamelException(e);
         }
+    }
 
-        return null;
+    private void resetRoute(String id) {
+        try {
+            ManagedRouteMBean managedRouteMBean = camelContext.getManagedRoute(id, ManagedRouteMBean.class);
+            if (managedRouteMBean != null) {
+                managedRouteMBean.reset(true);
+            }
+        } catch (Exception e) {
+            throw new RuntimeCamelException(e);
+        }
+    }
+
+    private void stopRoute(String id, Optional<Long> timeout, Optional<TimeUnit> timeUnit, Optional<Boolean> abortAfterTimeout) {
+        try {
+            if (timeout.isPresent()) {
+                camelContext.getRouteController().stopRoute(id, timeout.get(), timeUnit.orElse(TimeUnit.SECONDS), abortAfterTimeout.orElse(Boolean.TRUE));
+            } else {
+                camelContext.getRouteController().stopRoute(id);
+            }
+        } catch (Exception e) {
+            throw new RuntimeCamelException(e);
+        }
     }
 
-    public void startRoute(String id) throws Exception {
-        getCamelContext().getRouteController().startRoute(id);
+    private void suspendRoute(String id, Optional<Long> timeout, Optional<TimeUnit> timeUnit) {
+        try {
+            if (timeout.isPresent()) {
+                camelContext.getRouteController().suspendRoute(id, timeout.get(), timeUnit.orElse(TimeUnit.SECONDS));
+            } else {
+                camelContext.getRouteController().suspendRoute(id);
+            }
+        } catch (Exception e) {
+            throw new RuntimeCamelException(e);
+        }
     }
 
-    public void resetRoute(String id) throws Exception {
-        ManagedRouteMBean managedRouteMBean = getCamelContext().getManagedRoute(id, ManagedRouteMBean.class);
-        if (managedRouteMBean != null) {
-            managedRouteMBean.reset(true);
-        } 
+    private void resumeRoute(String id) {
+        try {
+            camelContext.getRouteController().resumeRoute(id);
+        } catch (Exception e) {
+            throw new RuntimeCamelException(e);
+        }
     }
 
-    public void stopRoute(String id, Optional<Long> timeout, Optional<TimeUnit> timeUnit, Optional<Boolean> abortAfterTimeout) throws Exception {
-        if (timeout.isPresent()) {
-            getCamelContext().getRouteController().stopRoute(id, timeout.get(), timeUnit.orElse(TimeUnit.SECONDS), abortAfterTimeout.orElse(Boolean.TRUE));
-        } else {
-            getCamelContext().getRouteController().stopRoute(id);
+    /**
+     * Container for exposing {@link org.apache.camel.Route} information as JSON.
+     */
+    @JsonPropertyOrder({"id", "description", "uptime", "uptimeMillis"})
+    @JsonInclude(JsonInclude.Include.NON_EMPTY)
+    public static class RouteEndpointInfo {
+
+        private final String id;
+
+        private final String description;
+
+        private final String uptime;
+
+        private final long uptimeMillis;
+
+        private final String status;
+
+        public RouteEndpointInfo(Route route) {
+            this.id = route.getId();
+            this.description = route.getDescription();
+            this.uptime = route.getUptime();
+            this.uptimeMillis = route.getUptimeMillis();
+
+            if (route instanceof StatefulService) {
+                this.status = ((StatefulService) route).getStatus().name();
+            } else {
+                this.status = null;
+            }
+        }
+
+        public String getId() {
+            return id;
+        }
+
+        public String getDescription() {
+            return description;
+        }
+
+        public String getUptime() {
+            return uptime;
+        }
+
+        public long getUptimeMillis() {
+            return uptimeMillis;
+        }
+
+        public String getStatus() {
+            return status;
         }
     }
 
-    public void suspendRoute(String id, Optional<Long> timeout, Optional<TimeUnit> timeUnit) throws Exception {
-        if (timeout.isPresent()) {
-            getCamelContext().getRouteController().suspendRoute(id, timeout.get(), timeUnit.orElse(TimeUnit.SECONDS));
-        } else {
-            getCamelContext().getRouteController().suspendRoute(id);
+    /**
+     * Container for exposing {@link org.apache.camel.Route} information
+     * with route details as JSON. Route details are retrieved from JMX.
+     */
+    public static class RouteDetailsEndpointInfo extends RouteEndpointInfo {
+
+        @JsonProperty("details")
+        private RouteDetails routeDetails;
+
+        public RouteDetailsEndpointInfo(final CamelContext camelContext, final Route route) {
+            super(route);
+
+            if (camelContext.getManagementStrategy().getManagementAgent() != null) {
+                this.routeDetails = new RouteDetails(camelContext.getManagedRoute(route.getId(), ManagedRouteMBean.class));
+            }
+        }
+
+        @JsonInclude(JsonInclude.Include.NON_EMPTY)
+        static class RouteDetails {
+
+            private long deltaProcessingTime;
+
+            private long exchangesInflight;
+
+            private long exchangesTotal;
+
+            private long externalRedeliveries;
+
+            private long failuresHandled;
+
+            private String firstExchangeCompletedExchangeId;
+
+            private Date firstExchangeCompletedTimestamp;
+
+            private String firstExchangeFailureExchangeId;
+
+            private Date firstExchangeFailureTimestamp;
+
+            private String lastExchangeCompletedExchangeId;
+
+            private Date lastExchangeCompletedTimestamp;
+
+            private String lastExchangeFailureExchangeId;
+
+            private Date lastExchangeFailureTimestamp;
+
+            private long lastProcessingTime;
+
+            private String load01;
+
+            private String load05;
+
+            private String load15;
+
+            private long maxProcessingTime;
+
+            private long meanProcessingTime;
+
+            private long minProcessingTime;
+
+            private Long oldestInflightDuration;
+
+            private String oldestInflightExchangeId;
+
+            private long redeliveries;
+
+            private long totalProcessingTime;
+
+            private RouteError lastError;
+
+            private boolean hasRouteController;
+
+            RouteDetails(ManagedRouteMBean managedRoute) {
+                try {
+                    this.deltaProcessingTime = managedRoute.getDeltaProcessingTime();
+                    this.exchangesInflight = managedRoute.getExchangesInflight();
+                    this.exchangesTotal = managedRoute.getExchangesTotal();
+                    this.externalRedeliveries = managedRoute.getExternalRedeliveries();
+                    this.failuresHandled = managedRoute.getFailuresHandled();
+                    this.firstExchangeCompletedExchangeId = managedRoute.getFirstExchangeCompletedExchangeId();
+                    this.firstExchangeCompletedTimestamp = managedRoute.getFirstExchangeCompletedTimestamp();
+                    this.firstExchangeFailureExchangeId = managedRoute.getFirstExchangeFailureExchangeId();
+                    this.firstExchangeFailureTimestamp = managedRoute.getFirstExchangeFailureTimestamp();
+                    this.lastExchangeCompletedExchangeId = managedRoute.getLastExchangeCompletedExchangeId();
+                    this.lastExchangeCompletedTimestamp = managedRoute.getLastExchangeCompletedTimestamp();
+                    this.lastExchangeFailureExchangeId = managedRoute.getLastExchangeFailureExchangeId();
+                    this.lastExchangeFailureTimestamp = managedRoute.getLastExchangeFailureTimestamp();
+                    this.lastProcessingTime = managedRoute.getLastProcessingTime();
+                    this.load01 = managedRoute.getLoad01();
+                    this.load05 = managedRoute.getLoad05();
+                    this.load15 = managedRoute.getLoad15();
+                    this.maxProcessingTime = managedRoute.getMaxProcessingTime();
+                    this.meanProcessingTime = managedRoute.getMeanProcessingTime();
+                    this.minProcessingTime = managedRoute.getMinProcessingTime();
+                    this.oldestInflightDuration = managedRoute.getOldestInflightDuration();
+                    this.oldestInflightExchangeId = managedRoute.getOldestInflightExchangeId();
+                    this.redeliveries = managedRoute.getRedeliveries();
+                    this.totalProcessingTime = managedRoute.getTotalProcessingTime();
+                    this.lastError = managedRoute.getLastError();
+                    this.hasRouteController = managedRoute.getHasRouteController();
+                } catch (Exception e) {
+                    // Ignore
+                }
+            }
+
+            public long getDeltaProcessingTime() {
+                return deltaProcessingTime;
+            }
+
+            public long getExchangesInflight() {
+                return exchangesInflight;
+            }
+
+            public long getExchangesTotal() {
+                return exchangesTotal;
+            }
+
+            public long getExternalRedeliveries() {
+                return externalRedeliveries;
+            }
+
+            public long getFailuresHandled() {
+                return failuresHandled;
+            }
+
+            public String getFirstExchangeCompletedExchangeId() {
+                return firstExchangeCompletedExchangeId;
+            }
+
+            public Date getFirstExchangeCompletedTimestamp() {
+                return firstExchangeCompletedTimestamp;
+            }
+
+            public String getFirstExchangeFailureExchangeId() {
+                return firstExchangeFailureExchangeId;
+            }
+
+            public Date getFirstExchangeFailureTimestamp() {
+                return firstExchangeFailureTimestamp;
+            }
+
+            public String getLastExchangeCompletedExchangeId() {
+                return lastExchangeCompletedExchangeId;
+            }
+
+            public Date getLastExchangeCompletedTimestamp() {
+                return lastExchangeCompletedTimestamp;
+            }
+
+            public String getLastExchangeFailureExchangeId() {
+                return lastExchangeFailureExchangeId;
+            }
+
+            public Date getLastExchangeFailureTimestamp() {
+                return lastExchangeFailureTimestamp;
+            }
+
+            public long getLastProcessingTime() {
+                return lastProcessingTime;
+            }
+
+            public String getLoad01() {
+                return load01;
+            }
+
+            public String getLoad05() {
+                return load05;
+            }
+
+            public String getLoad15() {
+                return load15;
+            }
+
+            public long getMaxProcessingTime() {
+                return maxProcessingTime;
+            }
+
+            public long getMeanProcessingTime() {
+                return meanProcessingTime;
+            }
+
+            public long getMinProcessingTime() {
+                return minProcessingTime;
+            }
+
+            public Long getOldestInflightDuration() {
+                return oldestInflightDuration;
+            }
+
+            public String getOldestInflightExchangeId() {
+                return oldestInflightExchangeId;
+            }
+
+            public long getRedeliveries() {
+                return redeliveries;
+            }
+
+            public long getTotalProcessingTime() {
+                return totalProcessingTime;
+            }
+
+            public RouteError getLastError() {
+                return lastError;
+            }
+
+            public boolean getHasRouteController() {
+                return hasRouteController;
+            }
         }
     }
 
-    public void resumeRoute(String id) throws Exception {
-        getCamelContext().getRouteController().resumeRoute(id);
+    /**
+     * List of write actions available for the endpoint
+     */
+    public enum WriteAction {
+        STOP,
+        START,
+        RESET,
+        SUSPEND,
+        RESUME
     }
+
+    /*
+     * List of read actions available for the endpoint
+     */
+    public enum ReadAction {
+        DETAIL,
+        INFO
+    }
+
+    /**
+     * Optional time information for the actions
+     */
+    public static class TimeInfo {
+        private Long timeout;
+        private Boolean abortAfterTimeout;
+
+        public Long getTimeout() {
+            return timeout;
+        }
+
+        public void setTimeout(Long timeout) {
+            this.timeout = timeout;
+        }
+
+        public Boolean getAbortAfterTimeout() {
+            return abortAfterTimeout;
+        }
+
+        public void setAbortAfterTimeout(Boolean abortAfterTimeout) {
+            this.abortAfterTimeout = abortAfterTimeout;
+        }
+    }
+
 }
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointAutoConfiguration.java
index 85070dd..26199cf 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointAutoConfiguration.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointAutoConfiguration.java
@@ -18,14 +18,11 @@ package org.apache.camel.spring.boot.actuate.endpoint;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.util.GroupCondition;
 import org.springframework.boot.autoconfigure.AutoConfigureAfter;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
 import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Conditional;
 import org.springframework.context.annotation.Configuration;
 
 /**
@@ -35,7 +32,6 @@ import org.springframework.context.annotation.Configuration;
 @ConditionalOnClass({CamelRoutesEndpoint.class})
 @ConditionalOnBean(CamelAutoConfiguration.class)
 @AutoConfigureAfter(CamelAutoConfiguration.class)
-@Conditional(CamelRoutesEndpointAutoConfiguration.Condition.class)
 public class CamelRoutesEndpointAutoConfiguration {
     @Bean
     @ConditionalOnClass(CamelContext.class)
@@ -44,24 +40,4 @@ public class CamelRoutesEndpointAutoConfiguration {
         return new CamelRoutesEndpoint(camelContext);
     }
 
-    @Bean
-    @ConditionalOnClass(CamelContext.class)
-    @ConditionalOnMissingBean
-    @ConditionalOnWebApplication
-    public CamelRoutesMvcEndpoint camelMvcEndpoint(CamelRoutesEndpoint delegate) {
-        return new CamelRoutesMvcEndpoint(delegate);
-    }
-
-    // ***************************************
-    // Condition
-    // ***************************************
-
-    public static class Condition extends GroupCondition {
-        public Condition() {
-            super(
-                    "endpoints",
-                    "endpoints." + CamelRoutesEndpoint.ENDPOINT_ID
-            );
-        }
-    }
 }
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesMvcEndpoint.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesMvcEndpoint.java
deleted file mode 100644
index 722cd75..0000000
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesMvcEndpoint.java
+++ /dev/null
@@ -1,243 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import java.util.Optional;
-import java.util.concurrent.TimeUnit;
-
-import org.springframework.boot.actuate.endpoint.mvc.ActuatorMediaTypes;
-import org.springframework.boot.actuate.endpoint.mvc.MvcEndpoint;
-import org.springframework.boot.context.properties.ConfigurationProperties;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestAttribute;
-import org.springframework.web.bind.annotation.ResponseBody;
-import org.springframework.web.bind.annotation.ResponseStatus;
-
-/**
- * Adapter to expose {@link CamelRoutesEndpoint} as an {@link MvcEndpoint}.
- */
-@ConfigurationProperties(prefix = "endpoints." + CamelRoutesEndpoint.ENDPOINT_ID)
-public class CamelRoutesMvcEndpoint extends AbstractCamelMvcEndpoint<CamelRoutesEndpoint> {
-
-    public CamelRoutesMvcEndpoint(CamelRoutesEndpoint delegate) {
-        super("/camel/routes", delegate);
-    }
-
-    // ********************************************
-    // Endpoints
-    // ********************************************
-
-    @ResponseBody
-    @GetMapping(
-        value = "/{id}/dump",
-        produces = {
-            MediaType.APPLICATION_XML_VALUE,
-            MediaType.APPLICATION_XML_VALUE
-        }
-    )
-    public Object dump(
-        @PathVariable String id) {
-
-        return doIfEnabledAndNotReadOnly(() -> {
-            try {
-                Object result = delegate().getRouteDump(id);
-                if (result == null) {
-                    throw new NoSuchRouteException("No such route " + id);
-                }
-
-                return result;
-            } catch (Exception e) {
-                throw new GenericException("Error dumping route " + id, e);
-            }
-        });
-    }
-
-    @ResponseBody
-    @GetMapping(
-            value = "/{id}/detail",
-            produces = {
-                    ActuatorMediaTypes.APPLICATION_ACTUATOR_V1_JSON_VALUE,
-                    MediaType.APPLICATION_JSON_VALUE
-            }
-    )
-    public Object detail(
-            @PathVariable String id) {
-
-        return doIfEnabled(() -> {
-            Object result = delegate().getRouteDetailsInfo(id);
-            if (result == null) {
-                throw new NoSuchRouteException("No such route " + id);
-            }
-
-            return result;
-        });
-    }
-
-    @ResponseBody
-    @GetMapping(
-            value = "/{id}/info",
-            produces = {
-                    ActuatorMediaTypes.APPLICATION_ACTUATOR_V1_JSON_VALUE,
-                    MediaType.APPLICATION_JSON_VALUE
-            }
-    )
-    public Object info(
-            @PathVariable String id) {
-
-        return doIfEnabled(() -> {
-            Object result = delegate().getRouteInfo(id);
-            if (result == null) {
-                throw new NoSuchRouteException("No such route " + id);
-            }
-
-            return result;
-        });
-    }
-
-    @ResponseBody
-    @PostMapping(
-            value = "/{id}/stop",
-            produces = {
-                    ActuatorMediaTypes.APPLICATION_ACTUATOR_V1_JSON_VALUE,
-                    MediaType.APPLICATION_JSON_VALUE
-            }
-    )
-    public Object stop(
-            @PathVariable String id,
-            @RequestAttribute(required = false) Long timeout,
-            @RequestAttribute(required = false) Boolean abortAfterTimeout) {
-
-        return doIfEnabledAndNotReadOnly(() -> {
-            try {
-                delegate().stopRoute(
-                    id,
-                    Optional.ofNullable(timeout),
-                    Optional.of(TimeUnit.SECONDS),
-                    Optional.ofNullable(abortAfterTimeout)
-                );
-            } catch (Exception e) {
-                throw new GenericException("Error stopping route " + id, e);
-            }
-
-            return ResponseEntity.ok().build();
-        });
-    }
-
-    @ResponseBody
-    @PostMapping(
-            value = "/{id}/start",
-            produces = {
-                    ActuatorMediaTypes.APPLICATION_ACTUATOR_V1_JSON_VALUE,
-                    MediaType.APPLICATION_JSON_VALUE
-            }
-    )
-    public Object start(
-            @PathVariable String id) {
-
-        return doIfEnabledAndNotReadOnly(() -> {
-            try {
-                delegate().startRoute(id);
-            } catch (Exception e) {
-                throw new GenericException("Error starting route " + id, e);
-            }
-
-            return ResponseEntity.ok().build();
-        });
-    }
-
-    @ResponseBody
-    @PostMapping(value = "/{id}/reset", produces = {ActuatorMediaTypes.APPLICATION_ACTUATOR_V1_JSON_VALUE, MediaType.APPLICATION_JSON_VALUE})
-    public Object reset(@PathVariable String id) {
-
-        return doIfEnabledAndNotReadOnly(() -> {
-            try {
-                delegate().resetRoute(id);
-            } catch (Exception e) {
-                throw new GenericException("Error resetting route stats " + id, e);
-            }
-
-            return ResponseEntity.ok().build();
-        });
-    }
-
-
-    @ResponseBody
-    @PostMapping(
-            value = "/{id}/suspend",
-            produces = {
-                    ActuatorMediaTypes.APPLICATION_ACTUATOR_V1_JSON_VALUE,
-                    MediaType.APPLICATION_JSON_VALUE
-            }
-    )
-    public Object suspend(
-            @PathVariable String id,
-            @RequestAttribute(required = false) Long timeout) {
-
-        return doIfEnabledAndNotReadOnly(() -> {
-            try {
-                delegate().suspendRoute(
-                    id,
-                    Optional.ofNullable(timeout),
-                    Optional.of(TimeUnit.SECONDS)
-                );
-            } catch (Exception e) {
-                throw new GenericException("Error suspending route " + id, e);
-            }
-
-            return ResponseEntity.ok().build();
-        });
-    }
-
-    @ResponseBody
-    @PostMapping(
-            value = "/{id}/resume",
-            produces = {
-                    ActuatorMediaTypes.APPLICATION_ACTUATOR_V1_JSON_VALUE,
-                    MediaType.APPLICATION_JSON_VALUE
-            }
-    )
-    public Object resume(
-            @PathVariable String id) {
-
-        return doIfEnabledAndNotReadOnly(() -> {
-            try {
-                delegate().resumeRoute(id);
-            } catch (Exception e) {
-                throw new GenericException("Error resuming route " + id, e);
-            }
-
-            return ResponseEntity.ok().build();
-        });
-    }
-
-    // ********************************************
-    // Helpers
-    // ********************************************
-
-    @SuppressWarnings("serial")
-    @ResponseStatus(value = HttpStatus.NOT_FOUND, reason = "No such route")
-    public static class NoSuchRouteException extends RuntimeException {
-        public NoSuchRouteException(String message) {
-            super(message);
-        }
-    }
-}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthAutoConfiguration.java
index b5bd7ae..3b59f26 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthAutoConfiguration.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthAutoConfiguration.java
@@ -18,47 +18,29 @@ package org.apache.camel.spring.boot.actuate.health;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.health.HealthConstants;
-import org.apache.camel.spring.boot.util.GroupCondition;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.actuate.health.HealthIndicator;
 import org.springframework.boot.autoconfigure.AutoConfigureAfter;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
-import org.springframework.boot.context.properties.EnableConfigurationProperties;
 import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Conditional;
 import org.springframework.context.annotation.Configuration;
 
 @Configuration
-@ConditionalOnClass(HealthIndicator.class)
-@Conditional(CamelHealthAutoConfiguration.Condition.class)
+@ConditionalOnClass({HealthIndicator.class})
 @ConditionalOnBean(CamelAutoConfiguration.class)
 @AutoConfigureAfter(CamelAutoConfiguration.class)
-@EnableConfigurationProperties(CamelHealthConfiguration.class)
 public class CamelHealthAutoConfiguration {
-    @Autowired
-    private CamelHealthConfiguration configuration;
 
-    @Bean
-    @ConditionalOnBean(CamelContext.class)
+    @ConditionalOnClass({CamelContext.class})
     @ConditionalOnMissingBean(CamelHealthIndicator.class)
-    public HealthIndicator camelHealthIndicator(CamelContext camelContext) {
-        return new CamelHealthIndicator(camelContext);
-    }
-
-    // ***************************************
-    // Condition
-    // ***************************************
+    protected static class CamelHealthIndicatorInitializer {
 
-    public static class Condition extends GroupCondition {
-        public Condition() {
-            super(
-                HealthConstants.HEALTH_PREFIX,
-                HealthConstants.HEALTH_INDICATOR_PREFIX
-            );
+        @Bean
+        public HealthIndicator camelHealthIndicator(CamelContext camelContext) {
+            return new CamelHealthIndicator(camelContext);
         }
+
     }
 
 }
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthCheckIndicator.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthCheckIndicator.java
deleted file mode 100644
index 0472187..0000000
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthCheckIndicator.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.health;
-
-import java.util.Collection;
-import java.util.List;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.health.HealthCheck;
-import org.apache.camel.health.HealthCheckFilter;
-import org.apache.camel.health.HealthCheckHelper;
-import org.springframework.boot.actuate.health.AbstractHealthIndicator;
-import org.springframework.boot.actuate.health.Health;
-import org.springframework.boot.actuate.health.HealthIndicator;
-
-/**
- * Camel {@link org.apache.camel.health.HealthCheck} {@link HealthIndicator}.
- */
-public class CamelHealthCheckIndicator extends AbstractHealthIndicator {
-    private final CamelContext camelContext;
-    private final List<HealthCheckFilter> filters;
-
-    public CamelHealthCheckIndicator(CamelContext camelContext, List<HealthCheckFilter> filters) {
-        this.camelContext = camelContext;
-        this.filters = filters;
-    }
-
-    @Override
-    protected void doHealthCheck(Health.Builder builder) throws Exception {
-        // By default the status is unknown.
-        builder.unknown();
-
-        if (camelContext != null) {
-            Collection<HealthCheck.Result> results = HealthCheckHelper.invoke(
-                camelContext,
-                (HealthCheck check) -> filters.stream().anyMatch(p -> p.test(check))
-            );
-
-            if (!results.isEmpty()) {
-                // assuming the status is up unless a specific check is failing
-                // which is determined later.
-                builder.up();
-            }
-
-            for (HealthCheck.Result result: results) {
-                builder.withDetail(result.getCheck().getId(), result.getState().name());
-
-                if (result.getState() == HealthCheck.State.DOWN) {
-                    builder.down();
-                }
-            }
-        }
-    }
-}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthCheckIndicatorAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthCheckIndicatorAutoConfiguration.java
deleted file mode 100644
index e793a02..0000000
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthCheckIndicatorAutoConfiguration.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.health;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.regex.Pattern;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.health.HealthCheckFilter;
-import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.health.HealthConstants;
-import org.apache.camel.spring.boot.util.GroupCondition;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.actuate.health.HealthIndicator;
-import org.springframework.boot.autoconfigure.AutoConfigureAfter;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
-import org.springframework.boot.context.properties.EnableConfigurationProperties;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Conditional;
-import org.springframework.context.annotation.Configuration;
-
-@Configuration
-@ConditionalOnClass({CamelContext.class, HealthIndicator.class})
-@Conditional(CamelHealthCheckIndicatorAutoConfiguration.Condition.class)
-@ConditionalOnBean({CamelAutoConfiguration.class, CamelContext.class})
-@AutoConfigureAfter(CamelAutoConfiguration.class)
-@EnableConfigurationProperties(CamelHealthCheckIndicatorConfiguration.class)
-public class CamelHealthCheckIndicatorAutoConfiguration {
-    @Autowired
-    private CamelContext camelContext;
-    @Autowired
-    private CamelHealthCheckIndicatorConfiguration configuration;
-    @Autowired(required = false)
-    private List<HealthCheckFilter> filterList = Collections.emptyList();
-
-    @Bean(name = "camel-health-checks")
-    @ConditionalOnMissingBean(CamelHealthCheckIndicator.class)
-    public HealthIndicator camelHealthChecksIndicator() {
-        // Collect filters from the environment first so user defined filter
-        // take precedence over platform ones.
-        final List<HealthCheckFilter> filters = new ArrayList<>(this.filterList);
-
-        // ids
-        for (String exclusion: configuration.getExclusion().getIds()) {
-            // "cache" the pattern
-            final Pattern pattern = Pattern.compile(exclusion);
-
-            filters.add(check -> exclusion.equals(check.getId()) || pattern.matcher(check.getId()).matches());
-        }
-
-        // groups
-        for (String exclusion: configuration.getExclusion().getGroups()) {
-            // "cache" the pattern
-            final Pattern pattern = Pattern.compile(exclusion);
-
-            filters.add(check -> exclusion.equals(check.getGroup()) || pattern.matcher(check.getGroup()).matches());
-        }
-
-        return new CamelHealthCheckIndicator(camelContext, filters);
-    }
-
-    // ***************************************
-    // Condition
-    // ***************************************
-
-    public static class Condition extends GroupCondition {
-        public Condition() {
-            super(
-                HealthConstants.HEALTH_PREFIX,
-                HealthConstants.HEALTH_CHECK_INDICATOR_PREFIX
-            );
-        }
-    }
-}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthCheckIndicatorConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthCheckIndicatorConfiguration.java
deleted file mode 100644
index c415a92..0000000
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthCheckIndicatorConfiguration.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.health;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.camel.spring.boot.health.HealthConstants;
-import org.springframework.boot.context.properties.ConfigurationProperties;
-
-@ConfigurationProperties(prefix = HealthConstants.HEALTH_CHECK_INDICATOR_PREFIX)
-public class CamelHealthCheckIndicatorConfiguration {
-    /**
-     * Global option to enable/disable this {@link org.springframework.boot.actuate.health.HealthIndicator}, default is true.
-     */
-    private boolean enabled = true;
-
-    /**
-     * Health check exclusion configuration.
-     */
-    private Exclusion exclusion = new Exclusion();
-
-    public boolean isEnabled() {
-        return enabled;
-    }
-
-    public void setEnabled(boolean enabled) {
-        this.enabled = enabled;
-    }
-
-    public Exclusion getExclusion() {
-        return exclusion;
-    }
-
-    // *****************************************
-    //
-    // *****************************************
-
-    public class Exclusion {
-        /**
-         * A list of health check ids to exclude, either the id or a regexp.
-         */
-        private List<String> ids = new ArrayList<>();
-
-        /**
-         * A list of health check groups to exclude, either the group or a regexp.
-         */
-        private List<String> groups = new ArrayList<>();
-
-        public List<String> getIds() {
-            return ids;
-        }
-
-        public List<String> getGroups() {
-            return groups;
-        }
-    }
-}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthConfiguration.java
deleted file mode 100644
index 1ef793c..0000000
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthConfiguration.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.health;
-
-import org.apache.camel.spring.boot.health.HealthConstants;
-import org.springframework.boot.context.properties.ConfigurationProperties;
-
-@ConfigurationProperties(prefix = HealthConstants.HEALTH_INDICATOR_PREFIX)
-public class CamelHealthConfiguration {
-    /**
-     * Global option to enable/disable this {@link org.springframework.boot.actuate.health.HealthIndicator}, default is true.
-     */
-    private boolean enabled = true;
-
-    public boolean isEnabled() {
-        return enabled;
-    }
-
-    public void setEnabled(boolean enabled) {
-        this.enabled = enabled;
-    }
-}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthIndicator.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthIndicator.java
index d3af90f..1968068 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthIndicator.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/health/CamelHealthIndicator.java
@@ -25,7 +25,8 @@ import org.springframework.boot.actuate.health.HealthIndicator;
  * Camel {@link HealthIndicator}.
  */
 public class CamelHealthIndicator extends AbstractHealthIndicator {
-    private final CamelContext camelContext;
+
+    private CamelContext camelContext;
 
     public CamelHealthIndicator(CamelContext camelContext) {
         this.camelContext = camelContext;
@@ -39,7 +40,6 @@ public class CamelHealthIndicator extends AbstractHealthIndicator {
             builder.withDetail("name", camelContext.getName());
             builder.withDetail("version", camelContext.getVersion());
             builder.withDetail("contextStatus", camelContext.getStatus().name());
-
             if (camelContext.getStatus().isStarted()) {
                 builder.up();
             } else if (camelContext.getStatus().isStopped()) {
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/security/CamelSSLAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/security/CamelSSLAutoConfiguration.java
index d69e1a8..d8d54ad 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/security/CamelSSLAutoConfiguration.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/security/CamelSSLAutoConfiguration.java
@@ -19,13 +19,13 @@ package org.apache.camel.spring.boot.security;
 import java.util.Map;
 
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
+import org.apache.camel.spring.boot.util.RelaxedPropertyResolver;
 import org.apache.camel.util.jsse.GlobalSSLContextParametersSupplier;
 import org.apache.camel.util.jsse.SSLContextParameters;
 import org.springframework.boot.autoconfigure.AutoConfigureBefore;
 import org.springframework.boot.autoconfigure.condition.ConditionMessage;
 import org.springframework.boot.autoconfigure.condition.ConditionOutcome;
 import org.springframework.boot.autoconfigure.condition.SpringBootCondition;
-import org.springframework.boot.bind.RelaxedPropertyResolver;
 import org.springframework.boot.context.properties.EnableConfigurationProperties;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.ConditionContext;
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/HierarchicalPropertiesEvaluator.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/HierarchicalPropertiesEvaluator.java
index fa66a11..a898d55 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/HierarchicalPropertiesEvaluator.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/HierarchicalPropertiesEvaluator.java
@@ -16,10 +16,10 @@
  */
 package org.apache.camel.spring.boot.util;
 
-import org.springframework.boot.bind.RelaxedPropertyResolver;
 import org.springframework.core.env.Environment;
 
 public final class HierarchicalPropertiesEvaluator {
+
     private HierarchicalPropertiesEvaluator() {
     }
 
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/PropertySourceUtils.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/PropertySourceUtils.java
new file mode 100644
index 0000000..073c7f9
--- /dev/null
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/PropertySourceUtils.java
@@ -0,0 +1,93 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.spring.boot.util;
+
+import java.util.Collections;
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+import org.springframework.core.env.EnumerablePropertySource;
+import org.springframework.core.env.PropertySource;
+import org.springframework.core.env.PropertySources;
+
+/**
+ * Convenience class for manipulating PropertySources.
+ *
+ * @author Dave Syer
+ * @see PropertySource
+ * @see PropertySources
+ *
+ * Source code copied from spring-boot 1.5.6.RELEASE
+ */
+public abstract class PropertySourceUtils {
+
+    /**
+     * Return a Map of all values from the specified {@link PropertySources} that start
+     * with a particular key.
+     * @param propertySources the property sources to scan
+     * @param keyPrefix the key prefixes to test
+     * @return a map of all sub properties starting with the specified key prefixes.
+     * @see PropertySourceUtils#getSubProperties(PropertySources, String, String)
+     */
+    public static Map<String, Object> getSubProperties(PropertySources propertySources,
+                                                       String keyPrefix) {
+        return PropertySourceUtils.getSubProperties(propertySources, null, keyPrefix);
+    }
+
+    /**
+     * Return a Map of all values from the specified {@link PropertySources} that start
+     * with a particular key.
+     * @param propertySources the property sources to scan
+     * @param rootPrefix a root prefix to be prepended to the keyPrefix (can be
+     * {@code null})
+     * @param keyPrefix the key prefixes to test
+     * @return a map of all sub properties starting with the specified key prefixes.
+     * @see #getSubProperties(PropertySources, String, String)
+     */
+    public static Map<String, Object> getSubProperties(PropertySources propertySources,
+                                                       String rootPrefix, String keyPrefix) {
+        RelaxedNames keyPrefixes = new RelaxedNames(keyPrefix);
+        Map<String, Object> subProperties = new LinkedHashMap<String, Object>();
+        for (PropertySource<?> source : propertySources) {
+            if (source instanceof EnumerablePropertySource) {
+                for (String name : ((EnumerablePropertySource<?>) source)
+                    .getPropertyNames()) {
+                    String key = PropertySourceUtils.getSubKey(name, rootPrefix,
+                        keyPrefixes);
+                    if (key != null && !subProperties.containsKey(key)) {
+                        subProperties.put(key, source.getProperty(name));
+                    }
+                }
+            }
+        }
+        return Collections.unmodifiableMap(subProperties);
+    }
+
+    private static String getSubKey(String name, String rootPrefixes,
+                                    RelaxedNames keyPrefix) {
+        rootPrefixes = rootPrefixes == null ? "" : rootPrefixes;
+        for (String rootPrefix : new RelaxedNames(rootPrefixes)) {
+            for (String candidateKeyPrefix : keyPrefix) {
+                if (name.startsWith(rootPrefix + candidateKeyPrefix)) {
+                    return name.substring((rootPrefix + candidateKeyPrefix).length());
+                }
+            }
+        }
+        return null;
+    }
+
+}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/RelaxedNames.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/RelaxedNames.java
new file mode 100644
index 0000000..54fbfcd
--- /dev/null
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/RelaxedNames.java
@@ -0,0 +1,260 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.spring.boot.util;
+
+import java.util.Iterator;
+import java.util.LinkedHashSet;
+import java.util.Set;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+import org.springframework.util.StringUtils;
+
+/**
+ * Generates relaxed name variations from a given source.
+ *
+ * @author Phillip Webb
+ * @author Dave Syer
+ * @see RelaxedPropertyResolver
+ *
+ * Source code copied from spring-boot 1.5.6.RELEASE
+ */
+public final class RelaxedNames implements Iterable<String> {
+
+    private static final Pattern CAMEL_CASE_PATTERN = Pattern.compile("([^A-Z-])([A-Z])");
+
+    private static final Pattern SEPARATED_TO_CAMEL_CASE_PATTERN = Pattern
+        .compile("[_\\-.]");
+
+    private final String name;
+
+    private final Set<String> values = new LinkedHashSet<String>();
+
+    /**
+     * Create a new {@link RelaxedNames} instance.
+     * @param name the source name. For the maximum number of variations specify the name
+     * using dashed notation (e.g. {@literal my-property-name}
+     */
+    public RelaxedNames(String name) {
+        this.name = name == null ? "" : name;
+        initialize(RelaxedNames.this.name, this.values);
+    }
+
+    @Override
+    public Iterator<String> iterator() {
+        return this.values.iterator();
+    }
+
+    private void initialize(String name, Set<String> values) {
+        if (values.contains(name)) {
+            return;
+        }
+        for (Variation variation : Variation.values()) {
+            for (Manipulation manipulation : Manipulation.values()) {
+                String result = name;
+                result = manipulation.apply(result);
+                result = variation.apply(result);
+                values.add(result);
+                initialize(result, values);
+            }
+        }
+    }
+
+    /**
+     * Name variations.
+     */
+    enum Variation {
+
+        NONE {
+
+            @Override
+            public String apply(String value) {
+                return value;
+            }
+
+        },
+
+        LOWERCASE {
+
+            @Override
+            public String apply(String value) {
+                return value.isEmpty() ? value : value.toLowerCase();
+            }
+
+        },
+
+        UPPERCASE {
+
+            @Override
+            public String apply(String value) {
+                return value.isEmpty() ? value : value.toUpperCase();
+            }
+
+        };
+
+        public abstract String apply(String value);
+
+    }
+
+    /**
+     * Name manipulations.
+     */
+    enum Manipulation {
+
+        NONE {
+
+            @Override
+            public String apply(String value) {
+                return value;
+            }
+
+        },
+
+        HYPHEN_TO_UNDERSCORE {
+
+            @Override
+            public String apply(String value) {
+                return value.indexOf('-') != -1 ? value.replace('-', '_') : value;
+            }
+
+        },
+
+        UNDERSCORE_TO_PERIOD {
+
+            @Override
+            public String apply(String value) {
+                return value.indexOf('_') != -1 ? value.replace('_', '.') : value;
+            }
+
+        },
+
+        PERIOD_TO_UNDERSCORE {
+
+            @Override
+            public String apply(String value) {
+                return value.indexOf('.') != -1 ? value.replace('.', '_') : value;
+            }
+
+        },
+
+        CAMELCASE_TO_UNDERSCORE {
+
+            @Override
+            public String apply(String value) {
+                if (value.isEmpty()) {
+                    return value;
+                }
+                Matcher matcher = CAMEL_CASE_PATTERN.matcher(value);
+                if (!matcher.find()) {
+                    return value;
+                }
+                matcher = matcher.reset();
+                StringBuffer result = new StringBuffer();
+                while (matcher.find()) {
+                    matcher.appendReplacement(result, matcher.group(1) + '_'
+                        + StringUtils.uncapitalize(matcher.group(2)));
+                }
+                matcher.appendTail(result);
+                return result.toString();
+            }
+
+        },
+
+        CAMELCASE_TO_HYPHEN {
+
+            @Override
+            public String apply(String value) {
+                if (value.isEmpty()) {
+                    return value;
+                }
+                Matcher matcher = CAMEL_CASE_PATTERN.matcher(value);
+                if (!matcher.find()) {
+                    return value;
+                }
+                matcher = matcher.reset();
+                StringBuffer result = new StringBuffer();
+                while (matcher.find()) {
+                    matcher.appendReplacement(result, matcher.group(1) + '-'
+                        + StringUtils.uncapitalize(matcher.group(2)));
+                }
+                matcher.appendTail(result);
+                return result.toString();
+            }
+
+        },
+
+        SEPARATED_TO_CAMELCASE {
+
+            @Override
+            public String apply(String value) {
+                return separatedToCamelCase(value, false);
+            }
+
+        },
+
+        CASE_INSENSITIVE_SEPARATED_TO_CAMELCASE {
+
+            @Override
+            public String apply(String value) {
+                return separatedToCamelCase(value, true);
+            }
+
+        };
+
+        private static final char[] SUFFIXES = new char[]{'_', '-', '.'};
+
+        public abstract String apply(String value);
+
+        private static String separatedToCamelCase(String value,
+                                                   boolean caseInsensitive) {
+            if (value.isEmpty()) {
+                return value;
+            }
+            StringBuilder builder = new StringBuilder();
+            for (String field : SEPARATED_TO_CAMEL_CASE_PATTERN.split(value)) {
+                field = caseInsensitive ? field.toLowerCase() : field;
+                builder.append(
+                    builder.length() == 0 ? field : StringUtils.capitalize(field));
+            }
+            char lastChar = value.charAt(value.length() - 1);
+            for (char suffix : SUFFIXES) {
+                if (lastChar == suffix) {
+                    builder.append(suffix);
+                    break;
+                }
+            }
+            return builder.toString();
+        }
+
+    }
+
+    /**
+     * Return a {@link RelaxedNames} for the given source camelCase source name.
+     * @param name the source name in camelCase
+     * @return the relaxed names
+     */
+    public static RelaxedNames forCamelCase(String name) {
+        StringBuilder result = new StringBuilder();
+        for (char c : name.toCharArray()) {
+            result.append(Character.isUpperCase(c) && result.length() > 0
+                && result.charAt(result.length() - 1) != '-'
+                ? "-" + Character.toLowerCase(c) : c);
+        }
+        return new RelaxedNames(result.toString());
+    }
+
+}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/RelaxedPropertyResolver.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/RelaxedPropertyResolver.java
new file mode 100644
index 0000000..bc26618
--- /dev/null
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/RelaxedPropertyResolver.java
@@ -0,0 +1,162 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.spring.boot.util;
+
+import java.util.Map;
+
+import org.springframework.core.env.ConfigurableEnvironment;
+import org.springframework.core.env.Environment;
+import org.springframework.core.env.PropertyResolver;
+import org.springframework.core.env.PropertySourcesPropertyResolver;
+import org.springframework.util.Assert;
+
+/**
+ * {@link PropertyResolver} that attempts to resolve values using {@link RelaxedNames}.
+ *
+ * @author Phillip Webb
+ * @see RelaxedNames
+ *
+ * Source code copied from spring-boot 1.5.6.RELEASE
+ */
+public class RelaxedPropertyResolver implements PropertyResolver {
+
+    private final PropertyResolver resolver;
+
+    private final String prefix;
+
+    public RelaxedPropertyResolver(PropertyResolver resolver) {
+        this(resolver, null);
+    }
+
+    public RelaxedPropertyResolver(PropertyResolver resolver, String prefix) {
+        Assert.notNull(resolver, "PropertyResolver must not be null");
+        this.resolver = resolver;
+        this.prefix = prefix == null ? "" : prefix;
+    }
+
+    @Override
+    public String getRequiredProperty(String key) throws IllegalStateException {
+        return getRequiredProperty(key, String.class);
+    }
+
+    @Override
+    public <T> T getRequiredProperty(String key, Class<T> targetType)
+        throws IllegalStateException {
+        T value = getProperty(key, targetType);
+        Assert.state(value != null, String.format("required key [%s] not found", key));
+        return value;
+    }
+
+    @Override
+    public String getProperty(String key) {
+        return getProperty(key, String.class, null);
+    }
+
+    @Override
+    public String getProperty(String key, String defaultValue) {
+        return getProperty(key, String.class, defaultValue);
+    }
+
+    @Override
+    public <T> T getProperty(String key, Class<T> targetType) {
+        return getProperty(key, targetType, null);
+    }
+
+    @Override
+    public <T> T getProperty(String key, Class<T> targetType, T defaultValue) {
+        RelaxedNames prefixes = new RelaxedNames(this.prefix);
+        RelaxedNames keys = new RelaxedNames(key);
+        for (String prefix : prefixes) {
+            for (String relaxedKey : keys) {
+                if (this.resolver.containsProperty(prefix + relaxedKey)) {
+                    return this.resolver.getProperty(prefix + relaxedKey, targetType);
+                }
+            }
+        }
+        return defaultValue;
+    }
+
+    // not implemented in spring boot 2 and not in use by us
+    public <T> Class<T> getPropertyAsClass(String key, Class<T> targetType) {
+        return null;
+    }
+
+    @Override
+    public boolean containsProperty(String key) {
+        RelaxedNames prefixes = new RelaxedNames(this.prefix);
+        RelaxedNames keys = new RelaxedNames(key);
+        for (String prefix : prefixes) {
+            for (String relaxedKey : keys) {
+                if (this.resolver.containsProperty(prefix + relaxedKey)) {
+                    return true;
+                }
+            }
+        }
+        return false;
+    }
+
+    @Override
+    public String resolvePlaceholders(String text) {
+        throw new UnsupportedOperationException(
+            "Unable to resolve placeholders with relaxed properties");
+    }
+
+    @Override
+    public String resolveRequiredPlaceholders(String text)
+        throws IllegalArgumentException {
+        throw new UnsupportedOperationException(
+            "Unable to resolve placeholders with relaxed properties");
+    }
+
+    /**
+     * Return a Map of all values from all underlying properties that start with the
+     * specified key. NOTE: this method can only be used if the underlying resolver is a
+     * {@link ConfigurableEnvironment}.
+     * @param keyPrefix the key prefix used to filter results
+     * @return a map of all sub properties starting with the specified key prefix.
+     * @see PropertySourceUtils#getSubProperties
+     */
+    public Map<String, Object> getSubProperties(String keyPrefix) {
+        Assert.isInstanceOf(ConfigurableEnvironment.class, this.resolver,
+            "SubProperties not available.");
+        ConfigurableEnvironment env = (ConfigurableEnvironment) this.resolver;
+        return PropertySourceUtils.getSubProperties(env.getPropertySources(), this.prefix,
+            keyPrefix);
+    }
+
+    /**
+     * Return a property resolver for the environment, preferring one that ignores
+     * unresolvable nested placeholders.
+     * @param environment the source environment
+     * @param prefix the prefix
+     * @return a property resolver for the environment
+     * @since 1.4.3
+     */
+    public static RelaxedPropertyResolver ignoringUnresolvableNestedPlaceholders(
+        Environment environment, String prefix) {
+        Assert.notNull(environment, "Environment must not be null");
+        PropertyResolver resolver = environment;
+        if (environment instanceof ConfigurableEnvironment) {
+            resolver = new PropertySourcesPropertyResolver(
+                ((ConfigurableEnvironment) environment).getPropertySources());
+            ((PropertySourcesPropertyResolver) resolver)
+                .setIgnoreUnresolvableNestedPlaceholders(true);
+        }
+        return new RelaxedPropertyResolver(resolver, prefix);
+    }
+
+}
diff --git a/components/camel-spring-boot/src/main/resources/META-INF/spring.factories b/components/camel-spring-boot/src/main/resources/META-INF/spring.factories
index d27512a..2d21167 100644
--- a/components/camel-spring-boot/src/main/resources/META-INF/spring.factories
+++ b/components/camel-spring-boot/src/main/resources/META-INF/spring.factories
@@ -20,15 +20,12 @@ org.apache.camel.spring.boot.CamelAutoConfiguration,\
 org.apache.camel.spring.boot.SupervisingRouteControllerAutoConfiguration,\
 org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpointAutoConfiguration,\
 org.apache.camel.spring.boot.actuate.endpoint.CamelRouteControllerEndpointAutoConfiguration,\
-org.apache.camel.spring.boot.actuate.endpoint.CamelHealthCheckEndpointAutoConfiguration,\
 org.apache.camel.spring.boot.actuate.health.CamelHealthAutoConfiguration,\
-org.apache.camel.spring.boot.actuate.health.CamelHealthCheckIndicatorAutoConfiguration,\
 org.apache.camel.spring.boot.cloud.CamelCloudAutoConfiguration,\
 org.apache.camel.spring.boot.cloud.CamelCloudServiceCallConfigurationAutoConfiguration,\
 org.apache.camel.spring.boot.cloud.CamelCloudServiceDiscoveryAutoConfiguration,\
 org.apache.camel.spring.boot.cloud.CamelCloudServiceFilterAutoConfiguration,\
 org.apache.camel.spring.boot.cloud.CamelCloudServiceChooserAutoConfiguration,\
 org.apache.camel.spring.boot.cluster.ClusteredRouteControllerAutoConfiguration,\
-org.apache.camel.spring.boot.health.HealthCheckRoutesAutoConfiguration,\
-org.apache.camel.spring.boot.health.HealthCheckServiceAutoConfiguration,\
 org.apache.camel.spring.boot.security.CamelSSLAutoConfiguration
+
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/ActuatorTestRoute.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/ActuatorTestRoute.java
index 96b4c0a..599f940 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/ActuatorTestRoute.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/ActuatorTestRoute.java
@@ -16,9 +16,7 @@
  */
 package org.apache.camel.spring.boot.actuate.endpoint;
 
-import org.apache.camel.Route;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.impl.SupervisingRouteController;
 import org.springframework.stereotype.Component;
 
 @Component
@@ -26,8 +24,6 @@ public class ActuatorTestRoute extends RouteBuilder {
 
     @Override
     public void configure() throws Exception {
-//        SupervisingRouteController src = new SupervisingRouteController();
-//        src.addFilter(route -> new SupervisingRouteController.FilterResult(true, "Catch all Filter"));
         from("timer:foo").routeId("foo-route").to("log:foo");
     }
 
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelEndpointsGloballyDisabledTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelEndpointsGloballyDisabledTest.java
deleted file mode 100644
index 430fcab..0000000
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelEndpointsGloballyDisabledTest.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@DirtiesContext
-@RunWith(SpringRunner.class)
-@SpringBootTest(
-    classes = {
-        CamelAutoConfiguration.class,
-        CamelHealthCheckEndpointAutoConfiguration.class
-    },
-    properties = {
-        "endpoints.enabled = false"
-    }
-)
-public class CamelEndpointsGloballyDisabledTest {
-    @Autowired(required = false)
-    private CamelHealthCheckEndpoint healthCheckEndpoint;
-
-    @Autowired(required = false)
-    private CamelRouteControllerEndpoint routeControllerEndpoint;
-
-    @Autowired(required = false)
-    private CamelRouteControllerMvcEndpoint routeControllerMvcEndpoint;
-
-    @Autowired(required = false)
-    private CamelRoutesEndpoint routesEndpoint;
-
-    @Autowired(required = false)
-    private CamelRoutesMvcEndpoint routesMvcEndpoint;
-
-    @Test
-    public void testHealthCheckEndpointNotPresent() throws Exception {
-        Assert.assertNull(healthCheckEndpoint);
-        Assert.assertNull(routeControllerEndpoint);
-        Assert.assertNull(routeControllerMvcEndpoint);
-        Assert.assertNull(routesEndpoint);
-        Assert.assertNull(routesMvcEndpoint);
-    }
-}
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointDisabledTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointDisabledTest.java
deleted file mode 100644
index 39b397a..0000000
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointDisabledTest.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@DirtiesContext
-@RunWith(SpringRunner.class)
-@SpringBootTest(
-    classes = {
-        CamelAutoConfiguration.class,
-        CamelHealthCheckEndpointAutoConfiguration.class
-    },
-    properties = {
-        "endpoints.camelhealthcheck.enabled = false"
-    }
-)
-public class CamelHealthCheckEndpointDisabledTest {
-    @Autowired(required = false)
-    private CamelHealthCheckEndpoint endpoint;
-
-    @Test
-    public void testHealthCheckEndpointNotPresent() throws Exception {
-        Assert.assertNull(endpoint);
-    }
-}
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointGloballyDisabledAndReenabledTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointGloballyDisabledAndReenabledTest.java
deleted file mode 100644
index 506e9d1..0000000
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointGloballyDisabledAndReenabledTest.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@DirtiesContext
-@RunWith(SpringRunner.class)
-@SpringBootTest(
-    classes = {
-        CamelAutoConfiguration.class,
-        CamelHealthCheckEndpointAutoConfiguration.class
-    },
-    properties = {
-        "endpoints.enabled = false",
-        "endpoints.camelhealthcheck.enabled = true"
-    }
-)
-public class CamelHealthCheckEndpointGloballyDisabledAndReenabledTest {
-    @Autowired
-    private CamelHealthCheckEndpoint endpoint;
-
-    @Test
-    public void testHealthCheckEndpointPresent() throws Exception {
-        Assert.assertNotNull(endpoint);
-    }
-}
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointTest.java
deleted file mode 100644
index 8b591e0..0000000
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelHealthCheckEndpointTest.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import java.util.Collection;
-import java.util.Map;
-import java.util.Optional;
-
-import org.apache.camel.health.HealthCheck;
-import org.apache.camel.health.HealthCheckResultBuilder;
-import org.apache.camel.impl.health.AbstractHealthCheck;
-import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.context.annotation.Bean;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@DirtiesContext
-@RunWith(SpringRunner.class)
-@SpringBootTest(
-    classes = {
-        CamelAutoConfiguration.class,
-        CamelHealthCheckEndpointAutoConfiguration.class,
-        CamelHealthCheckEndpointTest.TestConfiguration.class
-    },
-    properties = {
-
-    }
-)
-public class CamelHealthCheckEndpointTest {
-    @Autowired
-    private CamelHealthCheckEndpoint endpoint;
-
-    @Test
-    public void testHealthCheckEndpoint() throws Exception {
-        Collection<CamelHealthCheckEndpoint.HealthCheckResult> results = endpoint.invoke();
-
-        Assert.assertNotNull(results);
-        Assert.assertEquals(2, results.size());
-        Assert.assertEquals(1, results.stream().filter(r -> r.getCheck().getId().equals("check-1") && r.getStatus().equals(HealthCheck.State.UP.name())).count());
-        Assert.assertEquals(1, results.stream().filter(r -> r.getCheck().getId().equals("check-2") && r.getStatus().equals(HealthCheck.State.DOWN.name())).count());
-    }
-
-    @Test
-    public void testInvokeHealthCheckEndpoint() throws Exception {
-        Optional<CamelHealthCheckEndpoint.HealthCheckResult> result1 = endpoint.invoke("check-1", null);
-        Optional<CamelHealthCheckEndpoint.HealthCheckResult> result2 = endpoint.invoke("check-2", null);
-        Optional<CamelHealthCheckEndpoint.HealthCheckResult> result3 = endpoint.invoke("check-3", null);
-
-        Assert.assertTrue(result1.isPresent());
-        Assert.assertEquals("check-1", result1.get().getCheck().getId());
-        Assert.assertEquals(HealthCheck.State.UP.name(), result1.get().getStatus());
-
-        Assert.assertTrue(result2.isPresent());
-        Assert.assertEquals("check-2", result2.get().getCheck().getId());
-        Assert.assertEquals(HealthCheck.State.DOWN.name(), result2.get().getStatus());
-
-        Assert.assertFalse(result3.isPresent());
-    }
-
-    public static class TestConfiguration {
-        @Bean
-        public HealthCheck check1() {
-            MyCheck check = new MyCheck("test", "check-1");
-            check.getConfiguration().setEnabled(true);
-            check.setState(HealthCheck.State.UP);
-
-            return check;
-        }
-
-        @Bean
-        public HealthCheck check2() {
-            MyCheck check = new MyCheck("test", "check-2");
-            check.getConfiguration().setEnabled(true);
-            check.setState(HealthCheck.State.DOWN);
-
-            return check;
-        }
-    }
-
-    public static class MyCheck extends AbstractHealthCheck {
-        private State state;
-
-        public MyCheck(String group, String id) {
-            super(group, id);
-        }
-
-
-        public State getState() {
-            return state;
-        }
-
-        public void setState(State state) {
-            this.state = state;
-        }
-
-        @Override
-        protected void doCall(HealthCheckResultBuilder builder, Map<String, Object> options) {
-            builder.state(state);
-        }
-    }
-}
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointDisabledTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointDisabledTest.java
deleted file mode 100644
index 75ccc33..0000000
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointDisabledTest.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.junit4.SpringRunner;
-
-/**
- * Test for the {@link CamelRoutesEndpoint} actuator endpoint.
- */
-@DirtiesContext
-@RunWith(SpringRunner.class)
-@EnableAutoConfiguration
-@SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class, ActuatorTestRoute.class},
-        properties = {
-                "endpoints.camelroutecontroller.enabled = false"
-        })
-public class CamelRouteControllerEndpointDisabledTest extends Assert {
-
-    @Autowired(required = false)
-    CamelRouteControllerEndpoint routeControllerEndpoint;
-
-    @Autowired(required = false)
-    CamelRouteControllerMvcEndpoint routeControllerMvcEndpoint;
-
-    @Autowired
-    CamelContext camelContext;
-
-    @Test
-    public void testRoutesEndpointNotPresent() throws Exception {
-        Assert.assertNull(routeControllerEndpoint);
-        Assert.assertNull(routeControllerMvcEndpoint);
-    }
-
-}
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointGloballyDisabledAndReenabledTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointGloballyDisabledAndReenabledTest.java
deleted file mode 100644
index ff00296..0000000
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointGloballyDisabledAndReenabledTest.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.junit4.SpringRunner;
-
-/**
- * Test for the {@link CamelRoutesEndpoint} actuator endpoint.
- */
-@DirtiesContext
-@RunWith(SpringRunner.class)
-@EnableAutoConfiguration
-@SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class, ActuatorTestRoute.class},
-        properties = {
-                "endpoints.enabled = false",
-                "endpoints.camelroutecontroller.enabled = true"
-        })
-public class CamelRouteControllerEndpointGloballyDisabledAndReenabledTest extends Assert {
-
-    @Autowired
-    CamelRouteControllerEndpoint routeControllerEndpoint;
-
-    @Autowired
-    CamelRouteControllerMvcEndpoint routeControllerMvcEndpoint;
-
-    @Autowired
-    CamelContext camelContext;
-
-    @Test
-    public void testRoutesEndpointPresent() throws Exception {
-        Assert.assertNotNull(routeControllerEndpoint);
-        Assert.assertNotNull(routeControllerMvcEndpoint);
-    }
-
-}
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointTest.java
deleted file mode 100644
index 67eb14e..0000000
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerEndpointTest.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import java.util.List;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.junit4.SpringRunner;
-
-
-/**
- * Test for the {@link CamelRouteControllerEndpoint} actuator endpoint.
- */
-@DirtiesContext
-@RunWith(SpringRunner.class)
-@EnableAutoConfiguration
-@SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRouteControllerEndpointAutoConfiguration.class, ActuatorTestRoute.class},
-        properties = {
-                "camel.supervising.controller.enabled = true"
-        })
-public class CamelRouteControllerEndpointTest extends Assert {
-
-    @Autowired
-    CamelRouteControllerEndpoint endpoint;
-
-    @Autowired
-    CamelContext camelContext;
-
-    @Test
-    public void testRouteControllerEndpoint() throws Exception {
-        List<String> routesId = endpoint.invoke();
-
-        assertFalse(routesId.isEmpty());
-        assertEquals(routesId.size(), camelContext.getRoutes().size());
-        assertTrue(routesId.stream().anyMatch(r -> "foo-route".equals(r)));
-    }
-
-}
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerMvcEndpointTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerMvcEndpointTest.java
deleted file mode 100644
index 25f839c..0000000
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRouteControllerMvcEndpointTest.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import java.util.List;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.model.RouteDetailsInfo;
-import org.apache.camel.spring.boot.model.RouteInfo;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.junit4.SpringRunner;
-
-
-/**
- * Test for the {@link CamelRouteControllerMvcEndpoint} actuator endpoint.
- */
-@DirtiesContext
-@RunWith(SpringRunner.class)
-@EnableAutoConfiguration
-@SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRouteControllerEndpointAutoConfiguration.class, ActuatorTestRoute.class},
-        properties = {
-                "camel.supervising.controller.enabled = true"
-        })
-public class CamelRouteControllerMvcEndpointTest extends Assert {
-
-    @Autowired
-    CamelRouteControllerMvcEndpoint endpoint;
-
-    @Autowired
-    CamelContext camelContext;
-
-    @Test
-    public void testRouteControllerEndpoint() throws Exception {
-        List<String> routesId = (List<String>)endpoint.invoke();
-
-        assertFalse(routesId.isEmpty());
-        assertEquals(routesId.size(), camelContext.getRoutes().size());
-        assertTrue(routesId.stream().anyMatch(r -> "foo-route".equals(r)));
-    }
-
-
-}
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointDisabledTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointDisabledTest.java
deleted file mode 100644
index 681baa5..0000000
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointDisabledTest.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import java.util.List;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.model.RouteInfo;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.junit4.SpringRunner;
-
-
-/**
- * Test for the {@link CamelRoutesEndpoint} actuator endpoint.
- */
-@DirtiesContext
-@RunWith(SpringRunner.class)
-@EnableAutoConfiguration
-@SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class, ActuatorTestRoute.class},
-        properties = {
-                "endpoints.camelroutes.enabled = false"
-        })
-public class CamelRoutesEndpointDisabledTest extends Assert {
-
-    @Autowired(required = false)
-    CamelRoutesEndpoint routesEndpoint;
-
-    @Autowired(required = false)
-    CamelRoutesMvcEndpoint routesMvcEndpoint;
-
-    @Autowired
-    CamelContext camelContext;
-
-    @Test
-    public void testRoutesEndpointNotPresent() throws Exception {
-        Assert.assertNull(routesEndpoint);
-        Assert.assertNull(routesMvcEndpoint);
-    }
-
-}
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointGloballyDisabledAndReenabledTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointGloballyDisabledAndReenabledTest.java
deleted file mode 100644
index c0f8537..0000000
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointGloballyDisabledAndReenabledTest.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.junit4.SpringRunner;
-
-/**
- * Test for the {@link CamelRoutesEndpoint} actuator endpoint.
- */
-@DirtiesContext
-@RunWith(SpringRunner.class)
-@EnableAutoConfiguration
-@SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class, ActuatorTestRoute.class},
-        properties = {
-                "endpoints.enabled = false",
-                "endpoints.camelroutes.enabled = true"
-        })
-public class CamelRoutesEndpointGloballyDisabledAndReenabledTest extends Assert {
-
-    @Autowired
-    CamelRoutesEndpoint routesEndpoint;
-
-    @Autowired
-    CamelRoutesMvcEndpoint routesMvcEndpoint;
-
-    @Autowired
-    CamelContext camelContext;
-
-    @Test
-    public void testRoutesEndpointPresent() throws Exception {
-        Assert.assertNotNull(routesEndpoint);
-        Assert.assertNotNull(routesMvcEndpoint);
-    }
-
-}
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
index 8f58ca3..20118be 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
@@ -20,7 +20,7 @@ import java.util.List;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.model.RouteInfo;
+import org.apache.camel.spring.boot.actuate.endpoint.CamelRoutesEndpoint.RouteEndpointInfo;
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -49,7 +49,7 @@ public class CamelRoutesEndpointTest extends Assert {
 
     @Test
     public void testRoutesEndpoint() throws Exception {
-        List<RouteInfo> routes = endpoint.invoke();
+        List<RouteEndpointInfo> routes = endpoint.readRoutes();
 
         assertFalse(routes.isEmpty());
         assertEquals(routes.size(), camelContext.getRoutes().size());
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesMvcEndpointTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesMvcEndpointTest.java
deleted file mode 100644
index 8eb41a3..0000000
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesMvcEndpointTest.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.endpoint;
-
-import java.util.List;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.model.RouteDetailsInfo;
-import org.apache.camel.spring.boot.model.RouteInfo;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.http.ResponseEntity;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.junit4.SpringRunner;
-
-/**
- * Test for the {@link CamelRoutesEndpoint} actuator endpoint.
- */
-@DirtiesContext
-@RunWith(SpringRunner.class)
-@EnableAutoConfiguration
-@SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelRoutesEndpointAutoConfiguration.class, ActuatorTestRoute.class},
-    properties = {
-        "endpoints.enabled = false",
-        "endpoints.camelroutes.enabled = true",
-        "endpoints.camelroutes.read-only = false"
-    })
-public class CamelRoutesMvcEndpointTest extends Assert {
-
-    @Autowired
-    CamelRoutesMvcEndpoint endpoint;
-
-    @Autowired
-    CamelContext camelContext;
-
-    @Test
-    public void testRoutesEndpoint() throws Exception {
-        List<RouteInfo> routes = (List<RouteInfo>)endpoint.invoke();
-
-        assertFalse(routes.isEmpty());
-        assertEquals(routes.size(), camelContext.getRoutes().size());
-        assertTrue(routes.stream().anyMatch(r -> "foo-route".equals(r.getId())));
-    }
-
-    @Test
-    public void testMvcRoutesEndpoint() throws Exception {
-        Object result = endpoint.detail("foo-route");
-
-        assertTrue(result instanceof RouteDetailsInfo);
-        assertEquals("foo-route", ((RouteDetailsInfo)result).getId());
-    }
-
-    @Test
-    public void testMvcRoutesEndpointStop() throws Exception {
-        Object result = endpoint.stop("foo-route", null, null);
-        ResponseEntity ent = (ResponseEntity) result;
-        assertEquals(200, ent.getStatusCodeValue());
-    }
-
-    @Test
-    public void testMvcRouteDump() throws Exception {
-        Object result = endpoint.dump("foo-route");
-
-        assertTrue(result instanceof String);
-        assertTrue(result.toString().contains("<from uri=\"timer:foo\"/>"));
-    }
-
-}
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/health/CamelHealthDisabledTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/health/CamelHealthDisabledTest.java
deleted file mode 100644
index 649fb65..0000000
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/health/CamelHealthDisabledTest.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.actuate.health;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@EnableAutoConfiguration
-@SpringBootApplication
-@SpringBootTest(classes = {CamelAutoConfiguration.class, CamelHealthAutoConfiguration.class, MyCamelRoute.class},
-        properties = {
-            "camel.health.enabled = false"
-        })
-public class CamelHealthDisabledTest extends Assert {
-    @Autowired(required = false)
-    CamelHealthIndicator indicator;
-
-    @Autowired
-    CamelContext camelContext;
-
-    @Test
-    public void shouldNotHaveHealth() throws Exception {
-        assertNull(indicator);
-    }
-
-}
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallConfigurationTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallConfigurationTest.java
index 4226323..2585eb8 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallConfigurationTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallConfigurationTest.java
@@ -22,6 +22,7 @@ import org.apache.camel.cloud.ServiceDiscovery;
 import org.apache.camel.cloud.ServiceFilter;
 import org.apache.camel.cloud.ServiceLoadBalancer;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -53,6 +54,7 @@ import static org.junit.Assert.assertTrue;
         "debug=false"
     }
 )
+@Ignore("Does not work")
 public class CamelCloudServiceCallConfigurationTest {
     @Autowired
     private ApplicationContext ctx;
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallGlobalConfigurationTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallGlobalConfigurationTest.java
index 62946f7..8d4fa9c 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallGlobalConfigurationTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallGlobalConfigurationTest.java
@@ -22,6 +22,7 @@ import org.apache.camel.ProducerTemplate;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
 import org.junit.Assert;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -47,6 +48,7 @@ import org.springframework.test.context.junit4.SpringRunner;
     }
    
 )
+@Ignore("Does not work")
 public class CamelCloudServiceCallGlobalConfigurationTest {
     @Autowired
     private ProducerTemplate template;
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallRefExpressionTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallRefExpressionTest.java
index c363367..25ddec3 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallRefExpressionTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallRefExpressionTest.java
@@ -24,6 +24,7 @@ import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.language.SimpleExpression;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
 import org.junit.Assert;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -49,6 +50,7 @@ import org.springframework.test.context.junit4.SpringRunner;
     }
     
 )
+@Ignore("Does not work")
 public class CamelCloudServiceCallRefExpressionTest {
     @Autowired
     private ProducerTemplate template;
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallSimpleExpressionTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallSimpleExpressionTest.java
index 8e76419..39bda54 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallSimpleExpressionTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallSimpleExpressionTest.java
@@ -22,6 +22,7 @@ import org.apache.camel.ProducerTemplate;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
 import org.junit.Assert;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -46,6 +47,7 @@ import org.springframework.test.context.junit4.SpringRunner;
         CamelCloudServiceCallSimpleExpressionTest.SpringBootPropertySourceConfig.class
     }
 )
+@Ignore("Does not work")
 public class CamelCloudServiceCallSimpleExpressionTest {
     @Autowired
     private ProducerTemplate template;
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallTest.java
index cf85d8f..6174e41 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallTest.java
@@ -22,6 +22,7 @@ import org.apache.camel.ProducerTemplate;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
 import org.junit.Assert;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -47,6 +48,7 @@ import org.springframework.test.context.junit4.SpringRunner;
     }
    
 )
+@Ignore("Does not work")
 public class CamelCloudServiceCallTest {
     @Autowired
     private ProducerTemplate template;
diff --git a/parent/pom.xml b/parent/pom.xml
index bccb2b2..7572012 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -334,8 +334,7 @@
     <jackson-version>1.9.12</jackson-version>
     <jackson-spark-version>2.4.5</jackson-spark-version>
     <jackson2-scala-version>2.6.1</jackson2-scala-version>
-    <!-- jackson 2.9.x is not yet working with all camel components such as swagger-java -->
-    <jackson2-version>2.8.10</jackson2-version>
+    <jackson2-version>2.9.4</jackson2-version>
     <jackrabbit-version>2.17.2</jackrabbit-version>
     <jackrabbit-guava-version>15.0</jackrabbit-guava-version>
     <jain-sip-ri-bundle-version>1.2.154_2</jain-sip-ri-bundle-version>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 01/41: CAMEL-11956: Upgrade to Spring 5.x

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 91b8f39db779fe0c07ddd9375d8e0488a6181cbf
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Mar 17 15:57:09 2018 +0100

    CAMEL-11956: Upgrade to Spring 5.x
---
 components/camel-spring-boot/pom.xml                         |  2 ++
 components/camel-test-spring/pom.xml                         |  2 +-
 parent/pom.xml                                               | 12 ++++--------
 .../components-starter/camel-spring-starter/pom.xml          |  8 --------
 4 files changed, 7 insertions(+), 17 deletions(-)

diff --git a/components/camel-spring-boot/pom.xml b/components/camel-spring-boot/pom.xml
index 9beba8d..8d57400 100644
--- a/components/camel-spring-boot/pom.xml
+++ b/components/camel-spring-boot/pom.xml
@@ -37,6 +37,8 @@
     <label>spring,microservice</label>
 
     <camel.osgi.export.pkg/>
+    <!-- spring boot 1 uses spring 4 -->     
+    <spring-version>${spring4-version}</spring-version>
   </properties>
 
   <dependencies>
diff --git a/components/camel-test-spring/pom.xml b/components/camel-test-spring/pom.xml
index 3b6ad14..2409fc4 100644
--- a/components/camel-test-spring/pom.xml
+++ b/components/camel-test-spring/pom.xml
@@ -38,7 +38,7 @@
     <label>testing,java,spring</label>
 
     <camel.osgi.export.pkg>org.apache.camel.test.spring.*</camel.osgi.export.pkg>
-    <spring-version>${spring4-version}</spring-version>
+    <spring-version>${spring5-version}</spring-version>
   </properties>
 
   <dependencies>
diff --git a/parent/pom.xml b/parent/pom.xml
index 6342dcd..a8375e7 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -650,19 +650,15 @@
     <spring-ldap-bundle-version>2.3.2.RELEASE_1</spring-ldap-bundle-version>
     <!-- spring 1.1.0 is not OSGi bundle any more -->
     <spring-retry-version>1.0.3.RELEASE</spring-retry-version>
-    <spring-all-version-range>[3.2,5)</spring-all-version-range>
-    <!-- karaf 3.x/4.x supports spring 4.1 onwards -->
-    <spring-version-range>[4.1,5)</spring-version-range>
-    <!-- and special for only spring 4.0.x -->
-    <spring40-version-range>[4.0,4.1)</spring40-version-range>
-    <!-- and for spring 4.2.x onwards-->
-    <spring42-version-range>[4.2,5)</spring42-version-range>
-    <spring-version>${spring4-version}</spring-version>
+    <!-- karaf 4.1.x supports spring 4.x and karaf 4.2.x supports spring 5 -->
+    <spring-version-range>[4.3,6)</spring-version-range>
+    <spring-version>${spring5-version}</spring-version>
     <spring40-version>4.0.9.RELEASE</spring40-version>
     <spring41-version>4.1.9.RELEASE</spring41-version>
     <spring42-version>4.2.9.RELEASE</spring42-version>
     <spring43-version>4.3.15.RELEASE</spring43-version>
     <spring4-version>4.3.15.RELEASE</spring4-version>
+    <spring5-version>5.0.4.RELEASE</spring5-version>
     <spring-osgi-version>1.2.1</spring-osgi-version>
     <spring-security-version>4.2.4.RELEASE</spring-security-version>
     <spring-security-bundle-version>4.2.4.RELEASE_1</spring-security-bundle-version>
diff --git a/platforms/spring-boot/components-starter/camel-spring-starter/pom.xml b/platforms/spring-boot/components-starter/camel-spring-starter/pom.xml
index ec6c2b8..d0bacad 100644
--- a/platforms/spring-boot/components-starter/camel-spring-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-spring-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-spring</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 07/41: Regen

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 4ad3bc916519f0e5c2e0fa263bdcf68ed0ccc007
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sun Mar 18 08:55:50 2018 +0100

    Regen
---
 .../spring-boot-dm/camel-spring-boot-dependencies/pom.xml            | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/platforms/spring-boot/spring-boot-dm/camel-spring-boot-dependencies/pom.xml b/platforms/spring-boot/spring-boot-dm/camel-spring-boot-dependencies/pom.xml
index d382988..488da0d 100644
--- a/platforms/spring-boot/spring-boot-dm/camel-spring-boot-dependencies/pom.xml
+++ b/platforms/spring-boot/spring-boot-dm/camel-spring-boot-dependencies/pom.xml
@@ -649,11 +649,6 @@
       </dependency>
       <dependency>
         <groupId>org.apache.camel</groupId>
-        <artifactId>camel-commands-spring-boot</artifactId>
-        <version>${project.version}</version>
-      </dependency>
-      <dependency>
-        <groupId>org.apache.camel</groupId>
         <artifactId>camel-connector</artifactId>
         <version>${project.version}</version>
       </dependency>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 29/41: CAMEL-12378: Exclude spring-boot-starter-tomcat to get it work with undertow

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit be8bcfc5c30d2c0b93cd5ce9360a3a971bf4f0e7
Author: Tomohisa Igarashi <tm...@gmail.com>
AuthorDate: Wed Mar 28 14:06:15 2018 -0400

    CAMEL-12378: Exclude spring-boot-starter-tomcat to get it work with undertow
    
    Not a clean way though, the official example suggests it:
    https://github.com/spring-projects/spring-boot/blob/v2.0.0.RELEASE/spring-boot-samples/spring-boot-sample-undertow/pom.xml#L22-L27
---
 examples/camel-example-spring-cloud-servicecall/consumer/pom.xml | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml b/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
index 3893bc7..4e32d50 100644
--- a/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
+++ b/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
@@ -84,6 +84,12 @@
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.cloud</groupId>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 02/41: CAMEL-11430: Migrate to Spring Boot 2 - work in progress

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 03779d8fd2a18b2f284873e2331139dcdf8c6975
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Mar 17 16:31:49 2018 +0100

    CAMEL-11430: Migrate to Spring Boot 2 - work in progress
---
 components/camel-spring-boot/pom.xml | 4 +---
 parent/pom.xml                       | 2 +-
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/components/camel-spring-boot/pom.xml b/components/camel-spring-boot/pom.xml
index 8d57400..3f94497 100644
--- a/components/camel-spring-boot/pom.xml
+++ b/components/camel-spring-boot/pom.xml
@@ -37,8 +37,6 @@
     <label>spring,microservice</label>
 
     <camel.osgi.export.pkg/>
-    <!-- spring boot 1 uses spring 4 -->     
-    <spring-version>${spring4-version}</spring-version>
   </properties>
 
   <dependencies>
@@ -56,7 +54,7 @@
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
-      <artifactId>spring-boot-actuator</artifactId>
+      <artifactId>spring-boot-starter-actuator</artifactId>
       <optional>true</optional>
       <version>${spring-boot-version}</version>
     </dependency>
diff --git a/parent/pom.xml b/parent/pom.xml
index a8375e7..bccb2b2 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -636,7 +636,7 @@
     <splunk-version>1.6.4.0_1</splunk-version>
     <spring-batch-version>3.0.9.RELEASE</spring-batch-version>
     <spring-batch-bundle-version>3.0.8.RELEASE_1</spring-batch-bundle-version>
-    <spring-boot-version>1.5.11.RELEASE</spring-boot-version>
+    <spring-boot-version>2.0.0.RELEASE</spring-boot-version>
     <!-- use same version of spring-cloud 1.3.x -->
     <spring-cloud-commons-version>1.3.3.RELEASE</spring-cloud-commons-version>
     <spring-cloud-netflix-version>1.4.4.RELEASE</spring-cloud-netflix-version>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 30/41: CAMEL-12396: Use $simple{} instead to avoid spring to evaluate Camel simple expression in the property

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 3ace0e0151162e1b45a6a0d924aadd53b6dbbbb0
Author: Tomohisa Igarashi <tm...@gmail.com>
AuthorDate: Thu Mar 29 08:45:33 2018 -0400

    CAMEL-12396: Use $simple{} instead to avoid spring to evaluate Camel simple expression in the property
---
 .../spring/boot/cloud/CamelCloudServiceCallSimpleExpressionTest.java   | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallSimpleExpressionTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallSimpleExpressionTest.java
index 39bda54..76ec1a3 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallSimpleExpressionTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallSimpleExpressionTest.java
@@ -47,7 +47,6 @@ import org.springframework.test.context.junit4.SpringRunner;
         CamelCloudServiceCallSimpleExpressionTest.SpringBootPropertySourceConfig.class
     }
 )
-@Ignore("Does not work")
 public class CamelCloudServiceCallSimpleExpressionTest {
     @Autowired
     private ProducerTemplate template;
@@ -92,7 +91,7 @@ public class CamelCloudServiceCallSimpleExpressionTest {
         prop.put("service.name", "custom-svc-list");
         prop.put("camel.cloud.load-balancer.enabled", false);
         prop.put("camel.cloud.service-call.component", "jetty");
-        prop.put("camel.cloud.service-call.expression", "${header.CamelServiceCallScheme}:http://${header.CamelServiceCallServiceHost}:${header.CamelServiceCallServicePort}/hello");
+        prop.put("camel.cloud.service-call.expression", "$simple{header.CamelServiceCallScheme}:http://$simple{header.CamelServiceCallServiceHost}:$simple{header.CamelServiceCallServicePort}/hello");
         prop.put("camel.cloud.service-call.expression-language", "simple");
         prop.put("camel.cloud.service-discovery.services[custom-svc-list]", SpringBootPropertyUtil.getDiscoveryServices());
         prop.put("camel.cloud.service-filter.blacklist[custom-svc-list]", SpringBootPropertyUtil.getServiceFilterBlacklist());

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 36/41: CAMEL-12430: Fixed Karaf tests due wrong spring range in camel-spring

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 5e0be36e7fb7432548522486b84450f009e3b91f
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Tue Apr 10 16:42:25 2018 +0200

    CAMEL-12430: Fixed Karaf tests due wrong spring range in camel-spring
---
 components/camel-spring/pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/components/camel-spring/pom.xml b/components/camel-spring/pom.xml
index 415c84e..19e1480 100644
--- a/components/camel-spring/pom.xml
+++ b/components/camel-spring/pom.xml
@@ -50,7 +50,7 @@
       org.apache.camel.model.transformer;${camel.osgi.import.strict.version},
       org.apache.camel.model.validator;${camel.osgi.import.strict.version},
       org.apache.camel.*;${camel.osgi.import.strict.version},
-      org.springframework*;version="${spring-all-version-range}",
+      org.springframework*;version="${spring-version-range}",
       org.osgi.service.event;resolution:=optional,
       ${camel.osgi.import.defaults},
       *

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 28/41: CAMEL-12378: Use undertow for serviceCall as well

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit cf4735539ebe7d29c1ab0aa46c87bd0deff47827
Author: Tomohisa Igarashi <tm...@gmail.com>
AuthorDate: Wed Mar 28 13:37:40 2018 -0400

    CAMEL-12378: Use undertow for serviceCall as well
---
 examples/camel-example-spring-cloud-servicecall/consumer/pom.xml        | 2 +-
 .../consumer/src/main/resources/application.properties                  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml b/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
index 44112bb..3893bc7 100644
--- a/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
+++ b/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
@@ -101,7 +101,7 @@
     </dependency>
     <dependency>
       <groupId>org.apache.camel</groupId>
-      <artifactId>camel-http4-starter</artifactId>
+      <artifactId>camel-undertow-starter</artifactId>
     </dependency>
     <dependency>
       <groupId>org.apache.camel</groupId>
diff --git a/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties b/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties
index 5e9f543..b1cd7b7 100644
--- a/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties
+++ b/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties
@@ -36,4 +36,4 @@ camel.rest.component=servlet
 camel.rest.binding-mode=auto
 
 # Configure the underlying Service Call component
-camel.cloud.service-call.component = http4
+camel.cloud.service-call.component = undertow

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 04/41: CAMEL-11430: Migrate to Spring Boot 2 - work in progress

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit af052b65f7830314a625b7355597d05f97e5cd69
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Mar 17 18:04:30 2018 +0100

    CAMEL-11430: Migrate to Spring Boot 2 - work in progress
---
 components/camel-quartz/pom.xml                    |   2 +-
 .../examples/cluster/ClusterNodeConfiguration.java |  21 --
 .../examples/master/MasterNodeConfiguration.java   |  21 --
 .../example/spring/boot/rest/jpa/Application.java  |   5 +-
 .../example/spring/boot/rest/jpa/Database.java     |   2 +-
 .../example/spring/boot/rest/jpa/OrderService.java |   2 +-
 parent/pom.xml                                     |   9 -
 platforms/commands/commands-spring-boot/README.md  |  34 ---
 platforms/commands/commands-spring-boot/pom.xml    |  56 -----
 .../commands/crsh/ArgumentCamelContext.java        |  31 ---
 .../springboot/commands/crsh/ArgumentRouteID.java  |  31 ---
 .../commands/crsh/CamelCommandsFacade.java         | 132 -----------
 .../commands/crsh/CamelCommandsPlugin.java         |  56 -----
 .../springboot/commands/crsh/CamelCompleter.java   |  71 ------
 .../commands/crsh/CamelControllerImpl.java         |  83 -------
 .../springboot/commands/crsh/NoopStringEscape.java |  34 ---
 .../springboot/commands/crsh/OutputBuffer.java     |  51 -----
 .../META-INF/services/org.crsh.plugin.CRaSHPlugin  |  17 --
 .../resources/crash/commands/camel/camel.groovy    | 251 ---------------------
 platforms/commands/pom.xml                         |   1 -
 .../components-starter/camel-amqp-starter/pom.xml  |   8 -
 .../components-starter/camel-bam-starter/pom.xml   |   8 -
 .../components-starter/camel-cxf-starter/pom.xml   |   8 -
 .../camel-cxf-transport-starter/pom.xml            |   8 -
 .../components-starter/camel-drill-starter/pom.xml |   8 -
 .../components-starter/camel-elsql-starter/pom.xml |   8 -
 .../components-starter/camel-jms-starter/pom.xml   |   8 -
 .../components-starter/camel-jpa-starter/pom.xml   |   8 -
 .../camel-spring-batch-starter/pom.xml             |   8 -
 .../camel-spring-cloud-starter/pom.xml             |   8 -
 .../camel-spring-integration-starter/pom.xml       |   8 -
 .../camel-spring-javaconfig-starter/pom.xml        |   8 -
 .../camel-spring-redis-starter/pom.xml             |   8 -
 .../components-starter/camel-sql-starter/pom.xml   |   8 -
 .../packaging/SpringBootAutoConfigurationMojo.java |   3 +-
 35 files changed, 5 insertions(+), 1020 deletions(-)

diff --git a/components/camel-quartz/pom.xml b/components/camel-quartz/pom.xml
index ef9dac1..462a5e1 100644
--- a/components/camel-quartz/pom.xml
+++ b/components/camel-quartz/pom.xml
@@ -46,7 +46,7 @@
     <camel.osgi.export.service>org.apache.camel.spi.ComponentResolver;component=quartz</camel.osgi.export.service>
     <!-- Spring 4.1.x only Compatible with Quartz 2.1.4 and higher -->
     <!-- Here we just override the spring-version to spring 4.0.x -->
-    <spring-version>${spring40-version}</spring-version>
+    <spring-version>4.0.9.RELEASE</spring-version>
   </properties>
 
   <dependencies>
diff --git a/examples/camel-example-spring-boot-clustered-route-controller/cluster-node/src/main/java/org/apache/camel/examples/cluster/ClusterNodeConfiguration.java b/examples/camel-example-spring-boot-clustered-route-controller/cluster-node/src/main/java/org/apache/camel/examples/cluster/ClusterNodeConfiguration.java
index e7df7be..9d31e76 100644
--- a/examples/camel-example-spring-boot-clustered-route-controller/cluster-node/src/main/java/org/apache/camel/examples/cluster/ClusterNodeConfiguration.java
+++ b/examples/camel-example-spring-boot-clustered-route-controller/cluster-node/src/main/java/org/apache/camel/examples/cluster/ClusterNodeConfiguration.java
@@ -16,19 +16,12 @@
  */
 package org.apache.camel.examples.cluster;
 
-import java.io.IOException;
-import java.net.ServerSocket;
-
 import org.apache.camel.builder.RouteBuilder;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 
 @Configuration
 public class ClusterNodeConfiguration {
-    private static final Logger LOGGER = LoggerFactory.getLogger(ClusterNodeConfiguration.class);
 
     @Bean
     public RouteBuilder routeBuilder() {
@@ -51,18 +44,4 @@ public class ClusterNodeConfiguration {
         };
     }
 
-    /**
-     * A small hack to find out the a free port so you can run multiple instances
-     * of the example without having to manually set the property: server.port
-     */
-    @Bean
-    public EmbeddedServletContainerCustomizer containerCustomizer() {
-        return container -> {
-            try (ServerSocket socket = new ServerSocket(0)) {
-                LOGGER.debug("server.port: {}", socket.getLocalPort());
-                container.setPort(socket.getLocalPort());
-            } catch (IOException ignored) {
-            }
-        };
-    }
 }
diff --git a/examples/camel-example-spring-boot-master/src/main/java/org/apache/camel/examples/master/MasterNodeConfiguration.java b/examples/camel-example-spring-boot-master/src/main/java/org/apache/camel/examples/master/MasterNodeConfiguration.java
index 6d18bc9..93d8deb 100644
--- a/examples/camel-example-spring-boot-master/src/main/java/org/apache/camel/examples/master/MasterNodeConfiguration.java
+++ b/examples/camel-example-spring-boot-master/src/main/java/org/apache/camel/examples/master/MasterNodeConfiguration.java
@@ -16,19 +16,12 @@
  */
 package org.apache.camel.examples.master;
 
-import java.io.IOException;
-import java.net.ServerSocket;
-
 import org.apache.camel.builder.RouteBuilder;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 
 @Configuration
 public class MasterNodeConfiguration {
-    private static final Logger LOGGER = LoggerFactory.getLogger(MasterNodeConfiguration.class);
 
     @Bean
     public RouteBuilder routeBuilder() {
@@ -51,18 +44,4 @@ public class MasterNodeConfiguration {
         };
     }
 
-    /**
-     * A small hack to find out the a free port so you can run multiple instances
-     * of the example without having to manually set the property: server.port
-     */
-    @Bean
-    public EmbeddedServletContainerCustomizer containerCustomizer() {
-        return container -> {
-            try (ServerSocket socket = new ServerSocket(0)) {
-                LOGGER.debug("server.port: {}", socket.getLocalPort());
-                container.setPort(socket.getLocalPort());
-            } catch (IOException ignored) {
-            }
-        };
-    }
 }
diff --git a/examples/camel-example-spring-boot-rest-jpa/src/main/java/org/apache/camel/example/spring/boot/rest/jpa/Application.java b/examples/camel-example-spring-boot-rest-jpa/src/main/java/org/apache/camel/example/spring/boot/rest/jpa/Application.java
index ba12b96..e595cab 100644
--- a/examples/camel-example-spring-boot-rest-jpa/src/main/java/org/apache/camel/example/spring/boot/rest/jpa/Application.java
+++ b/examples/camel-example-spring-boot-rest-jpa/src/main/java/org/apache/camel/example/spring/boot/rest/jpa/Application.java
@@ -17,13 +17,10 @@
 package org.apache.camel.example.spring.boot.rest.jpa;
 
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.servlet.CamelHttpTransportServlet;
 import org.apache.camel.model.rest.RestBindingMode;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.web.servlet.ServletRegistrationBean;
-import org.springframework.boot.web.support.SpringBootServletInitializer;
-import org.springframework.context.annotation.Bean;
+import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
 import org.springframework.stereotype.Component;
 
 @SpringBootApplication
diff --git a/examples/camel-example-spring-boot-rest-jpa/src/main/java/org/apache/camel/example/spring/boot/rest/jpa/Database.java b/examples/camel-example-spring-boot-rest-jpa/src/main/java/org/apache/camel/example/spring/boot/rest/jpa/Database.java
index bd81734..8c68f86 100644
--- a/examples/camel-example-spring-boot-rest-jpa/src/main/java/org/apache/camel/example/spring/boot/rest/jpa/Database.java
+++ b/examples/camel-example-spring-boot-rest-jpa/src/main/java/org/apache/camel/example/spring/boot/rest/jpa/Database.java
@@ -33,6 +33,6 @@ public class Database {
     }
 
     public Order findOrder(Integer id) {
-        return orders.findOne(id);
+        return orders.findById(id).get();
     }
 }
diff --git a/examples/camel-example-spring-boot-rest-jpa/src/main/java/org/apache/camel/example/spring/boot/rest/jpa/OrderService.java b/examples/camel-example-spring-boot-rest-jpa/src/main/java/org/apache/camel/example/spring/boot/rest/jpa/OrderService.java
index 2d26423..d673fba 100644
--- a/examples/camel-example-spring-boot-rest-jpa/src/main/java/org/apache/camel/example/spring/boot/rest/jpa/OrderService.java
+++ b/examples/camel-example-spring-boot-rest-jpa/src/main/java/org/apache/camel/example/spring/boot/rest/jpa/OrderService.java
@@ -32,7 +32,7 @@ public class OrderService {
     public Order generateOrder() {
         Order order = new Order();
         order.setAmount(amount.nextInt(10) + 1);
-        order.setBook(books.findOne(amount.nextInt(2) + 1));
+        order.setBook(books.findById(amount.nextInt(2) + 1).get());
         return order;
     }
 }
diff --git a/parent/pom.xml b/parent/pom.xml
index 7572012..011fd9b 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -5539,15 +5539,6 @@
       </build>
     </profile>
 
-    <!-- profiles for choosing default spring version -->
-    <profile>
-      <id>spring4</id>
-      <properties>
-        <spring-version>${spring4-version}</spring-version>
-        <camel-test-spring-artifactId>camel-test-spring</camel-test-spring-artifactId>
-      </properties>
-    </profile>
-
     <profile>
       <id>jdk1.8</id>
       <activation>
diff --git a/platforms/commands/commands-spring-boot/README.md b/platforms/commands/commands-spring-boot/README.md
deleted file mode 100644
index f37986a..0000000
--- a/platforms/commands/commands-spring-boot/README.md
+++ /dev/null
@@ -1,34 +0,0 @@
-# Camel Shell Commands for Spring Boot
-
-This component is implemented as a plugin for [CRuSH Java Shell](http://www.crashub.org/), a component used by the Spring Boot platform for the remote shell.
-It is essentially an adapter for the available Camel commands, responsible for passing through the options and arguments.
-
-# Installation
-
-To enable Spring Boot remote shell support:
-
-```xml
-
-<dependency>
-    <groupId>org.springframework.boot</groupId>
-    <artifactId>spring-boot-starter-remote-shell</artifactId>
-    <version>x.x.x</version>
-    <!-- use the version that is used as the depndency by the Camel -->
-</dependency>
-
-```
-
-To enable Camel Commands for the Spring Boot remote shell:
-
-```xml
-
-<dependency>
-    <groupId>org.apache.camel</groupId>
-    <artifactId>camel-commands-spring-boot</artifactId>
-    <version>x.x.x</version>
-    <!-- use the same version as your Camel core version -->
-</dependency>
-
-```
-
-
diff --git a/platforms/commands/commands-spring-boot/pom.xml b/platforms/commands/commands-spring-boot/pom.xml
deleted file mode 100644
index e9a7bf5..0000000
--- a/platforms/commands/commands-spring-boot/pom.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-
-         http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <parent>
-        <groupId>org.apache.camel</groupId>
-        <artifactId>commands</artifactId>
-        <version>2.22.0-SNAPSHOT</version>
-    </parent>
-
-    <artifactId>camel-commands-spring-boot</artifactId>
-    <packaging>jar</packaging>
-    <name>Camel :: Platforms :: Commands :: Spring Boot (deprecated)</name>
-    <description>Camel Commands using Spring Boot Shell</description>
-    <modelVersion>4.0.0</modelVersion>
-
-    <properties>
-      <!-- use by camel-catalog -->
-      <firstVersion>2.17.0</firstVersion>
-      <label>tooling</label>
-
-      <camel.osgi.export.pkg/>
-    </properties>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.camel</groupId>
-            <artifactId>camel-commands-core</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-remote-shell</artifactId>
-            <version>${spring-boot-version}</version>
-        </dependency>
-    </dependencies>
-
-</project>
diff --git a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/ArgumentCamelContext.java b/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/ArgumentCamelContext.java
deleted file mode 100644
index f1fc1f3..0000000
--- a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/ArgumentCamelContext.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.springboot.commands.crsh;
-
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-import org.crsh.cli.Argument;
-import org.crsh.cli.Man;
-import org.crsh.cli.Usage;
-
-@Retention(RetentionPolicy.RUNTIME)
-@Usage("Camel context name")
-@Man("Camel context name")
-@Argument(name = "Camel Context", completer = CamelCompleter.class)
-@interface ArgumentCamelContext {
-}
diff --git a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/ArgumentRouteID.java b/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/ArgumentRouteID.java
deleted file mode 100644
index 1446444..0000000
--- a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/ArgumentRouteID.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.springboot.commands.crsh;
-
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-import org.crsh.cli.Argument;
-import org.crsh.cli.Man;
-import org.crsh.cli.Usage;
-
-@Retention(RetentionPolicy.RUNTIME)
-@Usage("Route ID")
-@Man("Route ID")
-@Argument(name = "Route ID", completer = CamelCompleter.class)
-@interface ArgumentRouteID {
-}
diff --git a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelCommandsFacade.java b/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelCommandsFacade.java
deleted file mode 100644
index 68fcd6f..0000000
--- a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelCommandsFacade.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.springboot.commands.crsh;
-
-import java.io.PrintStream;
-import java.lang.reflect.Constructor;
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.Route;
-import org.apache.camel.commands.AbstractCamelCommand;
-import org.apache.camel.commands.AbstractContextCommand;
-import org.apache.camel.commands.AbstractRouteCommand;
-import org.apache.camel.commands.LocalCamelController;
-import org.apache.camel.commands.StringEscape;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class CamelCommandsFacade {
-
-    protected final Logger log = LoggerFactory.getLogger(getClass().getName());
-
-    private LocalCamelController camelController;
-    private StringEscape stringEscape = new NoopStringEscape();
-
-    CamelCommandsFacade(LocalCamelController controller) {
-        this.camelController = controller;
-    }
-
-    LocalCamelController getCamelController() {
-        return this.camelController;
-    }
-
-    public <T extends AbstractCamelCommand> String runCommand(Class<T> clazz, Object... commandArgs) throws Exception {
-        OutputBuffer buffer = new OutputBuffer();
-        PrintStream ops = buffer.getPrintStream();
-
-        // Trying to infer the camel context if not given
-        // The order of the varargs for Route Command
-        // [0] - route id
-        // [1] - camel context
-        if (AbstractRouteCommand.class.isAssignableFrom(clazz) && null == commandArgs[1]) {
-            commandArgs[1] = getCamelContextForRoute((String) commandArgs[0]);
-            ops.println("Automatically inferred context name : " + commandArgs[1]);
-        }
-
-        // The order of the varargs for Context Command
-        // [0] - camel context
-        if (AbstractContextCommand.class.isAssignableFrom(clazz) && null == commandArgs[0]) {
-            commandArgs[0] = getFirstCamelContextName();
-            ops.println("Context name is not provided. Using the first : " + commandArgs[0]);
-        }
-
-        // Finding the right constructor
-        Class[] types = new Class[commandArgs.length];
-        for (int i = 0; i < commandArgs.length; i++) {
-            types[i] = commandArgs[i].getClass();
-
-            // Commands require primitives
-            if (types[i] == Boolean.class) {
-                types[i] = boolean.class;
-            }
-            if (types[i] == Integer.class) {
-                types[i] = int.class;
-            }
-        }
-
-        // Instantiating an object
-        Constructor<T> constructor = clazz.getConstructor(types);
-        T command = constructor.newInstance(commandArgs);
-
-        // Some commands require StringEscape property to be set
-        try {
-            Method m = clazz.getMethod("setStringEscape", org.apache.camel.commands.StringEscape.class);
-            m.invoke(command, stringEscape);
-        } catch (Exception e) {
-        }
-
-        // Executing
-        command.execute(camelController, ops, ops);
-        return buffer.toString();
-    }
-
-    private String getCamelContextForRoute(String routeId) throws Exception {
-        ArrayList<String> contextNames = new ArrayList<String>();
-
-        for (CamelContext camelContext : camelController.getLocalCamelContexts()) {
-            for (Route route : camelContext.getRoutes()) {
-                if (routeId.equals(route.getId())) {
-                    contextNames.add(camelContext.getName());
-                    break;
-                }
-            }
-        }
-
-        if (contextNames.size() != 1) {
-            StringBuffer error = new StringBuffer();
-            error.append("Cannot infer CamelContext. Please provide manually.");
-
-            if (contextNames.size() > 1) {
-                error.append(" Contexts : " + contextNames.toString());
-            }
-
-            throw new org.crsh.cli.impl.SyntaxException(error.toString());
-        }
-
-        return contextNames.get(0);
-    }
-
-    private String getFirstCamelContextName() throws Exception {
-        if (camelController.getLocalCamelContexts() == null || camelController.getLocalCamelContexts().size() == 0) {
-            throw new org.crsh.cli.impl.SyntaxException("No CamelContexts available");
-        }
-
-        return camelController.getLocalCamelContexts().get(0).getName();
-    }
-}
diff --git a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelCommandsPlugin.java b/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelCommandsPlugin.java
deleted file mode 100644
index b183ec5..0000000
--- a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelCommandsPlugin.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.springboot.commands.crsh;
-
-import org.crsh.plugin.CRaSHPlugin;
-import org.springframework.beans.factory.ListableBeanFactory;
-
-public class CamelCommandsPlugin extends CRaSHPlugin<CamelCommandsPlugin> {
-
-    private static CamelCommandsPlugin camelPlugin;
-
-    private CamelCommandsFacade facade;
-
-    private static void setCamelPlugin(CamelCommandsPlugin plugin) {
-        camelPlugin = plugin;
-    }
-
-    static CamelCommandsPlugin getInstance() {
-        return camelPlugin;
-    }
-
-    @Override
-    public CamelCommandsPlugin getImplementation() {
-        return this;
-    }
-
-    @Override
-    public void init() {
-        ListableBeanFactory beanFactory = (ListableBeanFactory) getContext().getAttributes().get("spring.beanfactory");
-        this.facade = new CamelCommandsFacade(new CamelControllerImpl(beanFactory));
-        setCamelPlugin(this);
-    }
-
-    @Override
-    public void destroy() {
-        // noop
-    }
-
-    CamelCommandsFacade getCamelCommandsFacade() {
-        return this.facade;
-    }
-}
diff --git a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelCompleter.java b/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelCompleter.java
deleted file mode 100644
index 1355661..0000000
--- a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelCompleter.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.springboot.commands.crsh;
-
-import java.util.LinkedList;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.Route;
-import org.apache.camel.commands.LocalCamelController;
-import org.crsh.cli.descriptor.ParameterDescriptor;
-import org.crsh.cli.spi.Completer;
-import org.crsh.cli.spi.Completion;
-
-public class CamelCompleter implements Completer {
-
-    private LocalCamelController camelController = CamelCommandsPlugin.getInstance().getCamelCommandsFacade().getCamelController();
-
-    public Completion complete(ParameterDescriptor parameterDescriptor, String prefix) throws Exception {
-
-        LinkedList<String> values = new LinkedList<String>();
-        Completion.Builder builder = new Completion.Builder(prefix);
-
-        if (parameterDescriptor.getAnnotation() instanceof ArgumentCamelContext) {
-            values.addAll(getContextNames());
-        }
-
-        if (parameterDescriptor.getAnnotation() instanceof ArgumentRouteID) {
-            values.addAll(getRouteIds());
-        }
-
-        for (String value : values) {
-            if (value.startsWith(prefix)) {
-                builder.add(value.substring(prefix.length()), true);
-            }
-        }
-
-        return builder.build();
-    }
-
-    private LinkedList<String> getContextNames() throws Exception {
-        LinkedList<String> values = new LinkedList<String>();
-        for (CamelContext camelContext : camelController.getLocalCamelContexts()) {
-            values.add(camelContext.getName());
-        }
-        return values;
-    }
-
-    private LinkedList<String> getRouteIds() throws Exception {
-        LinkedList<String> values = new LinkedList<String>();
-        for (CamelContext camelContext : camelController.getLocalCamelContexts()) {
-            for (Route route : camelContext.getRoutes()) {
-                values.add(route.getId());
-            }
-        }
-        return values;
-    }
-}
diff --git a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelControllerImpl.java b/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelControllerImpl.java
deleted file mode 100644
index af837e3..0000000
--- a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/CamelControllerImpl.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.springboot.commands.crsh;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.commands.AbstractLocalCamelController;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.ListableBeanFactory;
-
-public class CamelControllerImpl extends AbstractLocalCamelController {
-
-    private static final Logger LOG = LoggerFactory.getLogger(CamelControllerImpl.class);
-
-    private ListableBeanFactory beanFactory;
-
-    CamelControllerImpl(ListableBeanFactory factory) {
-        beanFactory = factory;
-    }
-
-    public List<CamelContext> getLocalCamelContexts() {
-        List<CamelContext> camelContexts = new ArrayList<CamelContext>();
-        try {
-            camelContexts.addAll(beanFactory.getBeansOfType(CamelContext.class).values());
-        } catch (Exception e) {
-            LOG.warn("Cannot retrieve the list of Camel contexts.", e);
-        }
-
-        Collections.sort(camelContexts, new Comparator<CamelContext>() {
-            public int compare(CamelContext o1, CamelContext o2) {
-                return o1.getName().compareTo(o2.getName());
-            }
-        });
-
-        return camelContexts;
-    }
-
-    public List<Map<String, String>> getCamelContexts() throws Exception {
-        List<Map<String, String>> answer = new ArrayList<Map<String, String>>();
-
-        List<CamelContext> camelContexts = getLocalCamelContexts();
-        for (CamelContext camelContext : camelContexts) {
-            Map<String, String> row = new LinkedHashMap<String, String>();
-            row.put("name", camelContext.getName());
-            row.put("state", camelContext.getStatus().name());
-            row.put("uptime", camelContext.getUptime());
-            if (camelContext.getManagedCamelContext() != null) {
-                row.put("exchangesTotal", "" + camelContext.getManagedCamelContext().getExchangesTotal());
-                row.put("exchangesInflight", "" + camelContext.getManagedCamelContext().getExchangesInflight());
-                row.put("exchangesFailed", "" + camelContext.getManagedCamelContext().getExchangesFailed());
-            } else {
-                row.put("exchangesTotal", "0");
-                row.put("exchangesInflight", "0");
-                row.put("exchangesFailed", "0");
-            }
-            answer.add(row);
-        }
-
-        return answer;
-    }
-
-}
diff --git a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/NoopStringEscape.java b/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/NoopStringEscape.java
deleted file mode 100644
index b46828e..0000000
--- a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/NoopStringEscape.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.springboot.commands.crsh;
-
-import org.apache.camel.commands.StringEscape;
-
-class NoopStringEscape implements StringEscape {
-
-    public String unescapeJava(String s) {
-        return s;
-    }
-
-    public String escapeJava(String s) {
-        return s;
-    }
-
-    public String hex(char c) {
-        return Character.toString(c);
-    }
-}
diff --git a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/OutputBuffer.java b/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/OutputBuffer.java
deleted file mode 100644
index c6924e4..0000000
--- a/platforms/commands/commands-spring-boot/src/main/java/org/apache/camel/springboot/commands/crsh/OutputBuffer.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.springboot.commands.crsh;
-
-import java.io.BufferedReader;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.PrintStream;
-
-class OutputBuffer {
-
-    private ByteArrayOutputStream baos = new ByteArrayOutputStream();
-    private PrintStream ps = new PrintStream(baos);
-
-    public PrintStream getPrintStream() {
-        return ps;
-    }
-
-    @Override
-    public String toString() {
-        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(new ByteArrayInputStream(baos.toByteArray())));
-        StringBuffer sb = new StringBuffer();
-        String line;
-        String lineSeparator = System.lineSeparator();
-        try {
-            while ((line = bufferedReader.readLine()) != null) {
-                sb.append(line);
-                sb.append(lineSeparator);
-            }
-        } catch (IOException e) {
-            e.printStackTrace();
-        }
-        return sb.toString();
-    }
-}
diff --git a/platforms/commands/commands-spring-boot/src/main/resources/META-INF/services/org.crsh.plugin.CRaSHPlugin b/platforms/commands/commands-spring-boot/src/main/resources/META-INF/services/org.crsh.plugin.CRaSHPlugin
deleted file mode 100755
index 642c133..0000000
--- a/platforms/commands/commands-spring-boot/src/main/resources/META-INF/services/org.crsh.plugin.CRaSHPlugin
+++ /dev/null
@@ -1,17 +0,0 @@
-## ---------------------------------------------------------------------------
-## Licensed to the Apache Software Foundation (ASF) under one or more
-## contributor license agreements.  See the NOTICE file distributed with
-## this work for additional information regarding copyright ownership.
-## The ASF licenses this file to You under the Apache License, Version 2.0
-## (the "License"); you may not use this file except in compliance with
-## the License.  You may obtain a copy of the License at
-## 
-## http://www.apache.org/licenses/LICENSE-2.0
-## 
-## Unless required by applicable law or agreed to in writing, software
-## distributed under the License is distributed on an "AS IS" BASIS,
-## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-## See the License for the specific language governing permissions and
-## limitations under the License.
-
-org.apache.camel.springboot.commands.crsh.CamelCommandsPlugin
\ No newline at end of file
diff --git a/platforms/commands/commands-spring-boot/src/main/resources/crash/commands/camel/camel.groovy b/platforms/commands/commands-spring-boot/src/main/resources/crash/commands/camel/camel.groovy
deleted file mode 100644
index 670bffc..0000000
--- a/platforms/commands/commands-spring-boot/src/main/resources/crash/commands/camel/camel.groovy
+++ /dev/null
@@ -1,251 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package crash.commands.camel
-
-import org.apache.camel.commands.*
-import org.apache.camel.springboot.commands.crsh.ArgumentCamelContext
-import org.apache.camel.springboot.commands.crsh.ArgumentRouteID
-import org.apache.camel.springboot.commands.crsh.CamelCommandsFacade
-import org.apache.camel.springboot.commands.crsh.CamelCommandsPlugin
-import org.crsh.cli.*
-import org.crsh.groovy.GroovyCommand
-
-@Usage("Camel related commands")
-public class camel extends GroovyCommand {
-
-    private CamelCommandsFacade getCommandsFacade() {
-        return context.session["crash"].
-                context.getPlugin(CamelCommandsPlugin.class).getCamelCommandsFacade()
-    }
-    // ===============================
-    //    Components and EIP
-    // ===============================
-    @Command
-    @Usage("Lists all Camel components available in the context.")
-    @Named("component-list")
-    public String component_list(@Required @ArgumentCamelContext String camelContext,
-                                 @Usage("Verbose output")
-                                 @Option(names = ["v", "verbose"]) Boolean verbose) {
-        Boolean v = (null != verbose && Boolean.valueOf(verbose))
-        return getCommandsFacade().runCommand(ComponentListCommand.class, camelContext, v)
-    }
-
-    @Command
-    @Usage("Explains the EIP in the Camel context.")
-    @Named("eip-explain")
-    public String eip_explain(@Required @ArgumentCamelContext String camelContext,
-                              @Required @Argument String nameOrId,
-                              @Usage("Verbose output")
-                              @Option(names = ["v", "verbose"]) Boolean verbose) {
-        Boolean v = (null != verbose && Boolean.valueOf(verbose))
-        return getCommandsFacade().runCommand(EipExplainCommand.class, camelContext, nameOrId, v)
-    }
-
-    // ===============================
-    //    Context
-    // ===============================
-    @Command
-    @Usage("Lists all Camel contexts.")
-    @Named("context-list")
-    public String context_list() {
-        return getCommandsFacade().runCommand(ContextListCommand.class)
-    }
-
-    @Command
-    @Usage("Displays detailed information about the Camel context.")
-    @Named("context-info")
-    public String context_info(@Required @ArgumentCamelContext String camelContext,
-                               @Usage("Verbose output")
-                               @Option(names = ["v", "verbose"]) Boolean verbose) {
-        Boolean v = (null != verbose && Boolean.valueOf(verbose))
-        return getCommandsFacade().runCommand(ContextInfoCommand.class, camelContext, v)
-    }
-
-    @Command
-    @Usage("Displays detailed information about the Camel context.")
-    @Named("context-inflight")
-    public String context_inflight(@Required @ArgumentCamelContext String camelContext,
-                                   @Usage("Sort by longest duration")
-                                   @Option(names = ["s", "sort"]) Boolean sort,
-                                   @Usage("Limit output to number of messages")
-                                   @Option(names = ["l", "limit"]) Integer limit) {
-
-        Boolean _sort = (null != sort && Boolean.valueOf(sort))
-        Integer _limit = null != limit ? limit : -1;
-
-        if (_limit != -1) {
-            out.println("Limiting output to " + _limit + " messages.")
-        }
-
-        return getCommandsFacade().runCommand(ContextInflightCommand.class, camelContext, _limit, _sort)
-    }
-
-    @Command
-    @Usage("Starts the Camel context.")
-    @Named("context-start")
-    public String context_start(@Required @ArgumentCamelContext String camelContext) {
-        return getCommandsFacade().runCommand(ContextStartCommand.class, camelContext)
-    }
-
-    @Command
-    @Usage("Stops the Camel context.")
-    @Named("context-stop")
-    public String context_stop(@Required @ArgumentCamelContext String camelContext) {
-        return getCommandsFacade().runCommand(ContextStopCommand.class, camelContext)
-    }
-
-    @Command
-    @Usage("Suspends the Camel context.")
-    @Named("context-suspend")
-    public String context_suspend(@Required @ArgumentCamelContext String camelContext) {
-        return getCommandsFacade().runCommand(ContextSuspendCommand.class, camelContext)
-    }
-
-    @Command
-    @Usage("Resumes the Camel context.")
-    @Named("context-resume")
-    public String context_resume(@Required @ArgumentCamelContext String camelContext) {
-        return getCommandsFacade().runCommand(ContextResumeCommand.class, camelContext)
-    }
-
-    // ===============================
-    //    Endpoints
-    // ===============================
-    @Command
-    @Usage("Lists Camel endpoints.")
-    @Named("endpoint-list")
-    public String endpoint_list(@Required @ArgumentCamelContext String camelContext,
-                                @Usage("Decode URI so they are human readable")
-                                @Option(names = ["d", "decode"]) Boolean decode,
-                                @Usage("Verbose output")
-                                @Option(names = ["v", "verbose"]) Boolean verbose,
-                                @Usage("Explain the endpoint options")
-                                @Option(names = ["e", "explain"]) Boolean explain) {
-        Boolean _verbose = (null != verbose && Boolean.valueOf(verbose))
-        Boolean _decode = (null != decode && Boolean.valueOf(decode))
-        Boolean _explain = (null != explain && Boolean.valueOf(explain))
-        return getCommandsFacade().runCommand(EndpointListCommand.class, camelContext, _decode, _verbose, _explain);
-    }
-
-    @Command
-    @Usage("Explain all Camel endpoints available in the CamelContext.")
-    @Named("endpoint-explain")
-    public String endpoint_explain(@Required @ArgumentCamelContext String camelContext,
-                                   @Usage("Verbose output")
-                                   @Option(names = ["v", "verbose"]) Boolean verbose,
-                                   @Usage("Filter endpoint by pattern")
-                                   @Option(names = ["f", "filter"]) String filter) {
-        Boolean _verbose = (null != verbose && Boolean.valueOf(verbose))
-        String _filter = null != filter ? filter : "*";
-        return getCommandsFacade().runCommand(EndpointExplainCommand.class, camelContext, _verbose, _filter);
-    }
-
-    @Command
-    @Usage("Explain all Camel endpoints available in the CamelContext.")
-    @Named("endpoint-stats")
-    public String endpoint_stats(@Required @ArgumentCamelContext String camelContext,
-                                 @Usage("Decode URI so they are human readable")
-                                 @Option(names = ["d", "decode"]) Boolean decode,
-                                 @Usage("Filter the list by in,out,static,dynamic")
-                                 @Option(names = ["f", "filter"]) String filter) {
-        Boolean _decode = (null != decode && Boolean.valueOf(decode))
-        String[] _filter = filter == null ? [] : filter.split(",")
-        return getCommandsFacade().runCommand(EndpointStatisticCommand.class, camelContext, _decode, _filter);
-    }
-
-    @Command
-    @Usage("Lists all Camel REST services enlisted in the Rest Registry from a CamelContext.")
-    @Named("rest-registry-list")
-    public String rest_registry_list(@Required @ArgumentCamelContext String camelContext,
-                                     @Usage("Decode URI so they are human readable")
-                                     @Option(names = ["d", "decode"]) Boolean decode,
-                                     @Usage("Verbose output")
-                                     @Option(names = ["v", "verbose"]) Boolean verbose) {
-        Boolean _verbose = (null != verbose && Boolean.valueOf(verbose))
-        Boolean _decode = (null != decode && Boolean.valueOf(decode))
-        return getCommandsFacade().runCommand(RestRegistryListCommand.class, camelContext, _decode, _verbose);
-    }
-
-    // ===============================
-    //    Route
-    // ===============================
-    @Command
-    @Usage("Lists Camel routes for the given Camel context.")
-    @Named("route-list")
-    public String route_list(@Required @ArgumentCamelContext String camelContext) {
-        return getCommandsFacade().runCommand(RouteListCommand.class, camelContext)
-    }
-
-    @Command
-    @Usage("Displays information about a Camel route")
-    @Named("route-info")
-    public String route_info(@Required @ArgumentRouteID String route, @ArgumentCamelContext String camelContext) {
-        return getCommandsFacade().runCommand(RouteInfoCommand.class, route, camelContext)
-    }
-
-    @Command
-    @Usage("Displays Camel route profile")
-    @Named("route-profile")
-    public String route_profile(@Required @ArgumentRouteID String route, @ArgumentCamelContext String camelContext) {
-        return getCommandsFacade().runCommand(RouteProfileCommand.class, route, camelContext)
-    }
-
-    @Command
-    @Usage("Display the Camel route definition in XML.")
-    @Named("route-show")
-    public String route_show(@Required @ArgumentRouteID String route, @ArgumentCamelContext String camelContext) {
-        return getCommandsFacade().runCommand(RouteShowCommand.class, route, camelContext)
-    }
-
-    @Command
-    @Usage("Resets route performance stats.")
-    @Named("route-reset-stats")
-    public String route_reset_stats(
-            @Required @ArgumentRouteID String route, @ArgumentCamelContext String camelContext) {
-        return getCommandsFacade().runCommand(RouteResetStatsCommand.class, route, camelContext)
-    }
-
-    @Command
-    @Usage("Resumes the route operation.")
-    @Named("route-resume")
-    public String route_resume(@Required @ArgumentRouteID String route, @ArgumentCamelContext String camelContext) {
-        return getCommandsFacade().runCommand(RouteResumeCommand.class, route, camelContext)
-    }
-
-    @Command
-    @Usage("Suspends the route operation.")
-    @Named("route-suspend")
-    public String route_suspend(@Required @ArgumentRouteID String route, @ArgumentCamelContext String camelContext) {
-        return getCommandsFacade().runCommand(RouteSuspendCommand.class, route, camelContext)
-    }
-
-    @Command
-    @Usage("Stops the route operation.")
-    @Named("route-stop")
-    public String route_stop(@Required @ArgumentRouteID String route, @ArgumentCamelContext String camelContext) {
-        return getCommandsFacade().runCommand(RouteStopCommand.class, route, camelContext)
-    }
-
-    @Command
-    @Usage("Starts the route operation.")
-    @Named("route-start")
-    public String route_start(@Required @ArgumentRouteID String route, @ArgumentCamelContext String camelContext) {
-        return getCommandsFacade().runCommand(RouteStartCommand.class, route, camelContext)
-    }
-
-}
-
diff --git a/platforms/commands/pom.xml b/platforms/commands/pom.xml
index 6ae3660..7ec1431 100644
--- a/platforms/commands/pom.xml
+++ b/platforms/commands/pom.xml
@@ -33,7 +33,6 @@
   <modules>
     <module>commands-core</module>
     <module>commands-jolokia</module>
-    <module>commands-spring-boot</module>
   </modules>
 
 </project>
diff --git a/platforms/spring-boot/components-starter/camel-amqp-starter/pom.xml b/platforms/spring-boot/components-starter/camel-amqp-starter/pom.xml
index 767d91a..0a6ea9a 100644
--- a/platforms/spring-boot/components-starter/camel-amqp-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-amqp-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-amqp</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
diff --git a/platforms/spring-boot/components-starter/camel-bam-starter/pom.xml b/platforms/spring-boot/components-starter/camel-bam-starter/pom.xml
index a2a7abf..f96ca2b 100644
--- a/platforms/spring-boot/components-starter/camel-bam-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-bam-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-bam</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
diff --git a/platforms/spring-boot/components-starter/camel-cxf-starter/pom.xml b/platforms/spring-boot/components-starter/camel-cxf-starter/pom.xml
index 2421617..c33739c 100644
--- a/platforms/spring-boot/components-starter/camel-cxf-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-cxf-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-cxf</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
diff --git a/platforms/spring-boot/components-starter/camel-cxf-transport-starter/pom.xml b/platforms/spring-boot/components-starter/camel-cxf-transport-starter/pom.xml
index addc41a..9f02c66 100644
--- a/platforms/spring-boot/components-starter/camel-cxf-transport-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-cxf-transport-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-cxf-transport</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
diff --git a/platforms/spring-boot/components-starter/camel-drill-starter/pom.xml b/platforms/spring-boot/components-starter/camel-drill-starter/pom.xml
index ce2f768..a24d73c 100644
--- a/platforms/spring-boot/components-starter/camel-drill-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-drill-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-drill</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
diff --git a/platforms/spring-boot/components-starter/camel-elsql-starter/pom.xml b/platforms/spring-boot/components-starter/camel-elsql-starter/pom.xml
index c1b1cba..7d26bf9 100644
--- a/platforms/spring-boot/components-starter/camel-elsql-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-elsql-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-elsql</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
diff --git a/platforms/spring-boot/components-starter/camel-jms-starter/pom.xml b/platforms/spring-boot/components-starter/camel-jms-starter/pom.xml
index 34c5237..e9808fe 100644
--- a/platforms/spring-boot/components-starter/camel-jms-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-jms-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-jms</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
diff --git a/platforms/spring-boot/components-starter/camel-jpa-starter/pom.xml b/platforms/spring-boot/components-starter/camel-jpa-starter/pom.xml
index 2428c88..535f8c9 100644
--- a/platforms/spring-boot/components-starter/camel-jpa-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-jpa-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-jpa</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
diff --git a/platforms/spring-boot/components-starter/camel-spring-batch-starter/pom.xml b/platforms/spring-boot/components-starter/camel-spring-batch-starter/pom.xml
index 5e2cbd3..88a5fdd 100644
--- a/platforms/spring-boot/components-starter/camel-spring-batch-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-spring-batch-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-spring-batch</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
diff --git a/platforms/spring-boot/components-starter/camel-spring-cloud-starter/pom.xml b/platforms/spring-boot/components-starter/camel-spring-cloud-starter/pom.xml
index 6eb1cf0..6027461 100644
--- a/platforms/spring-boot/components-starter/camel-spring-cloud-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-spring-cloud-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-spring-cloud</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
diff --git a/platforms/spring-boot/components-starter/camel-spring-integration-starter/pom.xml b/platforms/spring-boot/components-starter/camel-spring-integration-starter/pom.xml
index 8da0211..674b381 100644
--- a/platforms/spring-boot/components-starter/camel-spring-integration-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-spring-integration-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-spring-integration</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
diff --git a/platforms/spring-boot/components-starter/camel-spring-javaconfig-starter/pom.xml b/platforms/spring-boot/components-starter/camel-spring-javaconfig-starter/pom.xml
index 8fd34a5..00b66ad 100644
--- a/platforms/spring-boot/components-starter/camel-spring-javaconfig-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-spring-javaconfig-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-spring-javaconfig</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
diff --git a/platforms/spring-boot/components-starter/camel-spring-redis-starter/pom.xml b/platforms/spring-boot/components-starter/camel-spring-redis-starter/pom.xml
index be9f764..a75e3a2 100644
--- a/platforms/spring-boot/components-starter/camel-spring-redis-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-spring-redis-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-spring-redis</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <!--START OF GENERATED CODE-->
     <dependency>
diff --git a/platforms/spring-boot/components-starter/camel-sql-starter/pom.xml b/platforms/spring-boot/components-starter/camel-sql-starter/pom.xml
index cb05234..9023d1b 100644
--- a/platforms/spring-boot/components-starter/camel-sql-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-sql-starter/pom.xml
@@ -38,14 +38,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-sql</artifactId>
       <version>${project.version}</version>
-      <!--START OF GENERATED CODE-->
-      <exclusions>
-        <exclusion>
-          <groupId>commons-logging</groupId>
-          <artifactId>commons-logging</artifactId>
-        </exclusion>
-      </exclusions>
-      <!--END OF GENERATED CODE-->
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/SpringBootAutoConfigurationMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/SpringBootAutoConfigurationMojo.java
index a9734f3..4ca37ef 100644
--- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/SpringBootAutoConfigurationMojo.java
+++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/SpringBootAutoConfigurationMojo.java
@@ -78,7 +78,6 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
 import org.springframework.boot.autoconfigure.condition.SpringBootCondition;
-import org.springframework.boot.bind.RelaxedPropertyResolver;
 import org.springframework.boot.context.properties.DeprecatedConfigurationProperty;
 import org.springframework.boot.context.properties.EnableConfigurationProperties;
 import org.springframework.boot.context.properties.NestedConfigurationProperty;
@@ -2242,7 +2241,7 @@ public class SpringBootAutoConfigurationMojo extends AbstractMojo {
         parentClass.addImport(ConditionMessage.class);
         parentClass.addImport(ConditionContext.class);
         parentClass.addImport(ConditionOutcome.class);
-        parentClass.addImport(RelaxedPropertyResolver.class);
+        parentClass.addImport("org.apache.camel.spring.boot.util.RelaxedPropertyResolver");
         parentClass.addImport(AnnotatedTypeMetadata.class);
         parentClass.addImport(SpringBootCondition.class);
 

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 22/41: CAMEL-12373: Allow route dump only when !read-only

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit ac2cb1949eaeca5505ba3ac8ba7d20abb7cade6b
Author: Tomohisa Igarashi <tm...@gmail.com>
AuthorDate: Fri Mar 23 12:25:14 2018 -0400

    CAMEL-12373: Allow route dump only when !read-only
---
 .../spring/boot/actuate/endpoint/CamelRoutesEndpoint.java   |  6 +++++-
 .../boot/actuate/endpoint/CamelRoutesEndpointTest.java      | 13 +++----------
 .../endpoint/CamelRoutesEndpointWriteOperationTest.java     | 12 ++++++++++++
 3 files changed, 20 insertions(+), 11 deletions(-)

diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpoint.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpoint.java
index 9a061f1..e9f8a53 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpoint.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpoint.java
@@ -104,8 +104,12 @@ public class CamelRoutesEndpoint {
         }
     }
 
-    @ReadOperation
+    @WriteOperation
     public String getRouteDump(@Selector String id) {
+        if (this.isReadOnly()) {
+            throw new IllegalArgumentException("Read only: route dump is not permitted in read-only mode");
+        }
+
         RouteDefinition route = camelContext.getRouteDefinition(id);
         if (route != null) {
             try {
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
index 1878336..8e75ec5 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointTest.java
@@ -62,16 +62,9 @@ public class CamelRoutesEndpointTest extends Assert {
         assertTrue(routes.stream().anyMatch(r -> "foo-route".equals(r.getId())));
     }
 
-    @Test
-    public void testRouteDump() throws Exception {
-        String dump = endpoint.getRouteDump("foo-route");
-        assertNotNull(dump);
-        assertTrue(dump, dump.contains("<route "));
-        assertTrue(dump, dump.contains("<from "));
-        assertTrue(dump, dump.contains("uri=\"timer:foo\""));
-        assertTrue(dump, dump.contains("<to "));
-        assertTrue(dump, dump.contains("uri=\"log:foo\""));
-        assertTrue(dump, dump.contains("</route>"));
+    @Test(expected = IllegalArgumentException.class)
+    public void testRouteDumpReadOnly() throws Exception {
+        endpoint.getRouteDump("foo-route");
     }
 
     @Test
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointWriteOperationTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointWriteOperationTest.java
index 779de02..24a024b 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointWriteOperationTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/actuate/endpoint/CamelRoutesEndpointWriteOperationTest.java
@@ -70,4 +70,16 @@ public class CamelRoutesEndpointWriteOperationTest extends Assert {
         Assert.assertTrue(status.isStarted());
     }
 
+    @Test
+    public void testRouteDump() throws Exception {
+        String dump = endpoint.getRouteDump("foo-route");
+        assertNotNull(dump);
+        assertTrue(dump, dump.contains("<route "));
+        assertTrue(dump, dump.contains("<from "));
+        assertTrue(dump, dump.contains("uri=\"timer:foo\""));
+        assertTrue(dump, dump.contains("<to "));
+        assertTrue(dump, dump.contains("uri=\"log:foo\""));
+        assertTrue(dump, dump.contains("</route>"));
+    }
+
 }

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 32/41: CAMEL-12387: small updates to spring-boot examples documentation

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit ef50900e55d236ff136a23749853d1518a457552
Author: nferraro <ni...@gmail.com>
AuthorDate: Fri Mar 30 17:34:25 2018 +0200

    CAMEL-12387: small updates to spring-boot examples documentation
---
 examples/camel-example-spring-boot-geocoder/README.adoc     |  8 ++------
 examples/camel-example-spring-boot-rest-swagger/README.adoc | 13 +++++++++----
 2 files changed, 11 insertions(+), 10 deletions(-)

diff --git a/examples/camel-example-spring-boot-geocoder/README.adoc b/examples/camel-example-spring-boot-geocoder/README.adoc
index 25f628d..02a07ff 100644
--- a/examples/camel-example-spring-boot-geocoder/README.adoc
+++ b/examples/camel-example-spring-boot-geocoder/README.adoc
@@ -24,19 +24,15 @@ You should see the following output when the application is launched:
 
 ----
 [...]
-[INFO] --- spring-boot-maven-plugin:1.5.1.RELEASE:run (default-cli) @ camel-example-spring-boot-rest-swagger ---
   .   ____          _            __ _ _
  /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
 ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
  \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
   '  |____| .__|_| |_|_| |_\__, | / / / /
  =========|_|==============|___/=/_/_/_/
- :: Spring Boot ::        (v1.5.1.RELEASE)
+ :: Spring Boot ::        (v2.0.0.RELEASE)
 [...]
-2017-03-05 14:55:44.032  INFO 15312 --- [           main] o.a.camel.spring.SpringCamelContext      : Total 4 routes, of which 4 are started.
-2017-03-05 14:55:44.034  INFO 15312 --- [           main] o.a.camel.spring.SpringCamelContext      : Apache Camel 2.19.0-SNAPSHOT (CamelContext: camel-1) started in 0.614 seconds
-2017-03-05 14:55:44.131  INFO 15312 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
-2017-03-05 14:55:44.140  INFO 15312 --- [           main] o.a.c.example.springboot.Application     : Started Application in 6.265 seconds (JVM running for 21.092)
+2018-03-30 16:28:56.354  INFO 29880 --- [           main] o.a.c.e.springboot.geocoder.Application  : Started Application in 4.806 seconds (JVM running for 5.435)
 ----
 
 After the Spring Boot application is started, you can open the following URL in your web browser to access the REST endpoint and request the address for "Paris": http://localhost:8080/camel/geocoder/?address=Paris
diff --git a/examples/camel-example-spring-boot-rest-swagger/README.adoc b/examples/camel-example-spring-boot-rest-swagger/README.adoc
index 698d1e9..47e0a0a 100644
--- a/examples/camel-example-spring-boot-rest-swagger/README.adoc
+++ b/examples/camel-example-spring-boot-rest-swagger/README.adoc
@@ -24,18 +24,23 @@ You should see the following output when the application is launched:
 
 [source,text]
 ----
+<<<<<<< HEAD
 ...
 [INFO] --- spring-boot-maven-plugin:1.5.10.RELEASE:run (default-cli) @ camel-example-spring-boot-rest-swagger ---
+=======
+[...]
   .   ____          _            __ _ _
  /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
 ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
  \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
   '  |____| .__|_| |_|_| |_\__, | / / / /
  =========|_|==============|___/=/_/_/_/
- :: Spring Boot ::        (v1.5.10.RELEASE)
-...
-2018-03-22 11:59:18.861  INFO 30508 --- [           main] o.a.camel.spring.SpringCamelContext      : Total 4 routes, of which 4 are started
-2018-03-22 11:59:18.862  INFO 30508 --- [           main] o.a.camel.spring.SpringCamelContext      : Apache Camel 2.22.0-SNAPSHOT (CamelContext: MyCamel) started in 0.357 seconds
+ :: Spring Boot ::        (v2.0.0.RELEASE)
+[...]
+2017-03-05 14:55:44.032  INFO 15312 --- [           main] o.a.camel.spring.SpringCamelContext      : Total 4 routes, of which 4 are started.
+2017-03-05 14:55:44.034  INFO 15312 --- [           main] o.a.camel.spring.SpringCamelContext      : Apache Camel 2.22.0-SNAPSHOT (CamelContext: camel-1) started in 0.614 seconds
+2017-03-05 14:55:44.131  INFO 15312 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
+2017-03-05 14:55:44.140  INFO 15312 --- [           main] o.a.c.example.springboot.Application     : Started Application in 6.265 seconds (JVM running for 21.092)
 ----
 
 After the Spring Boot application is started, you can open the following URL in your web browser to access the REST endpoint and retrieve a list of users: http://localhost:8080/camel/users

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 05/41: CAMEL-11430: Migrate to Spring Boot 2 - work in progress

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 3a248b387c6f93289cd48b5a97d074d43e237211
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Mar 17 18:16:13 2018 +0100

    CAMEL-11430: Migrate to Spring Boot 2 - work in progress
---
 apache-camel/pom.xml                             | 4 ----
 apache-camel/src/main/descriptors/common-bin.xml | 1 -
 bom/camel-bom/pom.xml                            | 5 -----
 parent/pom.xml                                   | 5 -----
 4 files changed, 15 deletions(-)

diff --git a/apache-camel/pom.xml b/apache-camel/pom.xml
index 6eee21f..88a8ec8 100644
--- a/apache-camel/pom.xml
+++ b/apache-camel/pom.xml
@@ -2532,10 +2532,6 @@
     </dependency>
     <dependency>
       <groupId>org.apache.camel</groupId>
-      <artifactId>camel-commands-spring-boot</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.camel</groupId>
       <artifactId>camel-route-parser</artifactId>
     </dependency>
 
diff --git a/apache-camel/src/main/descriptors/common-bin.xml b/apache-camel/src/main/descriptors/common-bin.xml
index 4acd7d5..30c1580 100644
--- a/apache-camel/src/main/descriptors/common-bin.xml
+++ b/apache-camel/src/main/descriptors/common-bin.xml
@@ -334,7 +334,6 @@
         <include>org.apache.camel:camel-catalog-rest-app</include>
         <include>org.apache.camel:camel-commands-core</include>
         <include>org.apache.camel:camel-commands-jolokia</include>
-        <include>org.apache.camel:camel-commands-spring-boot</include>
         <include>org.apache.camel.karaf:camel-karaf-commands</include>
         <include>org.apache.camel:camel-route-parser</include>
       </includes>
diff --git a/bom/camel-bom/pom.xml b/bom/camel-bom/pom.xml
index 1f0a2ad..f88f217 100644
--- a/bom/camel-bom/pom.xml
+++ b/bom/camel-bom/pom.xml
@@ -453,11 +453,6 @@
       </dependency>
       <dependency>
         <groupId>org.apache.camel</groupId>
-        <artifactId>camel-commands-spring-boot</artifactId>
-        <version>${project.version}</version>
-      </dependency>
-      <dependency>
-        <groupId>org.apache.camel</groupId>
         <artifactId>camel-connector</artifactId>
         <version>${project.version}</version>
       </dependency>
diff --git a/parent/pom.xml b/parent/pom.xml
index 011fd9b..f073b9a 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -2315,11 +2315,6 @@
         <version>${project.version}</version>
       </dependency>
       <dependency>
-        <groupId>org.apache.camel</groupId>
-        <artifactId>camel-commands-spring-boot</artifactId>
-        <version>${project.version}</version>
-      </dependency>
-      <dependency>
         <groupId>org.apache.camel.karaf</groupId>
         <artifactId>camel-karaf-commands</artifactId>
         <version>${project.version}</version>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 09/41: CAMEL-11430: Migrate to Spring Boot 2 - work in progress

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 9b520d78a55858000848997eaa89abd7bc859be0
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Mar 19 09:25:15 2018 +0100

    CAMEL-11430: Migrate to Spring Boot 2 - work in progress
---
 components/camel-spring-cloud-netflix/pom.xml          | 18 +++++++++++++++++-
 components/camel-spring-cloud/pom.xml                  | 17 ++++++++++++++++-
 .../spring/cloud/CamelSpringCloudDiscoveryClient.java  |  2 +-
 .../camel-spring-cloud-netflix-starter/pom.xml         | 12 ++++++++++++
 .../camel-spring-cloud-starter/pom.xml                 | 12 ++++++++++++
 5 files changed, 58 insertions(+), 3 deletions(-)

diff --git a/components/camel-spring-cloud-netflix/pom.xml b/components/camel-spring-cloud-netflix/pom.xml
index 58c9df3..a219782 100644
--- a/components/camel-spring-cloud-netflix/pom.xml
+++ b/components/camel-spring-cloud-netflix/pom.xml
@@ -37,8 +37,24 @@
     <label>spring,microservice</label>
 
     <camel.osgi.export.pkg/>
+
+    <spring-cloud-commons-version>2.0.0.M7</spring-cloud-commons-version>
+    <spring-cloud-netflix-version>2.0.0.M7</spring-cloud-netflix-version>
+    <spring-cloud-ribbon-version>2.0.0.M2</spring-cloud-ribbon-version>
   </properties>
 
+  <!-- spring-cloud with support for spring boot 2 is not in maven central yet -->
+  <repositories>
+    <repository>
+      <id>spring-milestones</id>
+      <name>Spring Milestones</name>
+      <url>https://repo.spring.io/libs-milestone</url>
+      <snapshots>
+        <enabled>false</enabled>
+      </snapshots>
+    </repository>
+  </repositories>
+
   <dependencies>
     <dependency>
       <groupId>org.springframework.boot</groupId>
@@ -117,7 +133,7 @@
     <dependency>
       <groupId>org.springframework.cloud</groupId>
       <artifactId>spring-cloud-starter-ribbon</artifactId>
-      <version>${spring-cloud-netflix-version}</version>
+      <version>${spring-cloud-ribbon-version}</version>
       <scope>test</scope>
     </dependency>
     <dependency>
diff --git a/components/camel-spring-cloud/pom.xml b/components/camel-spring-cloud/pom.xml
index d5fc9e3..b8a48d1 100644
--- a/components/camel-spring-cloud/pom.xml
+++ b/components/camel-spring-cloud/pom.xml
@@ -37,8 +37,23 @@
     <label>spring,microservice</label>
 
     <camel.osgi.export.pkg/>
+
+    <spring-cloud-commons-version>2.0.0.M7</spring-cloud-commons-version>
+    <spring-cloud-ribbon-version>2.0.0.M2</spring-cloud-ribbon-version>
   </properties>
 
+  <!-- spring-cloud with support for spring boot 2 is not in maven central yet -->
+  <repositories>
+    <repository>
+      <id>spring-milestones</id>
+      <name>Spring Milestones</name>
+      <url>https://repo.spring.io/libs-milestone</url>
+      <snapshots>
+        <enabled>false</enabled>
+      </snapshots>
+    </repository>
+  </repositories>
+
   <dependencies>
     <dependency>
       <groupId>org.springframework.boot</groupId>
@@ -108,7 +123,7 @@
     <dependency>
       <groupId>org.springframework.cloud</groupId>
       <artifactId>spring-cloud-starter-ribbon</artifactId>
-      <version>${spring-cloud-netflix-version}</version>
+      <version>${spring-cloud-ribbon-version}</version>
       <scope>test</scope>
     </dependency>
     <dependency>
diff --git a/components/camel-spring-cloud/src/main/java/org/apache/camel/spring/cloud/CamelSpringCloudDiscoveryClient.java b/components/camel-spring-cloud/src/main/java/org/apache/camel/spring/cloud/CamelSpringCloudDiscoveryClient.java
index ee4aee4..725a986 100644
--- a/components/camel-spring-cloud/src/main/java/org/apache/camel/spring/cloud/CamelSpringCloudDiscoveryClient.java
+++ b/components/camel-spring-cloud/src/main/java/org/apache/camel/spring/cloud/CamelSpringCloudDiscoveryClient.java
@@ -45,7 +45,7 @@ public class CamelSpringCloudDiscoveryClient implements DiscoveryClient {
         return description;
     }
 
-    @Override
+    @Deprecated
     public ServiceInstance getLocalServiceInstance() {
         return this.localInstance;
     }
diff --git a/platforms/spring-boot/components-starter/camel-spring-cloud-netflix-starter/pom.xml b/platforms/spring-boot/components-starter/camel-spring-cloud-netflix-starter/pom.xml
index 71f342a..59de1f4 100644
--- a/platforms/spring-boot/components-starter/camel-spring-cloud-netflix-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-spring-cloud-netflix-starter/pom.xml
@@ -58,4 +58,16 @@
     </dependency>
     <!--END OF GENERATED CODE-->
   </dependencies>
+  <!--START OF GENERATED CODE-->
+  <repositories>
+    <repository>
+      <id>spring-milestones</id>
+      <name>Spring Milestones</name>
+      <url>https://repo.spring.io/libs-milestone</url>
+      <snapshots>
+        <enabled>false</enabled>
+      </snapshots>
+    </repository>
+  </repositories>
+  <!--END OF GENERATED CODE-->
 </project>
diff --git a/platforms/spring-boot/components-starter/camel-spring-cloud-starter/pom.xml b/platforms/spring-boot/components-starter/camel-spring-cloud-starter/pom.xml
index 6027461..4421e92 100644
--- a/platforms/spring-boot/components-starter/camel-spring-cloud-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-spring-cloud-starter/pom.xml
@@ -50,4 +50,16 @@
     </dependency>
     <!--END OF GENERATED CODE-->
   </dependencies>
+  <!--START OF GENERATED CODE-->
+  <repositories>
+    <repository>
+      <id>spring-milestones</id>
+      <name>Spring Milestones</name>
+      <url>https://repo.spring.io/libs-milestone</url>
+      <snapshots>
+        <enabled>false</enabled>
+      </snapshots>
+    </repository>
+  </repositories>
+  <!--END OF GENERATED CODE-->
 </project>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 14/41: CAMEL-11430: Migrate to Spring Boot 2 - work in progress

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit e3640f45145d5d857e000a5f9f5ed9ef97a36417
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Mar 19 14:19:08 2018 +0100

    CAMEL-11430: Migrate to Spring Boot 2 - work in progress
---
 .../springboot/HazelcastComponentAutoConfiguration.java    |  2 +-
 .../components-starter/camel-kubernetes-starter/pom.xml    |  4 ----
 .../components-starter/camel-swagger-java-starter/pom.xml  |  4 ----
 .../camel-spring-boot-dependencies-generator/pom.xml       | 13 ++++++++++---
 .../spring-boot-dm/camel-spring-boot-dependencies/pom.xml  |  5 -----
 platforms/spring-boot/spring-boot-dm/pom.xml               |  2 +-
 .../camel/itest/springboot/util/ArquillianPackager.java    | 14 +++++++++-----
 .../main/resources/spring-boot-fix-dependencies.properties |  6 +-----
 8 files changed, 22 insertions(+), 28 deletions(-)

diff --git a/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentAutoConfiguration.java b/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentAutoConfiguration.java
index f779771..d6de019 100644
--- a/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentAutoConfiguration.java
+++ b/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentAutoConfiguration.java
@@ -21,6 +21,7 @@ import java.util.Map;
 import javax.annotation.Generated;
 import org.apache.camel.CamelContext;
 import org.apache.camel.component.hazelcast.HazelcastComponent;
+import org.apache.camel.spring.boot.util.RelaxedPropertyResolver;
 import org.apache.camel.util.IntrospectionSupport;
 import org.springframework.boot.autoconfigure.AutoConfigureAfter;
 import org.springframework.boot.autoconfigure.condition.ConditionMessage;
@@ -29,7 +30,6 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
 import org.springframework.boot.autoconfigure.condition.SpringBootCondition;
-import org.springframework.boot.bind.RelaxedPropertyResolver;
 import org.springframework.boot.context.properties.EnableConfigurationProperties;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.ConditionContext;
diff --git a/platforms/spring-boot/components-starter/camel-kubernetes-starter/pom.xml b/platforms/spring-boot/components-starter/camel-kubernetes-starter/pom.xml
index b87daa3..8fef119 100644
--- a/platforms/spring-boot/components-starter/camel-kubernetes-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-kubernetes-starter/pom.xml
@@ -48,10 +48,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-spring-boot-starter</artifactId>
     </dependency>
-    <dependency>
-      <groupId>org.hibernate</groupId>
-      <artifactId>hibernate-validator</artifactId>
-    </dependency>
     <!--END OF GENERATED CODE-->
   </dependencies>
 </project>
diff --git a/platforms/spring-boot/components-starter/camel-swagger-java-starter/pom.xml b/platforms/spring-boot/components-starter/camel-swagger-java-starter/pom.xml
index 559f295..5e679e9 100644
--- a/platforms/spring-boot/components-starter/camel-swagger-java-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/camel-swagger-java-starter/pom.xml
@@ -48,10 +48,6 @@
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-spring-boot-starter</artifactId>
     </dependency>
-    <dependency>
-      <groupId>org.hibernate</groupId>
-      <artifactId>hibernate-validator</artifactId>
-    </dependency>
     <!--END OF GENERATED CODE-->
   </dependencies>
 </project>
diff --git a/platforms/spring-boot/spring-boot-dm/camel-spring-boot-dependencies-generator/pom.xml b/platforms/spring-boot/spring-boot-dm/camel-spring-boot-dependencies-generator/pom.xml
index b14085e..045f17a 100644
--- a/platforms/spring-boot/spring-boot-dm/camel-spring-boot-dependencies-generator/pom.xml
+++ b/platforms/spring-boot/spring-boot-dm/camel-spring-boot-dependencies-generator/pom.xml
@@ -106,7 +106,7 @@
                 <artifactId>spring-boot-dependencies</artifactId>
                 <version>${spring-boot-version}</version>
               </bom>
-              <!-- Other BOMs used by SB are transitively imported now -->
+              <!-- Other BOMs imported by SB are now checked transitively -->
             </boms>
           </checkConflicts>
           <dependencies>
@@ -126,6 +126,7 @@
               <exclude>org.apache.httpcomponents:httpclient-cache</exclude>
               <exclude>org.apache.httpcomponents:httpclient-osgi</exclude>
               <exclude>org.apache.httpcomponents:httpcore</exclude>
+              <exclude>org.apache.httpcomponents:httpcore-nio</exclude>
               <exclude>org.apache.httpcomponents:httpmime</exclude>
               <exclude>org.apache.derby:derby</exclude>
               <exclude>org.apache.logging.log4j:*</exclude>
@@ -135,7 +136,11 @@
               <exclude>org.hsqldb:*</exclude>
               <exclude>org.mockito:*</exclude>
 
-              <exclude>org.slf4j:*</exclude>
+              <exclude>org.slf4j:jul-to-slf4j</exclude>
+              <exclude>org.slf4j:log4j-over-slf4j</exclude>
+              <exclude>org.slf4j:slf4j-api</exclude>
+              <exclude>org.slf4j:slf4j-log4j12</exclude>
+              <exclude>org.slf4j:slf4j-simple</exclude>
 
               <exclude>org.springframework*:*</exclude>
 
@@ -164,7 +169,9 @@
               <exclude>org.scala-lang:*</exclude>
               <exclude>org.apache.lucene:*</exclude>
 
-
+              <!-- Jetty -->
+              <exclude>org.eclipse.jetty:jetty-rewrite</exclude>
+              <exclude>org.eclipse.jetty:jetty-util-ajax</exclude>
 
               <!-- Unrelated -->
               <exclude>org.apache.servicemix.bundles:*</exclude>
diff --git a/platforms/spring-boot/spring-boot-dm/camel-spring-boot-dependencies/pom.xml b/platforms/spring-boot/spring-boot-dm/camel-spring-boot-dependencies/pom.xml
index 488da0d..c7b39f4 100644
--- a/platforms/spring-boot/spring-boot-dm/camel-spring-boot-dependencies/pom.xml
+++ b/platforms/spring-boot/spring-boot-dm/camel-spring-boot-dependencies/pom.xml
@@ -3225,11 +3225,6 @@
         <version>1.1.1</version>
       </dependency>
       <dependency>
-        <groupId>org.apache.httpcomponents</groupId>
-        <artifactId>httpcore-nio</artifactId>
-        <version>4.4.9</version>
-      </dependency>
-      <dependency>
         <groupId>org.apache.kafka</groupId>
         <artifactId>kafka-clients</artifactId>
         <version>1.0.1</version>
diff --git a/platforms/spring-boot/spring-boot-dm/pom.xml b/platforms/spring-boot/spring-boot-dm/pom.xml
index 9763728..6141dbd 100644
--- a/platforms/spring-boot/spring-boot-dm/pom.xml
+++ b/platforms/spring-boot/spring-boot-dm/pom.xml
@@ -41,7 +41,7 @@
 
   <properties>
     <!-- Spring-Boot target version -->
-    <spring-boot-version>1.5.11.RELEASE</spring-boot-version>
+    <spring-boot-version>2.0.0.RELEASE</spring-boot-version>
 
     <!-- The following dependencies should be aligned with the ones in standard camel parent -->
     <!-- Needed by BOM generator-->
diff --git a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/util/ArquillianPackager.java b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/util/ArquillianPackager.java
index 5119c86..5895357 100644
--- a/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/util/ArquillianPackager.java
+++ b/tests/camel-itest-spring-boot/src/test/java/org/apache/camel/itest/springboot/util/ArquillianPackager.java
@@ -152,7 +152,6 @@ public final class ArquillianPackager {
         commonExclusions.add(MavenDependencies.createExclusion("log4j", "log4j"));
         commonExclusions.add(MavenDependencies.createExclusion("log4j", "log4j-slf4j-impl"));
         commonExclusions.add(MavenDependencies.createExclusion("org.apache.logging.log4j", "log4j"));
-        commonExclusions.add(MavenDependencies.createExclusion("org.apache.logging.log4j", "log4j-jcl"));
         commonExclusions.add(MavenDependencies.createExclusion("org.apache.logging.log4j", "log4j-core"));
         commonExclusions.add(MavenDependencies.createExclusion("org.apache.logging.log4j", "log4j-slf4j-impl"));
         commonExclusions.add(MavenDependencies.createExclusion("log4j", "apache-log4j-extras"));
@@ -301,6 +300,8 @@ public final class ArquillianPackager {
         ignore.add("com.github.jnr");
         ignore.add("com.sun.xml.bind:jaxb-xjc");
         ignore.add("commons-beanutils:commons-beanutils");
+        ignore.add("io.dropwizard.metrics:metrics-json"); // PR to spring-boot
+        ignore.add("io.dropwizard.metrics:metrics-jvm"); // PR to spring-boot
         ignore.add("io.fabric8:kubernetes-");
         ignore.add("io.netty:netty:jar"); // an old version
         ignore.add("io.netty:netty-tcnative-boringssl-static");
@@ -317,17 +318,24 @@ public final class ArquillianPackager {
         ignore.add("org.apache.logging.log4j:log4j-jcl");
         ignore.add("org.apache.maven");
         ignore.add("org.apache.parquet");
+        ignore.add("org.apache.solr:solr-solrj"); // PR to spring-boot
         ignore.add("org.apache.velocity");
         ignore.add("org.apache.qpid:qpid-jms-client");
         ignore.add("org.opensaml");
         ignore.add("org.ow2.asm"); // No problem
         ignore.add("org.codehaus.plexus");
+        ignore.add("org.eclipse.jetty.websocket:websocket-api"); // PR to spring-boot
+        ignore.add("org.infinispan");
         ignore.add("org.jboss.arquillian.container");
+        ignore.add("org.jboss.logging");
+        ignore.add("org.jboss.marshalling");
         ignore.add("org.jboss:");
         ignore.add("org.hibernate:hibernate-validator"); // does not match with hibernate-core
         ignore.add("org.mortbay.jetty:servlet-api-2.5");
         ignore.add("org.scala-lang:scala-compiler");
+        ignore.add("org.slf4j:slf4j-ext"); // PR to spring-boot
         ignore.add("org.easytesting");
+        ignore.add("net.java.dev.jna:jna-platform"); // PR to spring-boot
         ignore.add("net.openhft");
         ignore.add("org.scala-lang.modules:scala-java8-compat_2.11");
         ignore.add("net.sourceforge.htmlunit:htmlunit-core-js"); // v 2.21 does not exist
@@ -551,10 +559,6 @@ public final class ArquillianPackager {
 
     private static String enforceExclusions(ITestConfig config, String dependencyXml, List<MavenDependencyExclusion> exclusions) {
 
-        if (dependencyXml.contains("<groupId>org.springframework.boot</groupId>") && dependencyXml.contains("<artifactId>spring-boot-starter")) {
-            return dependencyXml;
-        }
-
         if (!dependencyXml.contains("<exclusions>")) {
             dependencyXml = dependencyXml.replace("</dependency>", "<exclusions></exclusions></dependency>");
         }
diff --git a/tooling/maven/camel-package-maven-plugin/src/main/resources/spring-boot-fix-dependencies.properties b/tooling/maven/camel-package-maven-plugin/src/main/resources/spring-boot-fix-dependencies.properties
index b1ad02f..fe4498d 100644
--- a/tooling/maven/camel-package-maven-plugin/src/main/resources/spring-boot-fix-dependencies.properties
+++ b/tooling/maven/camel-package-maven-plugin/src/main/resources/spring-boot-fix-dependencies.properties
@@ -14,10 +14,10 @@
 ## See the License for the specific language governing permissions and
 ## limitations under the License.
 ## ---------------------------------------------------------------------------
+
 # This file contains additional dependencies needed by camel modules in a spring-boot deployment
 # Use comma-separated values to include multiple dependencies
 
-
 # Global dependencies included in all modules (except the ones in the list)
 global=org.apache.camel:camel-core-starter,org.apache.camel:camel-spring-boot-starter
 
@@ -42,7 +42,6 @@ camel-jcr=org.apache.lucene:lucene-core:${lucene3-version}
 camel-jira=com.atlassian.jira:jira-rest-java-client
 camel-jms=org.apache.geronimo.specs:geronimo-jms_1.1_spec
 camel-jpa=org.apache.geronimo.specs:geronimo-jpa_2.1_spec
-camel-kubernetes=org.hibernate:hibernate-validator
 
 camel-scala=org.scala-lang:scala-library:${scala-version},org.scala-lang.modules:scala-xml_2.11:${scalaxml-version}
 
@@ -56,8 +55,5 @@ camel-salesforce=org.eclipse.jetty:jetty-client,org.eclipse.jetty:jetty-util,org
 
 camel-servletlistener=javax.servlet:javax.servlet-api
 
-camel-swagger-java=org.hibernate:hibernate-validator
-
-
 # Existed for Netty 3
 exclude_camel-hbase=io.netty:netty

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 11/41: Upgrade consul to 1.0.6

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit c9c39ae2e3b081d7352a65fbf110eb77d500c88a
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Mar 19 09:46:16 2018 +0100

    Upgrade consul to 1.0.6
---
 .../service/src/main/bash/consul-run-linux.sh                           | 2 +-
 .../service/src/main/bash/consul-run-osx.sh                             | 2 +-
 .../services/src/main/bash/consul-run-osx.sh                            | 2 +-
 .../service/src/main/bash/consul-run-linux.sh                           | 2 +-
 .../service/src/main/bash/consul-run-osx.sh                             | 2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/examples/camel-example-spring-boot-health-checks/service/src/main/bash/consul-run-linux.sh b/examples/camel-example-spring-boot-health-checks/service/src/main/bash/consul-run-linux.sh
index 30a5074..f2235c9 100755
--- a/examples/camel-example-spring-boot-health-checks/service/src/main/bash/consul-run-linux.sh
+++ b/examples/camel-example-spring-boot-health-checks/service/src/main/bash/consul-run-linux.sh
@@ -1,6 +1,6 @@
 #!/usr/bin/env bash
 
-CONSUL_VER="1.0.3"
+CONSUL_VER="1.0.6"
 CONSUL_ZIP="consul_${CONSUL_VER}_linux_amd64.zip"
 
 # cleanup
diff --git a/examples/camel-example-spring-boot-health-checks/service/src/main/bash/consul-run-osx.sh b/examples/camel-example-spring-boot-health-checks/service/src/main/bash/consul-run-osx.sh
index 94eea48..776234b 100755
--- a/examples/camel-example-spring-boot-health-checks/service/src/main/bash/consul-run-osx.sh
+++ b/examples/camel-example-spring-boot-health-checks/service/src/main/bash/consul-run-osx.sh
@@ -1,6 +1,6 @@
 #!/usr/bin/env bash
 
-CONSUL_VER="1.0.3"
+CONSUL_VER="1.0.6"
 CONSUL_ZIP="consul_${CONSUL_VER}_darwin_amd64.zip"
 
 # cleanup
diff --git a/examples/camel-example-spring-boot-servicecall/services/src/main/bash/consul-run-osx.sh b/examples/camel-example-spring-boot-servicecall/services/src/main/bash/consul-run-osx.sh
index 75c2c70..57074b8 100755
--- a/examples/camel-example-spring-boot-servicecall/services/src/main/bash/consul-run-osx.sh
+++ b/examples/camel-example-spring-boot-servicecall/services/src/main/bash/consul-run-osx.sh
@@ -1,6 +1,6 @@
 #!/usr/bin/env bash
 
-CONSUL_VER="1.0.3"
+CONSUL_VER="1.0.6"
 CONSUL_ZIP="consul_${CONSUL_VER}_darwin_amd64.zip"
 
 # cleanup
diff --git a/examples/camel-example-spring-cloud-servicecall/service/src/main/bash/consul-run-linux.sh b/examples/camel-example-spring-cloud-servicecall/service/src/main/bash/consul-run-linux.sh
index 5c97ea4..2fc864a 100755
--- a/examples/camel-example-spring-cloud-servicecall/service/src/main/bash/consul-run-linux.sh
+++ b/examples/camel-example-spring-cloud-servicecall/service/src/main/bash/consul-run-linux.sh
@@ -1,6 +1,6 @@
 #!/usr/bin/env bash
 
-CONSUL_VER="1.0.3"
+CONSUL_VER="1.0.6"
 CONSUL_ZIP="consul_${CONSUL_VER}_linux_amd64.zip"
 
 # cleanup
diff --git a/examples/camel-example-spring-cloud-servicecall/service/src/main/bash/consul-run-osx.sh b/examples/camel-example-spring-cloud-servicecall/service/src/main/bash/consul-run-osx.sh
index 78fa2ab..4d52fb5 100755
--- a/examples/camel-example-spring-cloud-servicecall/service/src/main/bash/consul-run-osx.sh
+++ b/examples/camel-example-spring-cloud-servicecall/service/src/main/bash/consul-run-osx.sh
@@ -1,6 +1,6 @@
 #!/usr/bin/env bash
 
-CONSUL_VER="1.0.3"
+CONSUL_VER="1.0.6"
 CONSUL_ZIP="consul_${CONSUL_VER}_darwin_amd64.zip"
 
 # cleanup

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 35/41: CAMEL-12362: Upgrade to Apache Karaf 4.2.0

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 21a4dff0d5b5fef6811694ce920b401724f8d263
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Tue Apr 10 13:35:42 2018 +0200

    CAMEL-12362: Upgrade to Apache Karaf 4.2.0
---
 parent/pom.xml                                           | 2 +-
 platforms/karaf/features/src/main/resources/features.xml | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/parent/pom.xml b/parent/pom.xml
index af85bdd..2919792 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -445,7 +445,7 @@
     <kafka-version>1.0.1</kafka-version>
     <kafka-bundle-version>1.0.1_1</kafka-bundle-version>
     <karaf2-version>2.4.4</karaf2-version>
-    <karaf4-version>4.1.5</karaf4-version>
+    <karaf4-version>4.2.0</karaf4-version>
     <kie-version>7.3.0.Final</kie-version>
     <krati-version>0.4.9</krati-version>
     <kubernetes-client-version>3.1.10</kubernetes-client-version>
diff --git a/platforms/karaf/features/src/main/resources/features.xml b/platforms/karaf/features/src/main/resources/features.xml
index 4c4f74b..f5a0aeb 100644
--- a/platforms/karaf/features/src/main/resources/features.xml
+++ b/platforms/karaf/features/src/main/resources/features.xml
@@ -57,6 +57,7 @@
   <feature name='camel-blueprint' version='${project.version}' resolver='(obr)' start-level='50'>
     <feature version='${project.version}'>camel-core</feature>
     <bundle>mvn:org.apache.camel/camel-blueprint/${project.version}</bundle>
+    <feature>aries-blueprint</feature>
   </feature>
   <feature name='camel-spring' version='${project.version}' resolver='(obr)' start-level='50'>
     <bundle dependency='true'>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/${geronimo-jta-spec-version}</bundle>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 39/41: CAMEL-12430: Added missing JAR in karaf

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 486e4c50d4f5ad0eff3000c7b2eb59d148dbfb2a
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Tue Apr 10 16:58:08 2018 +0200

    CAMEL-12430: Added missing JAR in karaf
---
 platforms/karaf/features/src/main/resources/features.xml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/platforms/karaf/features/src/main/resources/features.xml b/platforms/karaf/features/src/main/resources/features.xml
index 85fe915..ca1da85 100644
--- a/platforms/karaf/features/src/main/resources/features.xml
+++ b/platforms/karaf/features/src/main/resources/features.xml
@@ -413,6 +413,7 @@
     <bundle dependency='true'>mvn:com.fasterxml.jackson.core/jackson-databind/${jackson2-version}</bundle>
     <bundle dependency='true'>mvn:com.fasterxml.jackson.core/jackson-annotations/${jackson2-version}</bundle>
     <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-guava/${jackson2-version}</bundle>
+    <bundle dependency='true'>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jdk8/${jackson2-version}</bundle>
     <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.okhttp/${okclient-bundle-version}</bundle>
     <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.okio/${squareup-okio-bundle-version}</bundle>
     <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.retrofit/${squareup-retrofit2-bundle-version}</bundle>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 21/41: Restored some UTs running fine

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 0dab0cd5bab8b4bb23cca2662782a158addef081
Author: Tomohisa Igarashi <tm...@gmail.com>
AuthorDate: Thu Mar 22 19:20:24 2018 -0400

    Restored some UTs running fine
---
 .../camel/spring/boot/cloud/CamelCloudServiceCallConfigurationTest.java | 2 --
 .../spring/boot/cloud/CamelCloudServiceCallGlobalConfigurationTest.java | 2 --
 .../camel/spring/boot/cloud/CamelCloudServiceCallRefExpressionTest.java | 2 --
 .../org/apache/camel/spring/boot/cloud/CamelCloudServiceCallTest.java   | 2 --
 4 files changed, 8 deletions(-)

diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallConfigurationTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallConfigurationTest.java
index 2585eb8..4226323 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallConfigurationTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallConfigurationTest.java
@@ -22,7 +22,6 @@ import org.apache.camel.cloud.ServiceDiscovery;
 import org.apache.camel.cloud.ServiceFilter;
 import org.apache.camel.cloud.ServiceLoadBalancer;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -54,7 +53,6 @@ import static org.junit.Assert.assertTrue;
         "debug=false"
     }
 )
-@Ignore("Does not work")
 public class CamelCloudServiceCallConfigurationTest {
     @Autowired
     private ApplicationContext ctx;
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallGlobalConfigurationTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallGlobalConfigurationTest.java
index 8d4fa9c..62946f7 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallGlobalConfigurationTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallGlobalConfigurationTest.java
@@ -22,7 +22,6 @@ import org.apache.camel.ProducerTemplate;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
 import org.junit.Assert;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -48,7 +47,6 @@ import org.springframework.test.context.junit4.SpringRunner;
     }
    
 )
-@Ignore("Does not work")
 public class CamelCloudServiceCallGlobalConfigurationTest {
     @Autowired
     private ProducerTemplate template;
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallRefExpressionTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallRefExpressionTest.java
index 25ddec3..c363367 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallRefExpressionTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallRefExpressionTest.java
@@ -24,7 +24,6 @@ import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.language.SimpleExpression;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
 import org.junit.Assert;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -50,7 +49,6 @@ import org.springframework.test.context.junit4.SpringRunner;
     }
     
 )
-@Ignore("Does not work")
 public class CamelCloudServiceCallRefExpressionTest {
     @Autowired
     private ProducerTemplate template;
diff --git a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallTest.java b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallTest.java
index 6174e41..cf85d8f 100644
--- a/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallTest.java
+++ b/components/camel-spring-boot/src/test/java/org/apache/camel/spring/boot/cloud/CamelCloudServiceCallTest.java
@@ -22,7 +22,6 @@ import org.apache.camel.ProducerTemplate;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
 import org.junit.Assert;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -48,7 +47,6 @@ import org.springframework.test.context.junit4.SpringRunner;
     }
    
 )
-@Ignore("Does not work")
 public class CamelCloudServiceCallTest {
     @Autowired
     private ProducerTemplate template;

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 18/41: CAMEL-12380: remove spring-boot 1.5.x property resolvers

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 31f7c5995b5da06f015415380de50813c5c3ddeb
Author: nferraro <ni...@gmail.com>
AuthorDate: Thu Mar 22 11:17:20 2018 +0100

    CAMEL-12380: remove spring-boot 1.5.x property resolvers
---
 .../boot/security/CamelSSLAutoConfiguration.java   |  12 +-
 .../boot/util/HierarchicalPropertiesEvaluator.java |  11 +-
 .../spring/boot/util/PropertySourceUtils.java      |  93 --------
 .../camel/spring/boot/util/RelaxedNames.java       | 260 ---------------------
 .../spring/boot/util/RelaxedPropertyResolver.java  | 162 -------------
 .../HazelcastComponentAutoConfiguration.java       |   8 +-
 .../packaging/SpringBootAutoConfigurationMojo.java |   7 +-
 7 files changed, 20 insertions(+), 533 deletions(-)

diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/security/CamelSSLAutoConfiguration.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/security/CamelSSLAutoConfiguration.java
index d8d54ad..33bd857 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/security/CamelSSLAutoConfiguration.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/security/CamelSSLAutoConfiguration.java
@@ -16,10 +16,7 @@
  */
 package org.apache.camel.spring.boot.security;
 
-import java.util.Map;
-
 import org.apache.camel.spring.boot.CamelAutoConfiguration;
-import org.apache.camel.spring.boot.util.RelaxedPropertyResolver;
 import org.apache.camel.util.jsse.GlobalSSLContextParametersSupplier;
 import org.apache.camel.util.jsse.SSLContextParameters;
 import org.springframework.boot.autoconfigure.AutoConfigureBefore;
@@ -27,12 +24,17 @@ import org.springframework.boot.autoconfigure.condition.ConditionMessage;
 import org.springframework.boot.autoconfigure.condition.ConditionOutcome;
 import org.springframework.boot.autoconfigure.condition.SpringBootCondition;
 import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import org.springframework.boot.context.properties.bind.Bindable;
+import org.springframework.boot.context.properties.bind.Binder;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.ConditionContext;
 import org.springframework.context.annotation.Conditional;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.core.type.AnnotatedTypeMetadata;
 
+import java.util.Collections;
+import java.util.Map;
+
 @Configuration
 @AutoConfigureBefore(CamelAutoConfiguration.class)
 @EnableConfigurationProperties(CamelSSLConfigurationProperties.class)
@@ -48,8 +50,8 @@ public class CamelSSLAutoConfiguration {
     public static class Condition extends SpringBootCondition {
         @Override
         public ConditionOutcome getMatchOutcome(ConditionContext context, AnnotatedTypeMetadata annotatedTypeMetadata) {
-            RelaxedPropertyResolver resolver = new RelaxedPropertyResolver(context.getEnvironment(), "camel.ssl.config");
-            Map<String, Object> sslProperties = resolver.getSubProperties(".");
+            Binder binder = Binder.get(context.getEnvironment());
+            Map<String, Object> sslProperties = binder.bind("camel.ssl.config", Bindable.mapOf(String.class, Object.class)).orElse(Collections.emptyMap());
             ConditionMessage.Builder message = ConditionMessage.forCondition("camel.ssl.config");
             if (sslProperties.size() > 0) {
                 return ConditionOutcome.match(message.because("enabled"));
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/HierarchicalPropertiesEvaluator.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/HierarchicalPropertiesEvaluator.java
index a898d55..3d5ef7e 100644
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/HierarchicalPropertiesEvaluator.java
+++ b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/HierarchicalPropertiesEvaluator.java
@@ -16,6 +16,8 @@
  */
 package org.apache.camel.spring.boot.util;
 
+import org.springframework.boot.context.properties.bind.Bindable;
+import org.springframework.boot.context.properties.bind.Binder;
 import org.springframework.core.env.Environment;
 
 public final class HierarchicalPropertiesEvaluator {
@@ -46,11 +48,8 @@ public final class HierarchicalPropertiesEvaluator {
     }
 
     private static boolean isEnabled(Environment environment, String prefix, boolean defaultValue) {
-        RelaxedPropertyResolver resolver = new RelaxedPropertyResolver(
-            environment,
-            prefix.endsWith(".") ? prefix : prefix + "."
-        );
-
-        return resolver.getProperty("enabled", Boolean.class, defaultValue);
+        String property = prefix.endsWith(".") ? prefix + "enabled" : prefix + ".enabled";
+        Binder binder = Binder.get(environment);
+        return binder.bind(property, Bindable.of(Boolean.class)).orElse(defaultValue);
     }
 }
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/PropertySourceUtils.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/PropertySourceUtils.java
deleted file mode 100644
index 073c7f9..0000000
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/PropertySourceUtils.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.util;
-
-import java.util.Collections;
-import java.util.LinkedHashMap;
-import java.util.Map;
-
-import org.springframework.core.env.EnumerablePropertySource;
-import org.springframework.core.env.PropertySource;
-import org.springframework.core.env.PropertySources;
-
-/**
- * Convenience class for manipulating PropertySources.
- *
- * @author Dave Syer
- * @see PropertySource
- * @see PropertySources
- *
- * Source code copied from spring-boot 1.5.6.RELEASE
- */
-public abstract class PropertySourceUtils {
-
-    /**
-     * Return a Map of all values from the specified {@link PropertySources} that start
-     * with a particular key.
-     * @param propertySources the property sources to scan
-     * @param keyPrefix the key prefixes to test
-     * @return a map of all sub properties starting with the specified key prefixes.
-     * @see PropertySourceUtils#getSubProperties(PropertySources, String, String)
-     */
-    public static Map<String, Object> getSubProperties(PropertySources propertySources,
-                                                       String keyPrefix) {
-        return PropertySourceUtils.getSubProperties(propertySources, null, keyPrefix);
-    }
-
-    /**
-     * Return a Map of all values from the specified {@link PropertySources} that start
-     * with a particular key.
-     * @param propertySources the property sources to scan
-     * @param rootPrefix a root prefix to be prepended to the keyPrefix (can be
-     * {@code null})
-     * @param keyPrefix the key prefixes to test
-     * @return a map of all sub properties starting with the specified key prefixes.
-     * @see #getSubProperties(PropertySources, String, String)
-     */
-    public static Map<String, Object> getSubProperties(PropertySources propertySources,
-                                                       String rootPrefix, String keyPrefix) {
-        RelaxedNames keyPrefixes = new RelaxedNames(keyPrefix);
-        Map<String, Object> subProperties = new LinkedHashMap<String, Object>();
-        for (PropertySource<?> source : propertySources) {
-            if (source instanceof EnumerablePropertySource) {
-                for (String name : ((EnumerablePropertySource<?>) source)
-                    .getPropertyNames()) {
-                    String key = PropertySourceUtils.getSubKey(name, rootPrefix,
-                        keyPrefixes);
-                    if (key != null && !subProperties.containsKey(key)) {
-                        subProperties.put(key, source.getProperty(name));
-                    }
-                }
-            }
-        }
-        return Collections.unmodifiableMap(subProperties);
-    }
-
-    private static String getSubKey(String name, String rootPrefixes,
-                                    RelaxedNames keyPrefix) {
-        rootPrefixes = rootPrefixes == null ? "" : rootPrefixes;
-        for (String rootPrefix : new RelaxedNames(rootPrefixes)) {
-            for (String candidateKeyPrefix : keyPrefix) {
-                if (name.startsWith(rootPrefix + candidateKeyPrefix)) {
-                    return name.substring((rootPrefix + candidateKeyPrefix).length());
-                }
-            }
-        }
-        return null;
-    }
-
-}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/RelaxedNames.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/RelaxedNames.java
deleted file mode 100644
index 54fbfcd..0000000
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/RelaxedNames.java
+++ /dev/null
@@ -1,260 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.util;
-
-import java.util.Iterator;
-import java.util.LinkedHashSet;
-import java.util.Set;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.springframework.util.StringUtils;
-
-/**
- * Generates relaxed name variations from a given source.
- *
- * @author Phillip Webb
- * @author Dave Syer
- * @see RelaxedPropertyResolver
- *
- * Source code copied from spring-boot 1.5.6.RELEASE
- */
-public final class RelaxedNames implements Iterable<String> {
-
-    private static final Pattern CAMEL_CASE_PATTERN = Pattern.compile("([^A-Z-])([A-Z])");
-
-    private static final Pattern SEPARATED_TO_CAMEL_CASE_PATTERN = Pattern
-        .compile("[_\\-.]");
-
-    private final String name;
-
-    private final Set<String> values = new LinkedHashSet<String>();
-
-    /**
-     * Create a new {@link RelaxedNames} instance.
-     * @param name the source name. For the maximum number of variations specify the name
-     * using dashed notation (e.g. {@literal my-property-name}
-     */
-    public RelaxedNames(String name) {
-        this.name = name == null ? "" : name;
-        initialize(RelaxedNames.this.name, this.values);
-    }
-
-    @Override
-    public Iterator<String> iterator() {
-        return this.values.iterator();
-    }
-
-    private void initialize(String name, Set<String> values) {
-        if (values.contains(name)) {
-            return;
-        }
-        for (Variation variation : Variation.values()) {
-            for (Manipulation manipulation : Manipulation.values()) {
-                String result = name;
-                result = manipulation.apply(result);
-                result = variation.apply(result);
-                values.add(result);
-                initialize(result, values);
-            }
-        }
-    }
-
-    /**
-     * Name variations.
-     */
-    enum Variation {
-
-        NONE {
-
-            @Override
-            public String apply(String value) {
-                return value;
-            }
-
-        },
-
-        LOWERCASE {
-
-            @Override
-            public String apply(String value) {
-                return value.isEmpty() ? value : value.toLowerCase();
-            }
-
-        },
-
-        UPPERCASE {
-
-            @Override
-            public String apply(String value) {
-                return value.isEmpty() ? value : value.toUpperCase();
-            }
-
-        };
-
-        public abstract String apply(String value);
-
-    }
-
-    /**
-     * Name manipulations.
-     */
-    enum Manipulation {
-
-        NONE {
-
-            @Override
-            public String apply(String value) {
-                return value;
-            }
-
-        },
-
-        HYPHEN_TO_UNDERSCORE {
-
-            @Override
-            public String apply(String value) {
-                return value.indexOf('-') != -1 ? value.replace('-', '_') : value;
-            }
-
-        },
-
-        UNDERSCORE_TO_PERIOD {
-
-            @Override
-            public String apply(String value) {
-                return value.indexOf('_') != -1 ? value.replace('_', '.') : value;
-            }
-
-        },
-
-        PERIOD_TO_UNDERSCORE {
-
-            @Override
-            public String apply(String value) {
-                return value.indexOf('.') != -1 ? value.replace('.', '_') : value;
-            }
-
-        },
-
-        CAMELCASE_TO_UNDERSCORE {
-
-            @Override
-            public String apply(String value) {
-                if (value.isEmpty()) {
-                    return value;
-                }
-                Matcher matcher = CAMEL_CASE_PATTERN.matcher(value);
-                if (!matcher.find()) {
-                    return value;
-                }
-                matcher = matcher.reset();
-                StringBuffer result = new StringBuffer();
-                while (matcher.find()) {
-                    matcher.appendReplacement(result, matcher.group(1) + '_'
-                        + StringUtils.uncapitalize(matcher.group(2)));
-                }
-                matcher.appendTail(result);
-                return result.toString();
-            }
-
-        },
-
-        CAMELCASE_TO_HYPHEN {
-
-            @Override
-            public String apply(String value) {
-                if (value.isEmpty()) {
-                    return value;
-                }
-                Matcher matcher = CAMEL_CASE_PATTERN.matcher(value);
-                if (!matcher.find()) {
-                    return value;
-                }
-                matcher = matcher.reset();
-                StringBuffer result = new StringBuffer();
-                while (matcher.find()) {
-                    matcher.appendReplacement(result, matcher.group(1) + '-'
-                        + StringUtils.uncapitalize(matcher.group(2)));
-                }
-                matcher.appendTail(result);
-                return result.toString();
-            }
-
-        },
-
-        SEPARATED_TO_CAMELCASE {
-
-            @Override
-            public String apply(String value) {
-                return separatedToCamelCase(value, false);
-            }
-
-        },
-
-        CASE_INSENSITIVE_SEPARATED_TO_CAMELCASE {
-
-            @Override
-            public String apply(String value) {
-                return separatedToCamelCase(value, true);
-            }
-
-        };
-
-        private static final char[] SUFFIXES = new char[]{'_', '-', '.'};
-
-        public abstract String apply(String value);
-
-        private static String separatedToCamelCase(String value,
-                                                   boolean caseInsensitive) {
-            if (value.isEmpty()) {
-                return value;
-            }
-            StringBuilder builder = new StringBuilder();
-            for (String field : SEPARATED_TO_CAMEL_CASE_PATTERN.split(value)) {
-                field = caseInsensitive ? field.toLowerCase() : field;
-                builder.append(
-                    builder.length() == 0 ? field : StringUtils.capitalize(field));
-            }
-            char lastChar = value.charAt(value.length() - 1);
-            for (char suffix : SUFFIXES) {
-                if (lastChar == suffix) {
-                    builder.append(suffix);
-                    break;
-                }
-            }
-            return builder.toString();
-        }
-
-    }
-
-    /**
-     * Return a {@link RelaxedNames} for the given source camelCase source name.
-     * @param name the source name in camelCase
-     * @return the relaxed names
-     */
-    public static RelaxedNames forCamelCase(String name) {
-        StringBuilder result = new StringBuilder();
-        for (char c : name.toCharArray()) {
-            result.append(Character.isUpperCase(c) && result.length() > 0
-                && result.charAt(result.length() - 1) != '-'
-                ? "-" + Character.toLowerCase(c) : c);
-        }
-        return new RelaxedNames(result.toString());
-    }
-
-}
diff --git a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/RelaxedPropertyResolver.java b/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/RelaxedPropertyResolver.java
deleted file mode 100644
index bc26618..0000000
--- a/components/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/util/RelaxedPropertyResolver.java
+++ /dev/null
@@ -1,162 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.spring.boot.util;
-
-import java.util.Map;
-
-import org.springframework.core.env.ConfigurableEnvironment;
-import org.springframework.core.env.Environment;
-import org.springframework.core.env.PropertyResolver;
-import org.springframework.core.env.PropertySourcesPropertyResolver;
-import org.springframework.util.Assert;
-
-/**
- * {@link PropertyResolver} that attempts to resolve values using {@link RelaxedNames}.
- *
- * @author Phillip Webb
- * @see RelaxedNames
- *
- * Source code copied from spring-boot 1.5.6.RELEASE
- */
-public class RelaxedPropertyResolver implements PropertyResolver {
-
-    private final PropertyResolver resolver;
-
-    private final String prefix;
-
-    public RelaxedPropertyResolver(PropertyResolver resolver) {
-        this(resolver, null);
-    }
-
-    public RelaxedPropertyResolver(PropertyResolver resolver, String prefix) {
-        Assert.notNull(resolver, "PropertyResolver must not be null");
-        this.resolver = resolver;
-        this.prefix = prefix == null ? "" : prefix;
-    }
-
-    @Override
-    public String getRequiredProperty(String key) throws IllegalStateException {
-        return getRequiredProperty(key, String.class);
-    }
-
-    @Override
-    public <T> T getRequiredProperty(String key, Class<T> targetType)
-        throws IllegalStateException {
-        T value = getProperty(key, targetType);
-        Assert.state(value != null, String.format("required key [%s] not found", key));
-        return value;
-    }
-
-    @Override
-    public String getProperty(String key) {
-        return getProperty(key, String.class, null);
-    }
-
-    @Override
-    public String getProperty(String key, String defaultValue) {
-        return getProperty(key, String.class, defaultValue);
-    }
-
-    @Override
-    public <T> T getProperty(String key, Class<T> targetType) {
-        return getProperty(key, targetType, null);
-    }
-
-    @Override
-    public <T> T getProperty(String key, Class<T> targetType, T defaultValue) {
-        RelaxedNames prefixes = new RelaxedNames(this.prefix);
-        RelaxedNames keys = new RelaxedNames(key);
-        for (String prefix : prefixes) {
-            for (String relaxedKey : keys) {
-                if (this.resolver.containsProperty(prefix + relaxedKey)) {
-                    return this.resolver.getProperty(prefix + relaxedKey, targetType);
-                }
-            }
-        }
-        return defaultValue;
-    }
-
-    // not implemented in spring boot 2 and not in use by us
-    public <T> Class<T> getPropertyAsClass(String key, Class<T> targetType) {
-        return null;
-    }
-
-    @Override
-    public boolean containsProperty(String key) {
-        RelaxedNames prefixes = new RelaxedNames(this.prefix);
-        RelaxedNames keys = new RelaxedNames(key);
-        for (String prefix : prefixes) {
-            for (String relaxedKey : keys) {
-                if (this.resolver.containsProperty(prefix + relaxedKey)) {
-                    return true;
-                }
-            }
-        }
-        return false;
-    }
-
-    @Override
-    public String resolvePlaceholders(String text) {
-        throw new UnsupportedOperationException(
-            "Unable to resolve placeholders with relaxed properties");
-    }
-
-    @Override
-    public String resolveRequiredPlaceholders(String text)
-        throws IllegalArgumentException {
-        throw new UnsupportedOperationException(
-            "Unable to resolve placeholders with relaxed properties");
-    }
-
-    /**
-     * Return a Map of all values from all underlying properties that start with the
-     * specified key. NOTE: this method can only be used if the underlying resolver is a
-     * {@link ConfigurableEnvironment}.
-     * @param keyPrefix the key prefix used to filter results
-     * @return a map of all sub properties starting with the specified key prefix.
-     * @see PropertySourceUtils#getSubProperties
-     */
-    public Map<String, Object> getSubProperties(String keyPrefix) {
-        Assert.isInstanceOf(ConfigurableEnvironment.class, this.resolver,
-            "SubProperties not available.");
-        ConfigurableEnvironment env = (ConfigurableEnvironment) this.resolver;
-        return PropertySourceUtils.getSubProperties(env.getPropertySources(), this.prefix,
-            keyPrefix);
-    }
-
-    /**
-     * Return a property resolver for the environment, preferring one that ignores
-     * unresolvable nested placeholders.
-     * @param environment the source environment
-     * @param prefix the prefix
-     * @return a property resolver for the environment
-     * @since 1.4.3
-     */
-    public static RelaxedPropertyResolver ignoringUnresolvableNestedPlaceholders(
-        Environment environment, String prefix) {
-        Assert.notNull(environment, "Environment must not be null");
-        PropertyResolver resolver = environment;
-        if (environment instanceof ConfigurableEnvironment) {
-            resolver = new PropertySourcesPropertyResolver(
-                ((ConfigurableEnvironment) environment).getPropertySources());
-            ((PropertySourcesPropertyResolver) resolver)
-                .setIgnoreUnresolvableNestedPlaceholders(true);
-        }
-        return new RelaxedPropertyResolver(resolver, prefix);
-    }
-
-}
diff --git a/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentAutoConfiguration.java b/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentAutoConfiguration.java
index d6de019..ed00daf 100644
--- a/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentAutoConfiguration.java
+++ b/platforms/spring-boot/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentAutoConfiguration.java
@@ -21,7 +21,6 @@ import java.util.Map;
 import javax.annotation.Generated;
 import org.apache.camel.CamelContext;
 import org.apache.camel.component.hazelcast.HazelcastComponent;
-import org.apache.camel.spring.boot.util.RelaxedPropertyResolver;
 import org.apache.camel.util.IntrospectionSupport;
 import org.springframework.boot.autoconfigure.AutoConfigureAfter;
 import org.springframework.boot.autoconfigure.condition.ConditionMessage;
@@ -31,6 +30,8 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
 import org.springframework.boot.autoconfigure.condition.SpringBootCondition;
 import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import org.springframework.boot.context.properties.bind.Bindable;
+import org.springframework.boot.context.properties.bind.Binder;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.ConditionContext;
 import org.springframework.context.annotation.Conditional;
@@ -106,9 +107,8 @@ public class HazelcastComponentAutoConfiguration {
         private boolean isEnabled(
                 org.springframework.context.annotation.ConditionContext context,
                 java.lang.String prefix, boolean defaultValue) {
-            RelaxedPropertyResolver resolver = new RelaxedPropertyResolver(
-                    context.getEnvironment(), prefix);
-            return resolver.getProperty("enabled", Boolean.class, defaultValue);
+            String property = prefix.endsWith(".") ? prefix + "enabled" : prefix + ".enabled";
+            return Binder.get(context.getEnvironment()).bind(property, Bindable.of(Boolean.class)).orElse(defaultValue);
         }
     }
 }
\ No newline at end of file
diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/SpringBootAutoConfigurationMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/SpringBootAutoConfigurationMojo.java
index 4ca37ef..ecb86ac 100644
--- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/SpringBootAutoConfigurationMojo.java
+++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/SpringBootAutoConfigurationMojo.java
@@ -2241,7 +2241,8 @@ public class SpringBootAutoConfigurationMojo extends AbstractMojo {
         parentClass.addImport(ConditionMessage.class);
         parentClass.addImport(ConditionContext.class);
         parentClass.addImport(ConditionOutcome.class);
-        parentClass.addImport("org.apache.camel.spring.boot.util.RelaxedPropertyResolver");
+        parentClass.addImport("org.springframework.boot.context.properties.bind.Bindable");
+        parentClass.addImport("org.springframework.boot.context.properties.bind.Binder");
         parentClass.addImport(AnnotatedTypeMetadata.class);
         parentClass.addImport(SpringBootCondition.class);
 
@@ -2263,8 +2264,8 @@ public class SpringBootAutoConfigurationMojo extends AbstractMojo {
         isEnabled.addParameter(boolean.class, "defaultValue");
         isEnabled.setReturnType(boolean.class);
         isEnabled.setBody(new StringBuilder()
-            .append("RelaxedPropertyResolver resolver = new RelaxedPropertyResolver(context.getEnvironment(), prefix);\n")
-            .append("return resolver.getProperty(\"enabled\", Boolean.class, defaultValue);")
+            .append("String property = prefix.endsWith(\".\") ? prefix + \"enabled\" : prefix + \".enabled\";\n")
+            .append("return Binder.get(context.getEnvironment()).bind(property, Bindable.of(Boolean.class)).orElse(defaultValue);")
             .toString()
         );
 

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 23/41: CAMEL-12373: Adjusted to SB2 actuator endpoint property names (endpoints.* => management.endpoint*)

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit ae71adf0917b151d08e8f7ad692ea97e17063813
Author: Tomohisa Igarashi <tm...@gmail.com>
AuthorDate: Fri Mar 23 13:06:03 2018 -0400

    CAMEL-12373: Adjusted to SB2 actuator endpoint property names (endpoints.* => management.endpoint*)
---
 .../src/main/resources/application.properties                |  2 +-
 .../cluster-node/src/main/resources/application.properties   |  8 ++++----
 .../application/src/main/resources/application.properties    |  8 ++++----
 .../service/src/main/resources/application.properties        |  4 ++--
 .../src/main/resources/application.properties                |  8 ++++----
 .../consumer/src/main/resources/application.properties       |  4 ++--
 .../services/src/main/resources/application.properties       |  4 ++--
 .../src/main/resources/application.properties                | 12 ++++++------
 .../src/main/resources/application.properties                |  2 +-
 .../src/main/resources/application.properties                |  4 ++--
 .../consumer/src/main/resources/application.properties       |  4 ++--
 .../service/src/main/resources/application.properties        |  4 ++--
 12 files changed, 32 insertions(+), 32 deletions(-)

diff --git a/examples/camel-example-rabbitmq/src/main/resources/application.properties b/examples/camel-example-rabbitmq/src/main/resources/application.properties
index e414fc0..cd4dc76 100644
--- a/examples/camel-example-rabbitmq/src/main/resources/application.properties
+++ b/examples/camel-example-rabbitmq/src/main/resources/application.properties
@@ -31,7 +31,7 @@ camel.springboot.name = SampleCamel
 # all access to actuator endpoints without security
 management.security.enabled = false
 # turn on actuator health check
-endpoints.health.enabled = true
+management.endpoint.health.enabled = true
 
 # configure connection to the rabbit mq broker using camel-rabbitmq style
 # note you can also configure from Java code, see SampleCamelApplication.java
diff --git a/examples/camel-example-spring-boot-clustered-route-controller/cluster-node/src/main/resources/application.properties b/examples/camel-example-spring-boot-clustered-route-controller/cluster-node/src/main/resources/application.properties
index e5f6c92..52314b2 100644
--- a/examples/camel-example-spring-boot-clustered-route-controller/cluster-node/src/main/resources/application.properties
+++ b/examples/camel-example-spring-boot-clustered-route-controller/cluster-node/src/main/resources/application.properties
@@ -24,9 +24,9 @@ logging.level.org.apache.camel.impl.cluster = DEBUG
 logging.level.org.apache.camel.component.atomix = DEBUG
 logging.level.org.apache.camel.examples.cluster = DEBUG
 
-endpoints.enabled = false
-endpoints.jmx.enabled = false
-endpoints.health.enabled = true
+management.endpoints.enabled-by-default = false
+management.endpoints.jmx.enabled = false
+management.endpoint.health.enabled = true
 
 management.port = -1
 
@@ -44,4 +44,4 @@ camel.clustered.controller.routes.heartbeat.clustered = false
 camel.component.atomix.cluster.service.enabled = true
 camel.component.atomix.cluster.service.mode = client
 camel.component.atomix.cluster.service.nodes = localhost:8700
-camel.component.atomix.cluster.service.id = ${node.id}
\ No newline at end of file
+camel.component.atomix.cluster.service.id = ${node.id}
diff --git a/examples/camel-example-spring-boot-health-checks/application/src/main/resources/application.properties b/examples/camel-example-spring-boot-health-checks/application/src/main/resources/application.properties
index f10fe56..ae3be62 100644
--- a/examples/camel-example-spring-boot-health-checks/application/src/main/resources/application.properties
+++ b/examples/camel-example-spring-boot-health-checks/application/src/main/resources/application.properties
@@ -23,10 +23,10 @@ logging.level.org.apache.camel.health = DEBUG
 logging.level.org.apache.camel.impl.health = DEBUG
 logging.level.sample.camel = DEBUG
 
-endpoints.enabled = false
-endpoints.mappings.enabled = true
-endpoints.health.enabled = true
-endpoints.camelhealthchecks.enabled = true
+management.endpoints.enabled-by-default = false
+management.endpoint.mappings.enabled = true
+management.endpoint.health.enabled = true
+management.endpoint.camelhealthchecks.enabled = true
 
 management.security.enabled = false
 
diff --git a/examples/camel-example-spring-boot-health-checks/service/src/main/resources/application.properties b/examples/camel-example-spring-boot-health-checks/service/src/main/resources/application.properties
index c98dcbf..03aa57e 100644
--- a/examples/camel-example-spring-boot-health-checks/service/src/main/resources/application.properties
+++ b/examples/camel-example-spring-boot-health-checks/service/src/main/resources/application.properties
@@ -21,5 +21,5 @@ logging.level.org.springframework = INFO
 
 server.port = 8081
 
-endpoints.enabled = false
-endpoints.health.enabled = true
\ No newline at end of file
+management.endpoints.enabled-by-default = false
+management.endpoint.health.enabled = true
diff --git a/examples/camel-example-spring-boot-master/src/main/resources/application.properties b/examples/camel-example-spring-boot-master/src/main/resources/application.properties
index 6d09642..9f09fb4 100644
--- a/examples/camel-example-spring-boot-master/src/main/resources/application.properties
+++ b/examples/camel-example-spring-boot-master/src/main/resources/application.properties
@@ -25,9 +25,9 @@ logging.level.org.apache.camel.component.atomix = DEBUG
 logging.level.org.apache.camel.component.master = DEBUG
 logging.level.org.apache.camel.examples.cluster = DEBUG
 
-endpoints.enabled = false
-endpoints.jmx.enabled = false
-endpoints.health.enabled = true
+management.endpoints.enabled-by-default = false
+management.endpoints.jmx.enabled = false
+management.endpoint.health.enabled = true
 
 management.port = -1
 
@@ -39,4 +39,4 @@ camel.springboot.jmx-enabled = false
 
 camel.component.file.cluster.service.enabled = true
 camel.component.file.cluster.service.id = ${node.id}
-camel.component.file.cluster.service.root = ${java.io.tmpdir}
\ No newline at end of file
+camel.component.file.cluster.service.root = ${java.io.tmpdir}
diff --git a/examples/camel-example-spring-boot-servicecall/consumer/src/main/resources/application.properties b/examples/camel-example-spring-boot-servicecall/consumer/src/main/resources/application.properties
index aa92431..9189ced 100644
--- a/examples/camel-example-spring-boot-servicecall/consumer/src/main/resources/application.properties
+++ b/examples/camel-example-spring-boot-servicecall/consumer/src/main/resources/application.properties
@@ -16,8 +16,8 @@
 ## ---------------------------------------------------------------------------
 
 # Spring Boot
-endpoints.enabled=false
-endpoints.health.enabled=true
+management.endpoints.enabled-by-default=false
+management.endpoint.health.enabled=true
 
 # Camel
 camel.springboot.main-run-controller=true
diff --git a/examples/camel-example-spring-boot-servicecall/services/src/main/resources/application.properties b/examples/camel-example-spring-boot-servicecall/services/src/main/resources/application.properties
index 093c12d..cc61bad 100644
--- a/examples/camel-example-spring-boot-servicecall/services/src/main/resources/application.properties
+++ b/examples/camel-example-spring-boot-servicecall/services/src/main/resources/application.properties
@@ -16,8 +16,8 @@
 ## ---------------------------------------------------------------------------
 
 # Spring Boot
-endpoints.enabled=false
-endpoints.health.enabled=true
+management.endpoints.enabled-by-default=false
+management.endpoint.health.enabled=true
 
 # Camel
 camel.springboot.main-run-controller=true
diff --git a/examples/camel-example-spring-boot-supervising-route-controller/src/main/resources/application.properties b/examples/camel-example-spring-boot-supervising-route-controller/src/main/resources/application.properties
index c3a7f5b..e19589a 100644
--- a/examples/camel-example-spring-boot-supervising-route-controller/src/main/resources/application.properties
+++ b/examples/camel-example-spring-boot-supervising-route-controller/src/main/resources/application.properties
@@ -24,17 +24,17 @@ logging.level.org.apache.camel.impl.SupervisingRouteController = DEBUG
 logging.level.org.apache.camel.util.backoff = DEBUG
 logging.level.sample.camel = DEBUG
 
-endpoints.enabled = true
-endpoints.jmx.enabled = false
-endpoints.health.enabled = true
+management.endpoints.enabled-by-default = true
+management.endpoints.jmx.enabled = false
+management.endpoint.health.enabled = true
 
 # camel routes is by default enabled
 # so you do not have to configure below
-# endpoints.camelroutes.path = /camel/routes
-# endpoints.camelroutes.enabled = true
+# management.endpoint.camelroutes.path = /camel/routes
+# management.endpoint.camelroutes.enabled = true
 
 # turn off read-only so we can stop/start the Camel routes
-endpoints.camelroutes.read-only = false
+management.endpoint.camelroutes.read-only = false
 
 management.security.enabled = false
 
diff --git a/examples/camel-example-spring-boot-xml/src/main/resources/application.properties b/examples/camel-example-spring-boot-xml/src/main/resources/application.properties
index 75a10de..49a5e9f 100644
--- a/examples/camel-example-spring-boot-xml/src/main/resources/application.properties
+++ b/examples/camel-example-spring-boot-xml/src/main/resources/application.properties
@@ -37,7 +37,7 @@ timer.period = 2000
 # all access to actuator endpoints without security
 management.security.enabled = false
 # turn on actuator health check
-endpoints.health.enabled = true
+management.endpoint.health.enabled = true
 
 # to configure logging levels
 #logging.level.org.springframework = INFO
diff --git a/examples/camel-example-spring-boot/src/main/resources/application.properties b/examples/camel-example-spring-boot/src/main/resources/application.properties
index 032746e..0260864 100644
--- a/examples/camel-example-spring-boot/src/main/resources/application.properties
+++ b/examples/camel-example-spring-boot/src/main/resources/application.properties
@@ -35,8 +35,8 @@ timer.period = 2000
 management.endpoint.health.show-details=always
 
 # allow to obtain basic information about Camel routes (read only mode)
-endpoints.camelroutes.enabled = true
-endpoints.camelroutes.read-only = true
+management.endpoint.camelroutes.enabled = true
+management.endpoint.camelroutes.read-only = true
 
 # to turn off Camel info in: /health/info
 #management.info.camel.enabled=false
diff --git a/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties b/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties
index c5d7a0b..e5df334 100644
--- a/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties
+++ b/examples/camel-example-spring-cloud-servicecall/consumer/src/main/resources/application.properties
@@ -16,8 +16,8 @@
 ## ---------------------------------------------------------------------------
 
 # Spring Boot
-endpoints.enabled=false
-endpoints.health.enabled=true
+management.endpoints.enabled-by-default=false
+management.endpoint.health.enabled=true
 
 # Spring cloud
 spring.cloud.consul.config.enabled=false
diff --git a/examples/camel-example-spring-cloud-servicecall/service/src/main/resources/application.properties b/examples/camel-example-spring-cloud-servicecall/service/src/main/resources/application.properties
index 093c12d..cc61bad 100644
--- a/examples/camel-example-spring-cloud-servicecall/service/src/main/resources/application.properties
+++ b/examples/camel-example-spring-cloud-servicecall/service/src/main/resources/application.properties
@@ -16,8 +16,8 @@
 ## ---------------------------------------------------------------------------
 
 # Spring Boot
-endpoints.enabled=false
-endpoints.health.enabled=true
+management.endpoints.enabled-by-default=false
+management.endpoint.health.enabled=true
 
 # Camel
 camel.springboot.main-run-controller=true

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.

[camel] 41/41: Spring Boot examples that uses undertow should exclude tomcat

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit b42e54295e1a437eb07a04bd9d0f68b643ffc2c2
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Wed Apr 11 10:12:22 2018 +0200

    Spring Boot examples that uses undertow should exclude tomcat
---
 .../src/main/resources/archetype-resources/pom.xml           |  6 ++++++
 examples/camel-example-rabbitmq/pom.xml                      |  6 ++++++
 examples/camel-example-rest-producer/pom.xml                 |  6 ++++++
 .../cluster-node/pom.xml                                     | 10 ++++++----
 .../application/pom.xml                                      |  6 ++++++
 .../camel-example-spring-boot-health-checks/service/pom.xml  |  6 ++++++
 examples/camel-example-spring-boot-master/pom.xml            | 10 ++++++----
 examples/camel-example-spring-boot-rest-swagger/pom.xml      |  6 ++++++
 .../camel-example-spring-boot-servicecall/consumer/pom.xml   | 10 ++++++----
 .../pom.xml                                                  |  6 ++++++
 examples/camel-example-spring-boot-xml/pom.xml               |  6 ++++++
 examples/camel-example-spring-boot/pom.xml                   |  6 ++++++
 .../camel-example-spring-cloud-servicecall/consumer/pom.xml  | 12 ++++--------
 examples/camel-example-twitter-salesforce/pom.xml            |  6 ++++++
 examples/camel-example-validator-spring-boot/pom.xml         |  6 ++++++
 15 files changed, 88 insertions(+), 20 deletions(-)

diff --git a/archetypes/camel-archetype-spring-boot/src/main/resources/archetype-resources/pom.xml b/archetypes/camel-archetype-spring-boot/src/main/resources/archetype-resources/pom.xml
index d8a3fca..29dc99b 100644
--- a/archetypes/camel-archetype-spring-boot/src/main/resources/archetype-resources/pom.xml
+++ b/archetypes/camel-archetype-spring-boot/src/main/resources/archetype-resources/pom.xml
@@ -60,6 +60,12 @@
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
diff --git a/examples/camel-example-rabbitmq/pom.xml b/examples/camel-example-rabbitmq/pom.xml
index 88be571..2f23a1a 100644
--- a/examples/camel-example-rabbitmq/pom.xml
+++ b/examples/camel-example-rabbitmq/pom.xml
@@ -67,6 +67,12 @@
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
diff --git a/examples/camel-example-rest-producer/pom.xml b/examples/camel-example-rest-producer/pom.xml
index bf78554..4cc744e 100644
--- a/examples/camel-example-rest-producer/pom.xml
+++ b/examples/camel-example-rest-producer/pom.xml
@@ -67,6 +67,12 @@
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
diff --git a/examples/camel-example-spring-boot-clustered-route-controller/cluster-node/pom.xml b/examples/camel-example-spring-boot-clustered-route-controller/cluster-node/pom.xml
index 16bccf0..fa049b9 100644
--- a/examples/camel-example-spring-boot-clustered-route-controller/cluster-node/pom.xml
+++ b/examples/camel-example-spring-boot-clustered-route-controller/cluster-node/pom.xml
@@ -57,11 +57,13 @@
   <dependencies>
     <dependency>
       <groupId>org.springframework.boot</groupId>
-      <artifactId>spring-boot-starter</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
diff --git a/examples/camel-example-spring-boot-health-checks/application/pom.xml b/examples/camel-example-spring-boot-health-checks/application/pom.xml
index 8d8fa5e..316686d 100644
--- a/examples/camel-example-spring-boot-health-checks/application/pom.xml
+++ b/examples/camel-example-spring-boot-health-checks/application/pom.xml
@@ -63,6 +63,12 @@
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
diff --git a/examples/camel-example-spring-boot-health-checks/service/pom.xml b/examples/camel-example-spring-boot-health-checks/service/pom.xml
index 650b827..1532cc4 100644
--- a/examples/camel-example-spring-boot-health-checks/service/pom.xml
+++ b/examples/camel-example-spring-boot-health-checks/service/pom.xml
@@ -54,6 +54,12 @@
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
diff --git a/examples/camel-example-spring-boot-master/pom.xml b/examples/camel-example-spring-boot-master/pom.xml
index 2b4057b..8973f26 100644
--- a/examples/camel-example-spring-boot-master/pom.xml
+++ b/examples/camel-example-spring-boot-master/pom.xml
@@ -65,11 +65,13 @@
   <dependencies>
     <dependency>
       <groupId>org.springframework.boot</groupId>
-      <artifactId>spring-boot-starter</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
diff --git a/examples/camel-example-spring-boot-rest-swagger/pom.xml b/examples/camel-example-spring-boot-rest-swagger/pom.xml
index cb1d77e..f2aa9f4 100644
--- a/examples/camel-example-spring-boot-rest-swagger/pom.xml
+++ b/examples/camel-example-spring-boot-rest-swagger/pom.xml
@@ -61,6 +61,12 @@
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
diff --git a/examples/camel-example-spring-boot-servicecall/consumer/pom.xml b/examples/camel-example-spring-boot-servicecall/consumer/pom.xml
index f0e05fe..041519d 100644
--- a/examples/camel-example-spring-boot-servicecall/consumer/pom.xml
+++ b/examples/camel-example-spring-boot-servicecall/consumer/pom.xml
@@ -67,11 +67,13 @@
     <!-- Spring Boot -->
     <dependency>
       <groupId>org.springframework.boot</groupId>
-      <artifactId>spring-boot-starter</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
diff --git a/examples/camel-example-spring-boot-supervising-route-controller/pom.xml b/examples/camel-example-spring-boot-supervising-route-controller/pom.xml
index 195c4a0..11b7ec9 100644
--- a/examples/camel-example-spring-boot-supervising-route-controller/pom.xml
+++ b/examples/camel-example-spring-boot-supervising-route-controller/pom.xml
@@ -72,6 +72,12 @@
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
diff --git a/examples/camel-example-spring-boot-xml/pom.xml b/examples/camel-example-spring-boot-xml/pom.xml
index 82cf717..488571f 100644
--- a/examples/camel-example-spring-boot-xml/pom.xml
+++ b/examples/camel-example-spring-boot-xml/pom.xml
@@ -67,6 +67,12 @@
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
diff --git a/examples/camel-example-spring-boot/pom.xml b/examples/camel-example-spring-boot/pom.xml
index d771ba3..8263894 100644
--- a/examples/camel-example-spring-boot/pom.xml
+++ b/examples/camel-example-spring-boot/pom.xml
@@ -67,6 +67,12 @@
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
diff --git a/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml b/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
index 4e32d50..a2b3514 100644
--- a/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
+++ b/examples/camel-example-spring-cloud-servicecall/consumer/pom.xml
@@ -75,14 +75,6 @@
     <!-- Spring Boot -->
     <dependency>
       <groupId>org.springframework.boot</groupId>
-      <artifactId>spring-boot-starter</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework.boot</groupId>
-      <artifactId>spring-boot-starter-undertow</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
       <exclusions>
         <exclusion>
@@ -92,6 +84,10 @@
       </exclusions>
     </dependency>
     <dependency>
+      <groupId>org.springframework.boot</groupId>
+      <artifactId>spring-boot-starter-undertow</artifactId>
+    </dependency>
+    <dependency>
       <groupId>org.springframework.cloud</groupId>
       <artifactId>spring-cloud-starter-consul-discovery</artifactId>
     </dependency>
diff --git a/examples/camel-example-twitter-salesforce/pom.xml b/examples/camel-example-twitter-salesforce/pom.xml
index 9bf1538..5a601a9 100644
--- a/examples/camel-example-twitter-salesforce/pom.xml
+++ b/examples/camel-example-twitter-salesforce/pom.xml
@@ -78,6 +78,12 @@
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
diff --git a/examples/camel-example-validator-spring-boot/pom.xml b/examples/camel-example-validator-spring-boot/pom.xml
index 9b0b4b8..cd71244 100644
--- a/examples/camel-example-validator-spring-boot/pom.xml
+++ b/examples/camel-example-validator-spring-boot/pom.xml
@@ -68,6 +68,12 @@
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework.boot</groupId>
+          <artifactId>spring-boot-starter-tomcat</artifactId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>

-- 
To stop receiving notification emails like this one, please contact
davsclaus@apache.org.