You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by dh...@apache.org on 2016/09/20 19:57:35 UTC
[23/26] camel git commit: CAMEL-10197: Regenerated asciidoc and
spring-boot starter configuration with NestedConfiguration support
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-guava-eventbus-starter/src/main/java/org/apache/camel/component/guava/eventbus/springboot/GuavaEventBusComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-guava-eventbus-starter/src/main/java/org/apache/camel/component/guava/eventbus/springboot/GuavaEventBusComponentConfiguration.java b/components-starter/camel-guava-eventbus-starter/src/main/java/org/apache/camel/component/guava/eventbus/springboot/GuavaEventBusComponentConfiguration.java
index 932a8b5..800e994 100644
--- a/components-starter/camel-guava-eventbus-starter/src/main/java/org/apache/camel/component/guava/eventbus/springboot/GuavaEventBusComponentConfiguration.java
+++ b/components-starter/camel-guava-eventbus-starter/src/main/java/org/apache/camel/component/guava/eventbus/springboot/GuavaEventBusComponentConfiguration.java
@@ -18,6 +18,7 @@ package org.apache.camel.component.guava.eventbus.springboot;
import com.google.common.eventbus.EventBus;
import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.context.properties.NestedConfigurationProperty;
/**
* The guava-eventbus component provides integration bridge between Camel and
@@ -31,6 +32,7 @@ public class GuavaEventBusComponentConfiguration {
/**
* To use the given Guava EventBus instance
*/
+ @NestedConfigurationProperty
private EventBus eventBus;
/**
* The interface with method(s) marked with the Subscribe annotation.
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentAutoConfiguration.java b/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentAutoConfiguration.java
index 1b6f679..2d54892 100644
--- a/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentAutoConfiguration.java
+++ b/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentAutoConfiguration.java
@@ -45,6 +45,26 @@ public class HazelcastComponentAutoConfiguration {
Map<String, Object> parameters = new HashMap<>();
IntrospectionSupport.getProperties(configuration, parameters, null,
false);
+ for (Map.Entry<String, Object> entry : parameters.entrySet()) {
+ Object value = entry.getValue();
+ Class<?> paramClass = value.getClass();
+ if (paramClass.getName().endsWith("NestedConfiguration")) {
+ Class nestedClass = null;
+ try {
+ nestedClass = (Class) paramClass.getDeclaredField(
+ "CAMEL_NESTED_CLASS").get(null);
+ HashMap<String, Object> nestedParameters = new HashMap<>();
+ IntrospectionSupport.getProperties(value, nestedParameters,
+ null, false);
+ Object nestedProperty = nestedClass.newInstance();
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), nestedProperty,
+ nestedParameters);
+ entry.setValue(nestedProperty);
+ } catch (NoSuchFieldException e) {
+ }
+ }
+ }
IntrospectionSupport.setProperties(camelContext,
camelContext.getTypeConverter(), component, parameters);
return component;
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentConfiguration.java b/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentConfiguration.java
index 2a418f7..484b309 100644
--- a/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentConfiguration.java
+++ b/components-starter/camel-hazelcast-starter/src/main/java/org/apache/camel/component/hazelcast/springboot/HazelcastComponentConfiguration.java
@@ -18,6 +18,7 @@ package org.apache.camel.component.hazelcast.springboot;
import com.hazelcast.core.HazelcastInstance;
import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.context.properties.NestedConfigurationProperty;
/**
* The hazelcast component allows you to work with the Hazelcast distributed
@@ -33,6 +34,7 @@ public class HazelcastComponentConfiguration {
* endpoint. If you don't specify the instance reference camel use the
* default hazelcast instance from the camel-hazelcast instance.
*/
+ @NestedConfigurationProperty
private HazelcastInstance hazelcastInstance;
public HazelcastInstance getHazelcastInstance() {
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-hbase-starter/src/main/java/org/apache/camel/component/hbase/springboot/HBaseComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-hbase-starter/src/main/java/org/apache/camel/component/hbase/springboot/HBaseComponentAutoConfiguration.java b/components-starter/camel-hbase-starter/src/main/java/org/apache/camel/component/hbase/springboot/HBaseComponentAutoConfiguration.java
index 7334d6a..b0ef4fb 100644
--- a/components-starter/camel-hbase-starter/src/main/java/org/apache/camel/component/hbase/springboot/HBaseComponentAutoConfiguration.java
+++ b/components-starter/camel-hbase-starter/src/main/java/org/apache/camel/component/hbase/springboot/HBaseComponentAutoConfiguration.java
@@ -44,6 +44,26 @@ public class HBaseComponentAutoConfiguration {
Map<String, Object> parameters = new HashMap<>();
IntrospectionSupport.getProperties(configuration, parameters, null,
false);
+ for (Map.Entry<String, Object> entry : parameters.entrySet()) {
+ Object value = entry.getValue();
+ Class<?> paramClass = value.getClass();
+ if (paramClass.getName().endsWith("NestedConfiguration")) {
+ Class nestedClass = null;
+ try {
+ nestedClass = (Class) paramClass.getDeclaredField(
+ "CAMEL_NESTED_CLASS").get(null);
+ HashMap<String, Object> nestedParameters = new HashMap<>();
+ IntrospectionSupport.getProperties(value, nestedParameters,
+ null, false);
+ Object nestedProperty = nestedClass.newInstance();
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), nestedProperty,
+ nestedParameters);
+ entry.setValue(nestedProperty);
+ } catch (NoSuchFieldException e) {
+ }
+ }
+ }
IntrospectionSupport.setProperties(camelContext,
camelContext.getTypeConverter(), component, parameters);
return component;
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-hbase-starter/src/main/java/org/apache/camel/component/hbase/springboot/HBaseComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-hbase-starter/src/main/java/org/apache/camel/component/hbase/springboot/HBaseComponentConfiguration.java b/components-starter/camel-hbase-starter/src/main/java/org/apache/camel/component/hbase/springboot/HBaseComponentConfiguration.java
index 4c4e2e9..a800e04 100644
--- a/components-starter/camel-hbase-starter/src/main/java/org/apache/camel/component/hbase/springboot/HBaseComponentConfiguration.java
+++ b/components-starter/camel-hbase-starter/src/main/java/org/apache/camel/component/hbase/springboot/HBaseComponentConfiguration.java
@@ -18,6 +18,7 @@ package org.apache.camel.component.hbase.springboot;
import org.apache.hadoop.conf.Configuration;
import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.context.properties.NestedConfigurationProperty;
/**
* For reading/writing from/to an HBase store (Hadoop database).
@@ -30,6 +31,7 @@ public class HBaseComponentConfiguration {
/**
* To use the shared configuration
*/
+ @NestedConfigurationProperty
private Configuration configuration;
/**
* Maximum number of references to keep for each table in the HTable pool.
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-hdfs-starter/src/main/java/org/apache/camel/component/hdfs/springboot/HdfsComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-hdfs-starter/src/main/java/org/apache/camel/component/hdfs/springboot/HdfsComponentAutoConfiguration.java b/components-starter/camel-hdfs-starter/src/main/java/org/apache/camel/component/hdfs/springboot/HdfsComponentAutoConfiguration.java
index ab72ef7..987b615 100644
--- a/components-starter/camel-hdfs-starter/src/main/java/org/apache/camel/component/hdfs/springboot/HdfsComponentAutoConfiguration.java
+++ b/components-starter/camel-hdfs-starter/src/main/java/org/apache/camel/component/hdfs/springboot/HdfsComponentAutoConfiguration.java
@@ -44,6 +44,26 @@ public class HdfsComponentAutoConfiguration {
Map<String, Object> parameters = new HashMap<>();
IntrospectionSupport.getProperties(configuration, parameters, null,
false);
+ for (Map.Entry<String, Object> entry : parameters.entrySet()) {
+ Object value = entry.getValue();
+ Class<?> paramClass = value.getClass();
+ if (paramClass.getName().endsWith("NestedConfiguration")) {
+ Class nestedClass = null;
+ try {
+ nestedClass = (Class) paramClass.getDeclaredField(
+ "CAMEL_NESTED_CLASS").get(null);
+ HashMap<String, Object> nestedParameters = new HashMap<>();
+ IntrospectionSupport.getProperties(value, nestedParameters,
+ null, false);
+ Object nestedProperty = nestedClass.newInstance();
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), nestedProperty,
+ nestedParameters);
+ entry.setValue(nestedProperty);
+ } catch (NoSuchFieldException e) {
+ }
+ }
+ }
IntrospectionSupport.setProperties(camelContext,
camelContext.getTypeConverter(), component, parameters);
return component;
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-hdfs2-starter/src/main/java/org/apache/camel/component/hdfs2/springboot/HdfsComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-hdfs2-starter/src/main/java/org/apache/camel/component/hdfs2/springboot/HdfsComponentAutoConfiguration.java b/components-starter/camel-hdfs2-starter/src/main/java/org/apache/camel/component/hdfs2/springboot/HdfsComponentAutoConfiguration.java
index 92a1fac..c7a1e1d 100644
--- a/components-starter/camel-hdfs2-starter/src/main/java/org/apache/camel/component/hdfs2/springboot/HdfsComponentAutoConfiguration.java
+++ b/components-starter/camel-hdfs2-starter/src/main/java/org/apache/camel/component/hdfs2/springboot/HdfsComponentAutoConfiguration.java
@@ -44,6 +44,26 @@ public class HdfsComponentAutoConfiguration {
Map<String, Object> parameters = new HashMap<>();
IntrospectionSupport.getProperties(configuration, parameters, null,
false);
+ for (Map.Entry<String, Object> entry : parameters.entrySet()) {
+ Object value = entry.getValue();
+ Class<?> paramClass = value.getClass();
+ if (paramClass.getName().endsWith("NestedConfiguration")) {
+ Class nestedClass = null;
+ try {
+ nestedClass = (Class) paramClass.getDeclaredField(
+ "CAMEL_NESTED_CLASS").get(null);
+ HashMap<String, Object> nestedParameters = new HashMap<>();
+ IntrospectionSupport.getProperties(value, nestedParameters,
+ null, false);
+ Object nestedProperty = nestedClass.newInstance();
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), nestedProperty,
+ nestedParameters);
+ entry.setValue(nestedProperty);
+ } catch (NoSuchFieldException e) {
+ }
+ }
+ }
IntrospectionSupport.setProperties(camelContext,
camelContext.getTypeConverter(), component, parameters);
return component;
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-http-starter/src/main/java/org/apache/camel/component/http/springboot/HttpComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-http-starter/src/main/java/org/apache/camel/component/http/springboot/HttpComponentAutoConfiguration.java b/components-starter/camel-http-starter/src/main/java/org/apache/camel/component/http/springboot/HttpComponentAutoConfiguration.java
index b90977e..1397ebb 100644
--- a/components-starter/camel-http-starter/src/main/java/org/apache/camel/component/http/springboot/HttpComponentAutoConfiguration.java
+++ b/components-starter/camel-http-starter/src/main/java/org/apache/camel/component/http/springboot/HttpComponentAutoConfiguration.java
@@ -44,6 +44,26 @@ public class HttpComponentAutoConfiguration {
Map<String, Object> parameters = new HashMap<>();
IntrospectionSupport.getProperties(configuration, parameters, null,
false);
+ for (Map.Entry<String, Object> entry : parameters.entrySet()) {
+ Object value = entry.getValue();
+ Class<?> paramClass = value.getClass();
+ if (paramClass.getName().endsWith("NestedConfiguration")) {
+ Class nestedClass = null;
+ try {
+ nestedClass = (Class) paramClass.getDeclaredField(
+ "CAMEL_NESTED_CLASS").get(null);
+ HashMap<String, Object> nestedParameters = new HashMap<>();
+ IntrospectionSupport.getProperties(value, nestedParameters,
+ null, false);
+ Object nestedProperty = nestedClass.newInstance();
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), nestedProperty,
+ nestedParameters);
+ entry.setValue(nestedProperty);
+ } catch (NoSuchFieldException e) {
+ }
+ }
+ }
IntrospectionSupport.setProperties(camelContext,
camelContext.getTypeConverter(), component, parameters);
return component;
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-http-starter/src/main/java/org/apache/camel/component/http/springboot/HttpComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-http-starter/src/main/java/org/apache/camel/component/http/springboot/HttpComponentConfiguration.java b/components-starter/camel-http-starter/src/main/java/org/apache/camel/component/http/springboot/HttpComponentConfiguration.java
index 20714b3..acf31ee 100644
--- a/components-starter/camel-http-starter/src/main/java/org/apache/camel/component/http/springboot/HttpComponentConfiguration.java
+++ b/components-starter/camel-http-starter/src/main/java/org/apache/camel/component/http/springboot/HttpComponentConfiguration.java
@@ -22,6 +22,7 @@ import org.apache.camel.http.common.HttpConfiguration;
import org.apache.camel.spi.HeaderFilterStrategy;
import org.apache.commons.httpclient.HttpConnectionManager;
import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.context.properties.NestedConfigurationProperty;
/**
* For calling out to external HTTP servers using Apache HTTP Client 3.x.
@@ -35,19 +36,23 @@ public class HttpComponentConfiguration {
* To use the custom HttpClientConfigurer to perform configuration of the
* HttpClient that will be used.
*/
+ @NestedConfigurationProperty
private HttpClientConfigurer httpClientConfigurer;
/**
* To use a custom HttpConnectionManager to manage connections
*/
+ @NestedConfigurationProperty
private HttpConnectionManager httpConnectionManager;
/**
* To use a custom HttpBinding to control the mapping between Camel message
* and HttpClient.
*/
+ @NestedConfigurationProperty
private HttpBinding httpBinding;
/**
* To use the shared HttpConfiguration as base configuration.
*/
+ @NestedConfigurationProperty
private HttpConfiguration httpConfiguration;
/**
* Whether to allow java serialization when a request uses
@@ -61,6 +66,7 @@ public class HttpComponentConfiguration {
* To use a custom HeaderFilterStrategy to filter header to and from Camel
* message.
*/
+ @NestedConfigurationProperty
private HeaderFilterStrategy headerFilterStrategy;
public HttpClientConfigurer getHttpClientConfigurer() {
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-http4-starter/src/main/java/org/apache/camel/component/http4/springboot/HttpComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-http4-starter/src/main/java/org/apache/camel/component/http4/springboot/HttpComponentAutoConfiguration.java b/components-starter/camel-http4-starter/src/main/java/org/apache/camel/component/http4/springboot/HttpComponentAutoConfiguration.java
index 6459f12..126e7c1 100644
--- a/components-starter/camel-http4-starter/src/main/java/org/apache/camel/component/http4/springboot/HttpComponentAutoConfiguration.java
+++ b/components-starter/camel-http4-starter/src/main/java/org/apache/camel/component/http4/springboot/HttpComponentAutoConfiguration.java
@@ -44,6 +44,26 @@ public class HttpComponentAutoConfiguration {
Map<String, Object> parameters = new HashMap<>();
IntrospectionSupport.getProperties(configuration, parameters, null,
false);
+ for (Map.Entry<String, Object> entry : parameters.entrySet()) {
+ Object value = entry.getValue();
+ Class<?> paramClass = value.getClass();
+ if (paramClass.getName().endsWith("NestedConfiguration")) {
+ Class nestedClass = null;
+ try {
+ nestedClass = (Class) paramClass.getDeclaredField(
+ "CAMEL_NESTED_CLASS").get(null);
+ HashMap<String, Object> nestedParameters = new HashMap<>();
+ IntrospectionSupport.getProperties(value, nestedParameters,
+ null, false);
+ Object nestedProperty = nestedClass.newInstance();
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), nestedProperty,
+ nestedParameters);
+ entry.setValue(nestedProperty);
+ } catch (NoSuchFieldException e) {
+ }
+ }
+ }
IntrospectionSupport.setProperties(camelContext,
camelContext.getTypeConverter(), component, parameters);
return component;
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-http4-starter/src/main/java/org/apache/camel/component/http4/springboot/HttpComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-http4-starter/src/main/java/org/apache/camel/component/http4/springboot/HttpComponentConfiguration.java b/components-starter/camel-http4-starter/src/main/java/org/apache/camel/component/http4/springboot/HttpComponentConfiguration.java
index c88d77b..eacaa37 100644
--- a/components-starter/camel-http4-starter/src/main/java/org/apache/camel/component/http4/springboot/HttpComponentConfiguration.java
+++ b/components-starter/camel-http4-starter/src/main/java/org/apache/camel/component/http4/springboot/HttpComponentConfiguration.java
@@ -26,6 +26,7 @@ import org.apache.http.conn.HttpClientConnectionManager;
import org.apache.http.conn.ssl.X509HostnameVerifier;
import org.apache.http.protocol.HttpContext;
import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.context.properties.NestedConfigurationProperty;
/**
* For calling out to external HTTP servers using Apache HTTP Client 4.x.
@@ -39,19 +40,23 @@ public class HttpComponentConfiguration {
* To use the custom HttpClientConfigurer to perform configuration of the
* HttpClient that will be used.
*/
+ @NestedConfigurationProperty
private HttpClientConfigurer httpClientConfigurer;
/**
* To use a custom HttpClientConnectionManager to manage connections
*/
+ @NestedConfigurationProperty
private HttpClientConnectionManager clientConnectionManager;
/**
* To use a custom HttpBinding to control the mapping between Camel message
* and HttpClient.
*/
+ @NestedConfigurationProperty
private HttpBinding httpBinding;
/**
* To use the shared HttpConfiguration as base configuration.
*/
+ @NestedConfigurationProperty
private HttpConfiguration httpConfiguration;
/**
* Whether to allow java serialization when a request uses
@@ -65,6 +70,7 @@ public class HttpComponentConfiguration {
* To use a custom org.apache.http.protocol.HttpContext when executing
* requests.
*/
+ @NestedConfigurationProperty
private HttpContext httpContext;
/**
* To configure security using SSLContextParameters. Important: Only one
@@ -72,12 +78,14 @@ public class HttpComponentConfiguration {
* per HttpComponent. If you need to use 2 or more different instances you
* need to define a new HttpComponent per instance you need.
*/
+ @NestedConfigurationProperty
private SSLContextParameters sslContextParameters;
/**
* To use a custom X509HostnameVerifier such as
* org.apache.http.conn.ssl.StrictHostnameVerifier or
* org.apache.http.conn.ssl.AllowAllHostnameVerifier.
*/
+ @NestedConfigurationProperty
private X509HostnameVerifier x509HostnameVerifier;
/**
* The maximum number of connections.
@@ -91,7 +99,7 @@ public class HttpComponentConfiguration {
* The time for connection to live the time unit is millisecond the default
* value is always keep alive.
*/
- private long connectionTimeToLive;
+ private Long connectionTimeToLive;
/**
* To use a custom org.apache.http.client.CookieStore. By default the
* org.apache.http.impl.client.BasicCookieStore is used which is an
@@ -99,11 +107,13 @@ public class HttpComponentConfiguration {
* cookie store is forced to be a noop cookie store as cookie shouldn't be
* stored as we are just bridging (eg acting as a proxy).
*/
+ @NestedConfigurationProperty
private CookieStore cookieStore;
/**
* To use a custom HeaderFilterStrategy to filter header to and from Camel
* message.
*/
+ @NestedConfigurationProperty
private HeaderFilterStrategy headerFilterStrategy;
public HttpClientConfigurer getHttpClientConfigurer() {
@@ -190,11 +200,11 @@ public class HttpComponentConfiguration {
this.connectionsPerRoute = connectionsPerRoute;
}
- public long getConnectionTimeToLive() {
+ public Long getConnectionTimeToLive() {
return connectionTimeToLive;
}
- public void setConnectionTimeToLive(long connectionTimeToLive) {
+ public void setConnectionTimeToLive(Long connectionTimeToLive) {
this.connectionTimeToLive = connectionTimeToLive;
}
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-ibatis-starter/src/main/java/org/apache/camel/component/ibatis/springboot/IBatisComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-ibatis-starter/src/main/java/org/apache/camel/component/ibatis/springboot/IBatisComponentAutoConfiguration.java b/components-starter/camel-ibatis-starter/src/main/java/org/apache/camel/component/ibatis/springboot/IBatisComponentAutoConfiguration.java
index 6946ea4..98329f2 100644
--- a/components-starter/camel-ibatis-starter/src/main/java/org/apache/camel/component/ibatis/springboot/IBatisComponentAutoConfiguration.java
+++ b/components-starter/camel-ibatis-starter/src/main/java/org/apache/camel/component/ibatis/springboot/IBatisComponentAutoConfiguration.java
@@ -44,6 +44,26 @@ public class IBatisComponentAutoConfiguration {
Map<String, Object> parameters = new HashMap<>();
IntrospectionSupport.getProperties(configuration, parameters, null,
false);
+ for (Map.Entry<String, Object> entry : parameters.entrySet()) {
+ Object value = entry.getValue();
+ Class<?> paramClass = value.getClass();
+ if (paramClass.getName().endsWith("NestedConfiguration")) {
+ Class nestedClass = null;
+ try {
+ nestedClass = (Class) paramClass.getDeclaredField(
+ "CAMEL_NESTED_CLASS").get(null);
+ HashMap<String, Object> nestedParameters = new HashMap<>();
+ IntrospectionSupport.getProperties(value, nestedParameters,
+ null, false);
+ Object nestedProperty = nestedClass.newInstance();
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), nestedProperty,
+ nestedParameters);
+ entry.setValue(nestedProperty);
+ } catch (NoSuchFieldException e) {
+ }
+ }
+ }
IntrospectionSupport.setProperties(camelContext,
camelContext.getTypeConverter(), component, parameters);
return component;
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-ibatis-starter/src/main/java/org/apache/camel/component/ibatis/springboot/IBatisComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-ibatis-starter/src/main/java/org/apache/camel/component/ibatis/springboot/IBatisComponentConfiguration.java b/components-starter/camel-ibatis-starter/src/main/java/org/apache/camel/component/ibatis/springboot/IBatisComponentConfiguration.java
index 214cced..e21fa68 100644
--- a/components-starter/camel-ibatis-starter/src/main/java/org/apache/camel/component/ibatis/springboot/IBatisComponentConfiguration.java
+++ b/components-starter/camel-ibatis-starter/src/main/java/org/apache/camel/component/ibatis/springboot/IBatisComponentConfiguration.java
@@ -18,6 +18,7 @@ package org.apache.camel.component.ibatis.springboot;
import com.ibatis.sqlmap.client.SqlMapClient;
import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.context.properties.NestedConfigurationProperty;
/**
* Performs a query poll insert update or delete in a relational database using
@@ -31,6 +32,7 @@ public class IBatisComponentConfiguration {
/**
* To use the given com.ibatis.sqlmap.client.SqlMapClient
*/
+ @NestedConfigurationProperty
private SqlMapClient sqlMapClient;
/**
* Location of iBatis xml configuration file. The default value is:
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-jclouds-starter/src/main/java/org/apache/camel/component/jclouds/springboot/JcloudsComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-jclouds-starter/src/main/java/org/apache/camel/component/jclouds/springboot/JcloudsComponentAutoConfiguration.java b/components-starter/camel-jclouds-starter/src/main/java/org/apache/camel/component/jclouds/springboot/JcloudsComponentAutoConfiguration.java
index 5d184c0..20f116f 100644
--- a/components-starter/camel-jclouds-starter/src/main/java/org/apache/camel/component/jclouds/springboot/JcloudsComponentAutoConfiguration.java
+++ b/components-starter/camel-jclouds-starter/src/main/java/org/apache/camel/component/jclouds/springboot/JcloudsComponentAutoConfiguration.java
@@ -45,6 +45,26 @@ public class JcloudsComponentAutoConfiguration {
Map<String, Object> parameters = new HashMap<>();
IntrospectionSupport.getProperties(configuration, parameters, null,
false);
+ for (Map.Entry<String, Object> entry : parameters.entrySet()) {
+ Object value = entry.getValue();
+ Class<?> paramClass = value.getClass();
+ if (paramClass.getName().endsWith("NestedConfiguration")) {
+ Class nestedClass = null;
+ try {
+ nestedClass = (Class) paramClass.getDeclaredField(
+ "CAMEL_NESTED_CLASS").get(null);
+ HashMap<String, Object> nestedParameters = new HashMap<>();
+ IntrospectionSupport.getProperties(value, nestedParameters,
+ null, false);
+ Object nestedProperty = nestedClass.newInstance();
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), nestedProperty,
+ nestedParameters);
+ entry.setValue(nestedProperty);
+ } catch (NoSuchFieldException e) {
+ }
+ }
+ }
IntrospectionSupport.setProperties(camelContext,
camelContext.getTypeConverter(), component, parameters);
return component;
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-jdbc-starter/src/main/java/org/apache/camel/component/jdbc/springboot/JdbcComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-jdbc-starter/src/main/java/org/apache/camel/component/jdbc/springboot/JdbcComponentAutoConfiguration.java b/components-starter/camel-jdbc-starter/src/main/java/org/apache/camel/component/jdbc/springboot/JdbcComponentAutoConfiguration.java
index 13ad304..b613e7f 100644
--- a/components-starter/camel-jdbc-starter/src/main/java/org/apache/camel/component/jdbc/springboot/JdbcComponentAutoConfiguration.java
+++ b/components-starter/camel-jdbc-starter/src/main/java/org/apache/camel/component/jdbc/springboot/JdbcComponentAutoConfiguration.java
@@ -44,6 +44,26 @@ public class JdbcComponentAutoConfiguration {
Map<String, Object> parameters = new HashMap<>();
IntrospectionSupport.getProperties(configuration, parameters, null,
false);
+ for (Map.Entry<String, Object> entry : parameters.entrySet()) {
+ Object value = entry.getValue();
+ Class<?> paramClass = value.getClass();
+ if (paramClass.getName().endsWith("NestedConfiguration")) {
+ Class nestedClass = null;
+ try {
+ nestedClass = (Class) paramClass.getDeclaredField(
+ "CAMEL_NESTED_CLASS").get(null);
+ HashMap<String, Object> nestedParameters = new HashMap<>();
+ IntrospectionSupport.getProperties(value, nestedParameters,
+ null, false);
+ Object nestedProperty = nestedClass.newInstance();
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), nestedProperty,
+ nestedParameters);
+ entry.setValue(nestedProperty);
+ } catch (NoSuchFieldException e) {
+ }
+ }
+ }
IntrospectionSupport.setProperties(camelContext,
camelContext.getTypeConverter(), component, parameters);
return component;
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-jetty9-starter/src/main/java/org/apache/camel/component/jetty9/springboot/JettyHttpComponentAutoConfiguration9.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-jetty9-starter/src/main/java/org/apache/camel/component/jetty9/springboot/JettyHttpComponentAutoConfiguration9.java b/components-starter/camel-jetty9-starter/src/main/java/org/apache/camel/component/jetty9/springboot/JettyHttpComponentAutoConfiguration9.java
index d1f37a8..24d1213 100644
--- a/components-starter/camel-jetty9-starter/src/main/java/org/apache/camel/component/jetty9/springboot/JettyHttpComponentAutoConfiguration9.java
+++ b/components-starter/camel-jetty9-starter/src/main/java/org/apache/camel/component/jetty9/springboot/JettyHttpComponentAutoConfiguration9.java
@@ -45,6 +45,26 @@ public class JettyHttpComponentAutoConfiguration9 {
Map<String, Object> parameters = new HashMap<>();
IntrospectionSupport.getProperties(configuration, parameters, null,
false);
+ for (Map.Entry<String, Object> entry : parameters.entrySet()) {
+ Object value = entry.getValue();
+ Class<?> paramClass = value.getClass();
+ if (paramClass.getName().endsWith("NestedConfiguration")) {
+ Class nestedClass = null;
+ try {
+ nestedClass = (Class) paramClass.getDeclaredField(
+ "CAMEL_NESTED_CLASS").get(null);
+ HashMap<String, Object> nestedParameters = new HashMap<>();
+ IntrospectionSupport.getProperties(value, nestedParameters,
+ null, false);
+ Object nestedProperty = nestedClass.newInstance();
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), nestedProperty,
+ nestedParameters);
+ entry.setValue(nestedProperty);
+ } catch (NoSuchFieldException e) {
+ }
+ }
+ }
IntrospectionSupport.setProperties(camelContext,
camelContext.getTypeConverter(), component, parameters);
return component;
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-jetty9-starter/src/main/java/org/apache/camel/component/jetty9/springboot/JettyHttpComponentConfiguration9.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-jetty9-starter/src/main/java/org/apache/camel/component/jetty9/springboot/JettyHttpComponentConfiguration9.java b/components-starter/camel-jetty9-starter/src/main/java/org/apache/camel/component/jetty9/springboot/JettyHttpComponentConfiguration9.java
index ee6fc07..42f4060 100644
--- a/components-starter/camel-jetty9-starter/src/main/java/org/apache/camel/component/jetty9/springboot/JettyHttpComponentConfiguration9.java
+++ b/components-starter/camel-jetty9-starter/src/main/java/org/apache/camel/component/jetty9/springboot/JettyHttpComponentConfiguration9.java
@@ -27,6 +27,7 @@ import org.eclipse.jetty.server.Connector;
import org.eclipse.jetty.server.handler.ErrorHandler;
import org.eclipse.jetty.util.thread.ThreadPool;
import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.context.properties.NestedConfigurationProperty;
/**
* The jetty component provides HTTP-based endpoints for consuming and producing
@@ -57,6 +58,7 @@ public class JettyHttpComponentConfiguration9 {
/**
* This option is used to set the ErrorHandler that Jetty server uses.
*/
+ @NestedConfigurationProperty
private ErrorHandler errorHandler;
/**
* A map which contains per port number specific SSL connectors.
@@ -91,6 +93,7 @@ public class JettyHttpComponentConfiguration9 {
* To use a custom thread pool for the server. This option should only be
* used in special circumstances.
*/
+ @NestedConfigurationProperty
private ThreadPool threadPool;
/**
* If this option is true Jetty JMX support will be enabled for this
@@ -101,19 +104,23 @@ public class JettyHttpComponentConfiguration9 {
* To use a custom org.apache.camel.component.jetty.JettyHttpBinding which
* are used to customize how a response should be written for the producer.
*/
+ @NestedConfigurationProperty
private JettyHttpBinding jettyHttpBinding;
/**
* Not to be used - use JettyHttpBinding instead.
*/
+ @NestedConfigurationProperty
private HttpBinding httpBinding;
/**
* Jetty component does not use HttpConfiguration.
*/
+ @NestedConfigurationProperty
private HttpConfiguration httpConfiguration;
/**
* To use a existing configured org.eclipse.jetty.jmx.MBeanContainer if JMX
* is enabled that Jetty uses for registering mbeans.
*/
+ @NestedConfigurationProperty
private MBeanContainer mbContainer;
/**
* A map which contains general SSL connector properties.
@@ -139,6 +146,7 @@ public class JettyHttpComponentConfiguration9 {
/**
* To configure security using SSLContextParameters
*/
+ @NestedConfigurationProperty
private SSLContextParameters sslContextParameters;
/**
* Allows to configure a custom value of the response buffer size on the
@@ -191,6 +199,7 @@ public class JettyHttpComponentConfiguration9 {
* To use a custom HeaderFilterStrategy to filter header to and from Camel
* message.
*/
+ @NestedConfigurationProperty
private HeaderFilterStrategy headerFilterStrategy;
public String getSslKeyPassword() {
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-jgroups-starter/src/main/java/org/apache/camel/component/jgroups/springboot/JGroupsComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-jgroups-starter/src/main/java/org/apache/camel/component/jgroups/springboot/JGroupsComponentAutoConfiguration.java b/components-starter/camel-jgroups-starter/src/main/java/org/apache/camel/component/jgroups/springboot/JGroupsComponentAutoConfiguration.java
index d44e3b8..e8ad026 100644
--- a/components-starter/camel-jgroups-starter/src/main/java/org/apache/camel/component/jgroups/springboot/JGroupsComponentAutoConfiguration.java
+++ b/components-starter/camel-jgroups-starter/src/main/java/org/apache/camel/component/jgroups/springboot/JGroupsComponentAutoConfiguration.java
@@ -45,6 +45,26 @@ public class JGroupsComponentAutoConfiguration {
Map<String, Object> parameters = new HashMap<>();
IntrospectionSupport.getProperties(configuration, parameters, null,
false);
+ for (Map.Entry<String, Object> entry : parameters.entrySet()) {
+ Object value = entry.getValue();
+ Class<?> paramClass = value.getClass();
+ if (paramClass.getName().endsWith("NestedConfiguration")) {
+ Class nestedClass = null;
+ try {
+ nestedClass = (Class) paramClass.getDeclaredField(
+ "CAMEL_NESTED_CLASS").get(null);
+ HashMap<String, Object> nestedParameters = new HashMap<>();
+ IntrospectionSupport.getProperties(value, nestedParameters,
+ null, false);
+ Object nestedProperty = nestedClass.newInstance();
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), nestedProperty,
+ nestedParameters);
+ entry.setValue(nestedProperty);
+ } catch (NoSuchFieldException e) {
+ }
+ }
+ }
IntrospectionSupport.setProperties(camelContext,
camelContext.getTypeConverter(), component, parameters);
return component;
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-jgroups-starter/src/main/java/org/apache/camel/component/jgroups/springboot/JGroupsComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-jgroups-starter/src/main/java/org/apache/camel/component/jgroups/springboot/JGroupsComponentConfiguration.java b/components-starter/camel-jgroups-starter/src/main/java/org/apache/camel/component/jgroups/springboot/JGroupsComponentConfiguration.java
index 8d5e024..20cfdbf9 100644
--- a/components-starter/camel-jgroups-starter/src/main/java/org/apache/camel/component/jgroups/springboot/JGroupsComponentConfiguration.java
+++ b/components-starter/camel-jgroups-starter/src/main/java/org/apache/camel/component/jgroups/springboot/JGroupsComponentConfiguration.java
@@ -18,6 +18,7 @@ package org.apache.camel.component.jgroups.springboot;
import org.jgroups.Channel;
import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.context.properties.NestedConfigurationProperty;
/**
* The jgroups component provides exchange of messages between Camel and JGroups
@@ -31,6 +32,7 @@ public class JGroupsComponentConfiguration {
/**
* Channel to use
*/
+ @NestedConfigurationProperty
private Channel channel;
/**
* Specifies configuration properties of the JChannel used by the endpoint.
http://git-wip-us.apache.org/repos/asf/camel/blob/d485f2f0/components-starter/camel-jms-starter/src/main/java/org/apache/camel/component/jms/springboot/JmsComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components-starter/camel-jms-starter/src/main/java/org/apache/camel/component/jms/springboot/JmsComponentAutoConfiguration.java b/components-starter/camel-jms-starter/src/main/java/org/apache/camel/component/jms/springboot/JmsComponentAutoConfiguration.java
index 9d689cb..94f524a 100644
--- a/components-starter/camel-jms-starter/src/main/java/org/apache/camel/component/jms/springboot/JmsComponentAutoConfiguration.java
+++ b/components-starter/camel-jms-starter/src/main/java/org/apache/camel/component/jms/springboot/JmsComponentAutoConfiguration.java
@@ -44,6 +44,26 @@ public class JmsComponentAutoConfiguration {
Map<String, Object> parameters = new HashMap<>();
IntrospectionSupport.getProperties(configuration, parameters, null,
false);
+ for (Map.Entry<String, Object> entry : parameters.entrySet()) {
+ Object value = entry.getValue();
+ Class<?> paramClass = value.getClass();
+ if (paramClass.getName().endsWith("NestedConfiguration")) {
+ Class nestedClass = null;
+ try {
+ nestedClass = (Class) paramClass.getDeclaredField(
+ "CAMEL_NESTED_CLASS").get(null);
+ HashMap<String, Object> nestedParameters = new HashMap<>();
+ IntrospectionSupport.getProperties(value, nestedParameters,
+ null, false);
+ Object nestedProperty = nestedClass.newInstance();
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), nestedProperty,
+ nestedParameters);
+ entry.setValue(nestedProperty);
+ } catch (NoSuchFieldException e) {
+ }
+ }
+ }
IntrospectionSupport.setProperties(camelContext,
camelContext.getTypeConverter(), component, parameters);
return component;