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 2016/06/08 11:49:18 UTC
[04/12] camel git commit: CAMEL-9419: Generate spring-boot auto
configuration for all Camel components that has options that can be
configured.
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/springboot/RestletComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/springboot/RestletComponentConfiguration.java b/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/springboot/RestletComponentConfiguration.java
new file mode 100644
index 0000000..7c581db
--- /dev/null
+++ b/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/springboot/RestletComponentConfiguration.java
@@ -0,0 +1,296 @@
+/**
+ * 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.component.restlet.springboot;
+
+import java.util.List;
+import org.apache.camel.spi.HeaderFilterStrategy;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * Component for consuming and producing Restful resources using Restlet.
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.component.restlet")
+public class RestletComponentConfiguration {
+
+ /**
+ * Indicates if the controller thread should be a daemon (not blocking JVM
+ * exit).
+ */
+ private Boolean controllerDaemon;
+ /**
+ * Time for the controller thread to sleep between each control.
+ */
+ private Integer controllerSleepTimeMs;
+ /**
+ * The size of the buffer when reading messages.
+ */
+ private Integer inboundBufferSize;
+ /**
+ * Maximum number of concurrent connections per host (IP address).
+ */
+ private Integer maxConnectionsPerHost;
+ /**
+ * Maximum threads that will service requests.
+ */
+ private Integer maxThreads;
+ /**
+ * Number of worker threads determining when the connector is considered
+ * overloaded.
+ */
+ private Integer lowThreads;
+ /**
+ * Maximum number of concurrent connections in total.
+ */
+ private Integer maxTotalConnections;
+ /**
+ * Minimum threads waiting to service requests.
+ */
+ private Integer minThreads;
+ /**
+ * The size of the buffer when writing messages.
+ */
+ private Integer outboundBufferSize;
+ /**
+ * Indicates if connections should be kept alive after a call.
+ */
+ private Boolean persistingConnections;
+ /**
+ * Indicates if pipelining connections are supported.
+ */
+ private Boolean pipeliningConnections;
+ /**
+ * Time for an idle thread to wait for an operation before being collected.
+ */
+ private Integer threadMaxIdleTimeMs;
+ /**
+ * Lookup the X-Forwarded-For header supported by popular proxies and caches
+ * and uses it to populate the Request.getClientAddresses() method result.
+ * This information is only safe for intermediary components within your
+ * local network. Other addresses could easily be changed by setting a fake
+ * header and should not be trusted for serious security checks.
+ */
+ private Boolean useForwardedForHeader;
+ /**
+ * Enable/disable the SO_REUSEADDR socket option. See
+ * java.io.ServerSocketreuseAddress property for additional details.
+ */
+ private Boolean reuseAddress;
+ /**
+ * Maximum number of calls that can be queued if there aren't any worker
+ * thread available to service them. If the value is '0' then no queue is
+ * used and calls are rejected if no worker thread is immediately available.
+ * If the value is '-1' then an unbounded queue is used and calls are never
+ * rejected.
+ */
+ private Integer maxQueued;
+ /**
+ * Determines whether or not the raw input stream from Restlet is cached or
+ * not (Camel will read the stream into a in memory/overflow to file Stream
+ * caching) cache. By default Camel will cache the Restlet input stream to
+ * support reading it multiple times to ensure Camel can retrieve all data
+ * from the stream. However you can set this option to true when you for
+ * example need to access the raw stream such as streaming it directly to a
+ * file or other persistent store. DefaultRestletBinding will copy the
+ * request input stream into a stream cache and put it into message body if
+ * this option is false to support reading the stream multiple times.
+ */
+ private boolean disableStreamCache;
+ /**
+ * To configure the port number for the restlet consumer routes. This allows
+ * to configure this once to reuse the same port for these consumers.
+ */
+ private int port;
+ /**
+ * Whether to use synchronous Restlet Client for the producer. Setting this
+ * option to true can yield faster performance as it seems the Restlet
+ * synchronous Client works better.
+ */
+ private Boolean synchronous;
+ /**
+ * A list of converters to enable as full class name or simple class name.
+ * All the converters automatically registered are enabled if empty or null
+ */
+ private List<java.lang.String> enabledConverters;
+ /**
+ * To use a custom HeaderFilterStrategy to filter header to and from Camel
+ * message.
+ */
+ private HeaderFilterStrategy headerFilterStrategy;
+
+ public Boolean getControllerDaemon() {
+ return controllerDaemon;
+ }
+
+ public void setControllerDaemon(Boolean controllerDaemon) {
+ this.controllerDaemon = controllerDaemon;
+ }
+
+ public Integer getControllerSleepTimeMs() {
+ return controllerSleepTimeMs;
+ }
+
+ public void setControllerSleepTimeMs(Integer controllerSleepTimeMs) {
+ this.controllerSleepTimeMs = controllerSleepTimeMs;
+ }
+
+ public Integer getInboundBufferSize() {
+ return inboundBufferSize;
+ }
+
+ public void setInboundBufferSize(Integer inboundBufferSize) {
+ this.inboundBufferSize = inboundBufferSize;
+ }
+
+ public Integer getMaxConnectionsPerHost() {
+ return maxConnectionsPerHost;
+ }
+
+ public void setMaxConnectionsPerHost(Integer maxConnectionsPerHost) {
+ this.maxConnectionsPerHost = maxConnectionsPerHost;
+ }
+
+ public Integer getMaxThreads() {
+ return maxThreads;
+ }
+
+ public void setMaxThreads(Integer maxThreads) {
+ this.maxThreads = maxThreads;
+ }
+
+ public Integer getLowThreads() {
+ return lowThreads;
+ }
+
+ public void setLowThreads(Integer lowThreads) {
+ this.lowThreads = lowThreads;
+ }
+
+ public Integer getMaxTotalConnections() {
+ return maxTotalConnections;
+ }
+
+ public void setMaxTotalConnections(Integer maxTotalConnections) {
+ this.maxTotalConnections = maxTotalConnections;
+ }
+
+ public Integer getMinThreads() {
+ return minThreads;
+ }
+
+ public void setMinThreads(Integer minThreads) {
+ this.minThreads = minThreads;
+ }
+
+ public Integer getOutboundBufferSize() {
+ return outboundBufferSize;
+ }
+
+ public void setOutboundBufferSize(Integer outboundBufferSize) {
+ this.outboundBufferSize = outboundBufferSize;
+ }
+
+ public Boolean getPersistingConnections() {
+ return persistingConnections;
+ }
+
+ public void setPersistingConnections(Boolean persistingConnections) {
+ this.persistingConnections = persistingConnections;
+ }
+
+ public Boolean getPipeliningConnections() {
+ return pipeliningConnections;
+ }
+
+ public void setPipeliningConnections(Boolean pipeliningConnections) {
+ this.pipeliningConnections = pipeliningConnections;
+ }
+
+ public Integer getThreadMaxIdleTimeMs() {
+ return threadMaxIdleTimeMs;
+ }
+
+ public void setThreadMaxIdleTimeMs(Integer threadMaxIdleTimeMs) {
+ this.threadMaxIdleTimeMs = threadMaxIdleTimeMs;
+ }
+
+ public Boolean getUseForwardedForHeader() {
+ return useForwardedForHeader;
+ }
+
+ public void setUseForwardedForHeader(Boolean useForwardedForHeader) {
+ this.useForwardedForHeader = useForwardedForHeader;
+ }
+
+ public Boolean getReuseAddress() {
+ return reuseAddress;
+ }
+
+ public void setReuseAddress(Boolean reuseAddress) {
+ this.reuseAddress = reuseAddress;
+ }
+
+ public Integer getMaxQueued() {
+ return maxQueued;
+ }
+
+ public void setMaxQueued(Integer maxQueued) {
+ this.maxQueued = maxQueued;
+ }
+
+ public boolean isDisableStreamCache() {
+ return disableStreamCache;
+ }
+
+ public void setDisableStreamCache(boolean disableStreamCache) {
+ this.disableStreamCache = disableStreamCache;
+ }
+
+ public int getPort() {
+ return port;
+ }
+
+ public void setPort(int port) {
+ this.port = port;
+ }
+
+ public Boolean getSynchronous() {
+ return synchronous;
+ }
+
+ public void setSynchronous(Boolean synchronous) {
+ this.synchronous = synchronous;
+ }
+
+ public List<String> getEnabledConverters() {
+ return enabledConverters;
+ }
+
+ public void setEnabledConverters(List<String> enabledConverters) {
+ this.enabledConverters = enabledConverters;
+ }
+
+ public HeaderFilterStrategy getHeaderFilterStrategy() {
+ return headerFilterStrategy;
+ }
+
+ public void setHeaderFilterStrategy(
+ HeaderFilterStrategy headerFilterStrategy) {
+ this.headerFilterStrategy = headerFilterStrategy;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-restlet/src/main/resources/META-INF/spring.factories
----------------------------------------------------------------------
diff --git a/components/camel-restlet/src/main/resources/META-INF/spring.factories b/components/camel-restlet/src/main/resources/META-INF/spring.factories
new file mode 100644
index 0000000..5ff7b3e
--- /dev/null
+++ b/components/camel-restlet/src/main/resources/META-INF/spring.factories
@@ -0,0 +1,19 @@
+#
+# 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.springframework.boot.autoconfigure.EnableAutoConfiguration=\
+org.apache.camel.component.restlet.springboot.RestletComponentAutoConfiguration
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/springboot/SalesforceComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/springboot/SalesforceComponentAutoConfiguration.java b/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/springboot/SalesforceComponentAutoConfiguration.java
new file mode 100644
index 0000000..7bd6cbd
--- /dev/null
+++ b/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/springboot/SalesforceComponentAutoConfiguration.java
@@ -0,0 +1,50 @@
+/**
+ * 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.component.salesforce.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.component.salesforce.SalesforceComponent;
+import org.apache.camel.util.IntrospectionSupport;
+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.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(SalesforceComponentConfiguration.class)
+public class SalesforceComponentAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(SalesforceComponent.class)
+ public SalesforceComponent configureComponent(CamelContext camelContext,
+ SalesforceComponentConfiguration configuration) throws Exception {
+ SalesforceComponent component = new SalesforceComponent();
+ component.setCamelContext(camelContext);
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), component, parameters);
+ return component;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/springboot/SalesforceComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/springboot/SalesforceComponentConfiguration.java b/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/springboot/SalesforceComponentConfiguration.java
new file mode 100644
index 0000000..37c73ea
--- /dev/null
+++ b/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/springboot/SalesforceComponentConfiguration.java
@@ -0,0 +1,231 @@
+/**
+ * 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.component.salesforce.springboot;
+
+import java.util.Map;
+import java.util.Set;
+import org.apache.camel.component.salesforce.SalesforceEndpointConfig;
+import org.apache.camel.component.salesforce.SalesforceLoginConfig;
+import org.apache.camel.util.jsse.SSLContextParameters;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * The salesforce component is used for integrating Camel with the massive
+ * Salesforce API.
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.component.salesforce")
+public class SalesforceComponentConfiguration {
+
+ /**
+ * To use the shared SalesforceLoginConfig as login configuration
+ */
+ private SalesforceLoginConfig loginConfig;
+ /**
+ * To use the shared SalesforceLoginConfig as configuration
+ */
+ private SalesforceEndpointConfig config;
+ /**
+ * Used for configuring HTTP client properties as key/value pairs
+ */
+ private Map<java.lang.String, java.lang.Object> httpClientProperties;
+ /**
+ * To configure security using SSLContextParameters
+ */
+ private SSLContextParameters sslContextParameters;
+ /**
+ * To configure HTTP proxy host
+ */
+ private String httpProxyHost;
+ /**
+ * To configure HTTP proxy port
+ */
+ private Integer httpProxyPort;
+ /**
+ * To configure HTTP proxy username
+ */
+ private String httpProxyUsername;
+ /**
+ * To configure HTTP proxy password
+ */
+ private String httpProxyPassword;
+ /**
+ * Enable for Socks4 proxy false by default
+ */
+ private boolean isHttpProxySocks4;
+ /**
+ * Enable for TLS connections true by default
+ */
+ private boolean isHttpProxySecure;
+ /**
+ * HTTP proxy included addresses
+ */
+ private Set<java.lang.String> httpProxyIncludedAddresses;
+ /**
+ * HTTP proxy excluded addresses
+ */
+ private Set<java.lang.String> httpProxyExcludedAddresses;
+ /**
+ * HTTP proxy authentication URI
+ */
+ private String httpProxyAuthUri;
+ /**
+ * HTTP proxy authentication realm
+ */
+ private String httpProxyRealm;
+ /**
+ * Use HTTP proxy Digest authentication false by default
+ */
+ private boolean httpProxyUseDigestAuth;
+ /**
+ * Package names to scan for DTO classes (multiple packages can be separated
+ * by comma).
+ */
+ private String[] packages;
+
+ public SalesforceLoginConfig getLoginConfig() {
+ return loginConfig;
+ }
+
+ public void setLoginConfig(SalesforceLoginConfig loginConfig) {
+ this.loginConfig = loginConfig;
+ }
+
+ public SalesforceEndpointConfig getConfig() {
+ return config;
+ }
+
+ public void setConfig(SalesforceEndpointConfig config) {
+ this.config = config;
+ }
+
+ public Map<String, Object> getHttpClientProperties() {
+ return httpClientProperties;
+ }
+
+ public void setHttpClientProperties(Map<String, Object> httpClientProperties) {
+ this.httpClientProperties = httpClientProperties;
+ }
+
+ public SSLContextParameters getSslContextParameters() {
+ return sslContextParameters;
+ }
+
+ public void setSslContextParameters(
+ SSLContextParameters sslContextParameters) {
+ this.sslContextParameters = sslContextParameters;
+ }
+
+ public String getHttpProxyHost() {
+ return httpProxyHost;
+ }
+
+ public void setHttpProxyHost(String httpProxyHost) {
+ this.httpProxyHost = httpProxyHost;
+ }
+
+ public Integer getHttpProxyPort() {
+ return httpProxyPort;
+ }
+
+ public void setHttpProxyPort(Integer httpProxyPort) {
+ this.httpProxyPort = httpProxyPort;
+ }
+
+ public String getHttpProxyUsername() {
+ return httpProxyUsername;
+ }
+
+ public void setHttpProxyUsername(String httpProxyUsername) {
+ this.httpProxyUsername = httpProxyUsername;
+ }
+
+ public String getHttpProxyPassword() {
+ return httpProxyPassword;
+ }
+
+ public void setHttpProxyPassword(String httpProxyPassword) {
+ this.httpProxyPassword = httpProxyPassword;
+ }
+
+ public boolean isIsHttpProxySocks4() {
+ return isHttpProxySocks4;
+ }
+
+ public void setIsHttpProxySocks4(boolean isHttpProxySocks4) {
+ this.isHttpProxySocks4 = isHttpProxySocks4;
+ }
+
+ public boolean isIsHttpProxySecure() {
+ return isHttpProxySecure;
+ }
+
+ public void setIsHttpProxySecure(boolean isHttpProxySecure) {
+ this.isHttpProxySecure = isHttpProxySecure;
+ }
+
+ public Set<String> getHttpProxyIncludedAddresses() {
+ return httpProxyIncludedAddresses;
+ }
+
+ public void setHttpProxyIncludedAddresses(
+ Set<String> httpProxyIncludedAddresses) {
+ this.httpProxyIncludedAddresses = httpProxyIncludedAddresses;
+ }
+
+ public Set<String> getHttpProxyExcludedAddresses() {
+ return httpProxyExcludedAddresses;
+ }
+
+ public void setHttpProxyExcludedAddresses(
+ Set<String> httpProxyExcludedAddresses) {
+ this.httpProxyExcludedAddresses = httpProxyExcludedAddresses;
+ }
+
+ public String getHttpProxyAuthUri() {
+ return httpProxyAuthUri;
+ }
+
+ public void setHttpProxyAuthUri(String httpProxyAuthUri) {
+ this.httpProxyAuthUri = httpProxyAuthUri;
+ }
+
+ public String getHttpProxyRealm() {
+ return httpProxyRealm;
+ }
+
+ public void setHttpProxyRealm(String httpProxyRealm) {
+ this.httpProxyRealm = httpProxyRealm;
+ }
+
+ public boolean isHttpProxyUseDigestAuth() {
+ return httpProxyUseDigestAuth;
+ }
+
+ public void setHttpProxyUseDigestAuth(boolean httpProxyUseDigestAuth) {
+ this.httpProxyUseDigestAuth = httpProxyUseDigestAuth;
+ }
+
+ public String[] getPackages() {
+ return packages;
+ }
+
+ public void setPackages(String[] packages) {
+ this.packages = packages;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-salesforce/camel-salesforce-component/src/main/resources/META-INF/spring.factories
----------------------------------------------------------------------
diff --git a/components/camel-salesforce/camel-salesforce-component/src/main/resources/META-INF/spring.factories b/components/camel-salesforce/camel-salesforce-component/src/main/resources/META-INF/spring.factories
new file mode 100644
index 0000000..19e534b
--- /dev/null
+++ b/components/camel-salesforce/camel-salesforce-component/src/main/resources/META-INF/spring.factories
@@ -0,0 +1,19 @@
+#
+# 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.springframework.boot.autoconfigure.EnableAutoConfiguration=\
+org.apache.camel.component.salesforce.springboot.SalesforceComponentAutoConfiguration
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/springboot/XQueryComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/springboot/XQueryComponentAutoConfiguration.java b/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/springboot/XQueryComponentAutoConfiguration.java
new file mode 100644
index 0000000..a8e7c3c
--- /dev/null
+++ b/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/springboot/XQueryComponentAutoConfiguration.java
@@ -0,0 +1,50 @@
+/**
+ * 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.component.xquery.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.component.xquery.XQueryComponent;
+import org.apache.camel.util.IntrospectionSupport;
+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.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(XQueryComponentConfiguration.class)
+public class XQueryComponentAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(XQueryComponent.class)
+ public XQueryComponent configureComponent(CamelContext camelContext,
+ XQueryComponentConfiguration configuration) throws Exception {
+ XQueryComponent component = new XQueryComponent();
+ component.setCamelContext(camelContext);
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), component, parameters);
+ return component;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/springboot/XQueryComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/springboot/XQueryComponentConfiguration.java b/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/springboot/XQueryComponentConfiguration.java
new file mode 100644
index 0000000..8731955
--- /dev/null
+++ b/components/camel-saxon/src/main/java/org/apache/camel/component/xquery/springboot/XQueryComponentConfiguration.java
@@ -0,0 +1,42 @@
+/**
+ * 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.component.xquery.springboot;
+
+import net.sf.saxon.lib.ModuleURIResolver;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * Transforms the message using a XQuery template using Saxon.
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.component.xquery")
+public class XQueryComponentConfiguration {
+
+ /**
+ * To use the custom ModuleURIResolver
+ */
+ private ModuleURIResolver moduleURIResolver;
+
+ public ModuleURIResolver getModuleURIResolver() {
+ return moduleURIResolver;
+ }
+
+ public void setModuleURIResolver(ModuleURIResolver moduleURIResolver) {
+ this.moduleURIResolver = moduleURIResolver;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-saxon/src/main/resources/META-INF/spring.factories
----------------------------------------------------------------------
diff --git a/components/camel-saxon/src/main/resources/META-INF/spring.factories b/components/camel-saxon/src/main/resources/META-INF/spring.factories
new file mode 100644
index 0000000..e9b7419
--- /dev/null
+++ b/components/camel-saxon/src/main/resources/META-INF/spring.factories
@@ -0,0 +1,19 @@
+#
+# 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.springframework.boot.autoconfigure.EnableAutoConfiguration=\
+org.apache.camel.component.xquery.springboot.XQueryComponentAutoConfiguration
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/springboot/ServletComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/springboot/ServletComponentAutoConfiguration.java b/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/springboot/ServletComponentAutoConfiguration.java
new file mode 100644
index 0000000..f9d8b98
--- /dev/null
+++ b/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/springboot/ServletComponentAutoConfiguration.java
@@ -0,0 +1,50 @@
+/**
+ * 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.component.servlet.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.component.servlet.ServletComponent;
+import org.apache.camel.util.IntrospectionSupport;
+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.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(ServletComponentConfiguration.class)
+public class ServletComponentAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(ServletComponent.class)
+ public ServletComponent configureComponent(CamelContext camelContext,
+ ServletComponentConfiguration configuration) throws Exception {
+ ServletComponent component = new ServletComponent();
+ component.setCamelContext(camelContext);
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), component, parameters);
+ return component;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/springboot/ServletComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/springboot/ServletComponentConfiguration.java b/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/springboot/ServletComponentConfiguration.java
new file mode 100644
index 0000000..56c156c
--- /dev/null
+++ b/components/camel-servlet/src/main/java/org/apache/camel/component/servlet/springboot/ServletComponentConfiguration.java
@@ -0,0 +1,127 @@
+/**
+ * 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.component.servlet.springboot;
+
+import org.apache.camel.component.servlet.HttpRegistry;
+import org.apache.camel.http.common.HttpBinding;
+import org.apache.camel.http.common.HttpConfiguration;
+import org.apache.camel.spi.HeaderFilterStrategy;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * To use a HTTP Servlet as entry for Camel routes when running in a servlet
+ * container.
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.component.servlet")
+public class ServletComponentConfiguration {
+
+ /**
+ * Default name of servlet to use. The default name is CamelServlet.
+ */
+ private String servletName;
+ /**
+ * To use a custom org.apache.camel.component.servlet.HttpRegistry.
+ */
+ private HttpRegistry httpRegistry;
+ /**
+ * Whether to automatic bind multipart/form-data as attachments on the Camel
+ * Exchange. This is turn off by default as this may require servet specific
+ * configuration to enable this when using Servlet's.
+ */
+ private boolean attachmentMultipartBinding;
+ /**
+ * To use a custom HttpBinding to control the mapping between Camel message
+ * and HttpClient.
+ */
+ private HttpBinding httpBinding;
+ /**
+ * To use the shared HttpConfiguration as base configuration.
+ */
+ private HttpConfiguration httpConfiguration;
+ /**
+ * Whether to allow java serialization when a request uses
+ * context-type=application/x-java-serialized-object This is by default
+ * turned off. If you enable this then be aware that Java will deserialize
+ * the incoming data from the request to Java and that can be a potential
+ * security risk.
+ */
+ private boolean allowJavaSerializedObject;
+ /**
+ * To use a custom HeaderFilterStrategy to filter header to and from Camel
+ * message.
+ */
+ private HeaderFilterStrategy headerFilterStrategy;
+
+ public String getServletName() {
+ return servletName;
+ }
+
+ public void setServletName(String servletName) {
+ this.servletName = servletName;
+ }
+
+ public HttpRegistry getHttpRegistry() {
+ return httpRegistry;
+ }
+
+ public void setHttpRegistry(HttpRegistry httpRegistry) {
+ this.httpRegistry = httpRegistry;
+ }
+
+ public boolean isAttachmentMultipartBinding() {
+ return attachmentMultipartBinding;
+ }
+
+ public void setAttachmentMultipartBinding(boolean attachmentMultipartBinding) {
+ this.attachmentMultipartBinding = attachmentMultipartBinding;
+ }
+
+ public HttpBinding getHttpBinding() {
+ return httpBinding;
+ }
+
+ public void setHttpBinding(HttpBinding httpBinding) {
+ this.httpBinding = httpBinding;
+ }
+
+ public HttpConfiguration getHttpConfiguration() {
+ return httpConfiguration;
+ }
+
+ public void setHttpConfiguration(HttpConfiguration httpConfiguration) {
+ this.httpConfiguration = httpConfiguration;
+ }
+
+ public boolean isAllowJavaSerializedObject() {
+ return allowJavaSerializedObject;
+ }
+
+ public void setAllowJavaSerializedObject(boolean allowJavaSerializedObject) {
+ this.allowJavaSerializedObject = allowJavaSerializedObject;
+ }
+
+ public HeaderFilterStrategy getHeaderFilterStrategy() {
+ return headerFilterStrategy;
+ }
+
+ public void setHeaderFilterStrategy(
+ HeaderFilterStrategy headerFilterStrategy) {
+ this.headerFilterStrategy = headerFilterStrategy;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-servlet/src/main/resources/META-INF/spring.factories
----------------------------------------------------------------------
diff --git a/components/camel-servlet/src/main/resources/META-INF/spring.factories b/components/camel-servlet/src/main/resources/META-INF/spring.factories
new file mode 100644
index 0000000..878459a
--- /dev/null
+++ b/components/camel-servlet/src/main/resources/META-INF/spring.factories
@@ -0,0 +1,19 @@
+#
+# 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.springframework.boot.autoconfigure.EnableAutoConfiguration=\
+org.apache.camel.component.servlet.springboot.ServletComponentAutoConfiguration
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/batch/springboot/SjmsBatchComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/batch/springboot/SjmsBatchComponentAutoConfiguration.java b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/batch/springboot/SjmsBatchComponentAutoConfiguration.java
new file mode 100644
index 0000000..ff2c90d
--- /dev/null
+++ b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/batch/springboot/SjmsBatchComponentAutoConfiguration.java
@@ -0,0 +1,50 @@
+/**
+ * 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.component.sjms.batch.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.component.sjms.batch.SjmsBatchComponent;
+import org.apache.camel.util.IntrospectionSupport;
+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.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(SjmsBatchComponentConfiguration.class)
+public class SjmsBatchComponentAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(SjmsBatchComponent.class)
+ public SjmsBatchComponent configureComponent(CamelContext camelContext,
+ SjmsBatchComponentConfiguration configuration) throws Exception {
+ SjmsBatchComponent component = new SjmsBatchComponent();
+ component.setCamelContext(camelContext);
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), component, parameters);
+ return component;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/batch/springboot/SjmsBatchComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/batch/springboot/SjmsBatchComponentConfiguration.java b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/batch/springboot/SjmsBatchComponentConfiguration.java
new file mode 100644
index 0000000..b611055
--- /dev/null
+++ b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/batch/springboot/SjmsBatchComponentConfiguration.java
@@ -0,0 +1,43 @@
+/**
+ * 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.component.sjms.batch.springboot;
+
+import javax.jms.ConnectionFactory;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * The sjms-batch component is a specialized for highly performant transactional
+ * batch consumption from a JMS queue.
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.component.sjms-batch")
+public class SjmsBatchComponentConfiguration {
+
+ /**
+ * A ConnectionFactory is required to enable the SjmsBatchComponent.
+ */
+ private ConnectionFactory connectionFactory;
+
+ public ConnectionFactory getConnectionFactory() {
+ return connectionFactory;
+ }
+
+ public void setConnectionFactory(ConnectionFactory connectionFactory) {
+ this.connectionFactory = connectionFactory;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/springboot/SjmsComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/springboot/SjmsComponentAutoConfiguration.java b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/springboot/SjmsComponentAutoConfiguration.java
new file mode 100644
index 0000000..de771b7
--- /dev/null
+++ b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/springboot/SjmsComponentAutoConfiguration.java
@@ -0,0 +1,50 @@
+/**
+ * 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.component.sjms.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.component.sjms.SjmsComponent;
+import org.apache.camel.util.IntrospectionSupport;
+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.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(SjmsComponentConfiguration.class)
+public class SjmsComponentAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(SjmsComponent.class)
+ public SjmsComponent configureComponent(CamelContext camelContext,
+ SjmsComponentConfiguration configuration) throws Exception {
+ SjmsComponent component = new SjmsComponent();
+ component.setCamelContext(camelContext);
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), component, parameters);
+ return component;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/springboot/SjmsComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/springboot/SjmsComponentConfiguration.java b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/springboot/SjmsComponentConfiguration.java
new file mode 100644
index 0000000..b45174d
--- /dev/null
+++ b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/springboot/SjmsComponentConfiguration.java
@@ -0,0 +1,166 @@
+/**
+ * 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.component.sjms.springboot;
+
+import javax.jms.ConnectionFactory;
+import org.apache.camel.component.sjms.TransactionCommitStrategy;
+import org.apache.camel.component.sjms.jms.ConnectionResource;
+import org.apache.camel.component.sjms.jms.DestinationCreationStrategy;
+import org.apache.camel.component.sjms.jms.JmsKeyFormatStrategy;
+import org.apache.camel.component.sjms.jms.MessageCreatedStrategy;
+import org.apache.camel.component.sjms.taskmanager.TimedTaskManager;
+import org.apache.camel.spi.HeaderFilterStrategy;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * The sjms component (simple jms) allows messages to be sent to (or consumed
+ * from) a JMS Queue or Topic.
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.component.sjms")
+public class SjmsComponentConfiguration {
+
+ /**
+ * A ConnectionFactory is required to enable the SjmsComponent. It can be
+ * set directly or set set as part of a ConnectionResource.
+ */
+ private ConnectionFactory connectionFactory;
+ /**
+ * To use a custom HeaderFilterStrategy to filter header to and from Camel
+ * message.
+ */
+ private HeaderFilterStrategy headerFilterStrategy;
+ /**
+ * A ConnectionResource is an interface that allows for customization and
+ * container control of the ConnectionFactory. See Plugable Connection
+ * Resource Management for further details.
+ */
+ private ConnectionResource connectionResource;
+ /**
+ * The maximum number of connections available to endpoints started under
+ * this component
+ */
+ private Integer connectionCount;
+ /**
+ * Pluggable strategy for encoding and decoding JMS keys so they can be
+ * compliant with the JMS specification. Camel provides one implementation
+ * out of the box: default. The default strategy will safely marshal dots
+ * and hyphens (. and -). Can be used for JMS brokers which do not care
+ * whether JMS header keys contain illegal characters. You can provide your
+ * own implementation of the
+ * org.apache.camel.component.jms.JmsKeyFormatStrategy and refer to it using
+ * the notation.
+ */
+ private JmsKeyFormatStrategy jmsKeyFormatStrategy;
+ /**
+ * To configure which kind of commit strategy to use. Camel provides two
+ * implementations out of the box default and batch.
+ */
+ private TransactionCommitStrategy transactionCommitStrategy;
+ /**
+ * To use a custom DestinationCreationStrategy.
+ */
+ private DestinationCreationStrategy destinationCreationStrategy;
+ /**
+ * To use a custom TimedTaskManager
+ */
+ private TimedTaskManager timedTaskManager;
+ /**
+ * To use the given MessageCreatedStrategy which are invoked when Camel
+ * creates new instances of javax.jms.Message objects when Camel is sending
+ * a JMS message.
+ */
+ private MessageCreatedStrategy messageCreatedStrategy;
+
+ public ConnectionFactory getConnectionFactory() {
+ return connectionFactory;
+ }
+
+ public void setConnectionFactory(ConnectionFactory connectionFactory) {
+ this.connectionFactory = connectionFactory;
+ }
+
+ public HeaderFilterStrategy getHeaderFilterStrategy() {
+ return headerFilterStrategy;
+ }
+
+ public void setHeaderFilterStrategy(
+ HeaderFilterStrategy headerFilterStrategy) {
+ this.headerFilterStrategy = headerFilterStrategy;
+ }
+
+ public ConnectionResource getConnectionResource() {
+ return connectionResource;
+ }
+
+ public void setConnectionResource(ConnectionResource connectionResource) {
+ this.connectionResource = connectionResource;
+ }
+
+ public Integer getConnectionCount() {
+ return connectionCount;
+ }
+
+ public void setConnectionCount(Integer connectionCount) {
+ this.connectionCount = connectionCount;
+ }
+
+ public JmsKeyFormatStrategy getJmsKeyFormatStrategy() {
+ return jmsKeyFormatStrategy;
+ }
+
+ public void setJmsKeyFormatStrategy(
+ JmsKeyFormatStrategy jmsKeyFormatStrategy) {
+ this.jmsKeyFormatStrategy = jmsKeyFormatStrategy;
+ }
+
+ public TransactionCommitStrategy getTransactionCommitStrategy() {
+ return transactionCommitStrategy;
+ }
+
+ public void setTransactionCommitStrategy(
+ TransactionCommitStrategy transactionCommitStrategy) {
+ this.transactionCommitStrategy = transactionCommitStrategy;
+ }
+
+ public DestinationCreationStrategy getDestinationCreationStrategy() {
+ return destinationCreationStrategy;
+ }
+
+ public void setDestinationCreationStrategy(
+ DestinationCreationStrategy destinationCreationStrategy) {
+ this.destinationCreationStrategy = destinationCreationStrategy;
+ }
+
+ public TimedTaskManager getTimedTaskManager() {
+ return timedTaskManager;
+ }
+
+ public void setTimedTaskManager(TimedTaskManager timedTaskManager) {
+ this.timedTaskManager = timedTaskManager;
+ }
+
+ public MessageCreatedStrategy getMessageCreatedStrategy() {
+ return messageCreatedStrategy;
+ }
+
+ public void setMessageCreatedStrategy(
+ MessageCreatedStrategy messageCreatedStrategy) {
+ this.messageCreatedStrategy = messageCreatedStrategy;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-sjms/src/main/resources/META-INF/spring.factories
----------------------------------------------------------------------
diff --git a/components/camel-sjms/src/main/resources/META-INF/spring.factories b/components/camel-sjms/src/main/resources/META-INF/spring.factories
new file mode 100644
index 0000000..7fe9139
--- /dev/null
+++ b/components/camel-sjms/src/main/resources/META-INF/spring.factories
@@ -0,0 +1,21 @@
+#
+# 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.springframework.boot.autoconfigure.EnableAutoConfiguration=\
+org.apache.camel.component.sjms.springboot.SjmsComponentAutoConfiguration,\
+org.apache.camel.component.sjms.batch.springboot.SjmsBatchComponentAutoConfiguration
+
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-slack/src/main/java/org/apache/camel/component/slack/springboot/SlackComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-slack/src/main/java/org/apache/camel/component/slack/springboot/SlackComponentAutoConfiguration.java b/components/camel-slack/src/main/java/org/apache/camel/component/slack/springboot/SlackComponentAutoConfiguration.java
new file mode 100644
index 0000000..831c22d
--- /dev/null
+++ b/components/camel-slack/src/main/java/org/apache/camel/component/slack/springboot/SlackComponentAutoConfiguration.java
@@ -0,0 +1,50 @@
+/**
+ * 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.component.slack.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.component.slack.SlackComponent;
+import org.apache.camel.util.IntrospectionSupport;
+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.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(SlackComponentConfiguration.class)
+public class SlackComponentAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(SlackComponent.class)
+ public SlackComponent configureComponent(CamelContext camelContext,
+ SlackComponentConfiguration configuration) throws Exception {
+ SlackComponent component = new SlackComponent();
+ component.setCamelContext(camelContext);
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), component, parameters);
+ return component;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-slack/src/main/java/org/apache/camel/component/slack/springboot/SlackComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-slack/src/main/java/org/apache/camel/component/slack/springboot/SlackComponentConfiguration.java b/components/camel-slack/src/main/java/org/apache/camel/component/slack/springboot/SlackComponentConfiguration.java
new file mode 100644
index 0000000..59ceb03
--- /dev/null
+++ b/components/camel-slack/src/main/java/org/apache/camel/component/slack/springboot/SlackComponentConfiguration.java
@@ -0,0 +1,41 @@
+/**
+ * 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.component.slack.springboot;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * The slack component allows you to send messages to Slack.
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.component.slack")
+public class SlackComponentConfiguration {
+
+ /**
+ * The incoming webhook URL
+ */
+ private String webhookUrl;
+
+ public String getWebhookUrl() {
+ return webhookUrl;
+ }
+
+ public void setWebhookUrl(String webhookUrl) {
+ this.webhookUrl = webhookUrl;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-slack/src/main/resources/META-INF/spring.factories
----------------------------------------------------------------------
diff --git a/components/camel-slack/src/main/resources/META-INF/spring.factories b/components/camel-slack/src/main/resources/META-INF/spring.factories
new file mode 100644
index 0000000..3be2452
--- /dev/null
+++ b/components/camel-slack/src/main/resources/META-INF/spring.factories
@@ -0,0 +1,19 @@
+#
+# 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.springframework.boot.autoconfigure.EnableAutoConfiguration=\
+org.apache.camel.component.slack.springboot.SlackComponentAutoConfiguration
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/springboot/SmppComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/springboot/SmppComponentAutoConfiguration.java b/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/springboot/SmppComponentAutoConfiguration.java
new file mode 100644
index 0000000..4a9783c
--- /dev/null
+++ b/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/springboot/SmppComponentAutoConfiguration.java
@@ -0,0 +1,50 @@
+/**
+ * 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.component.smpp.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.component.smpp.SmppComponent;
+import org.apache.camel.util.IntrospectionSupport;
+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.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(SmppComponentConfiguration.class)
+public class SmppComponentAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(SmppComponent.class)
+ public SmppComponent configureComponent(CamelContext camelContext,
+ SmppComponentConfiguration configuration) throws Exception {
+ SmppComponent component = new SmppComponent();
+ component.setCamelContext(camelContext);
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), component, parameters);
+ return component;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/springboot/SmppComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/springboot/SmppComponentConfiguration.java b/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/springboot/SmppComponentConfiguration.java
new file mode 100644
index 0000000..e6e5277
--- /dev/null
+++ b/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/springboot/SmppComponentConfiguration.java
@@ -0,0 +1,42 @@
+/**
+ * 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.component.smpp.springboot;
+
+import org.apache.camel.component.smpp.SmppConfiguration;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * To send and receive SMS using a SMSC (Short Message Service Center).
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.component.smpps")
+public class SmppComponentConfiguration {
+
+ /**
+ * To use the shared SmppConfiguration as configuration.
+ */
+ private SmppConfiguration configuration;
+
+ public SmppConfiguration getConfiguration() {
+ return configuration;
+ }
+
+ public void setConfiguration(SmppConfiguration configuration) {
+ this.configuration = configuration;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-smpp/src/main/resources/META-INF/spring.factories
----------------------------------------------------------------------
diff --git a/components/camel-smpp/src/main/resources/META-INF/spring.factories b/components/camel-smpp/src/main/resources/META-INF/spring.factories
new file mode 100644
index 0000000..e3c2d51
--- /dev/null
+++ b/components/camel-smpp/src/main/resources/META-INF/spring.factories
@@ -0,0 +1,19 @@
+#
+# 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.springframework.boot.autoconfigure.EnableAutoConfiguration=\
+org.apache.camel.component.smpp.springboot.SmppComponentAutoConfiguration
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/springboot/SparkComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/springboot/SparkComponentAutoConfiguration.java b/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/springboot/SparkComponentAutoConfiguration.java
new file mode 100644
index 0000000..95e12d6
--- /dev/null
+++ b/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/springboot/SparkComponentAutoConfiguration.java
@@ -0,0 +1,50 @@
+/**
+ * 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.component.sparkrest.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.component.sparkrest.SparkComponent;
+import org.apache.camel.util.IntrospectionSupport;
+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.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(SparkComponentConfiguration.class)
+public class SparkComponentAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(SparkComponent.class)
+ public SparkComponent configureComponent(CamelContext camelContext,
+ SparkComponentConfiguration configuration) throws Exception {
+ SparkComponent component = new SparkComponent();
+ component.setCamelContext(camelContext);
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), component, parameters);
+ return component;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/springboot/SparkComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/springboot/SparkComponentConfiguration.java b/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/springboot/SparkComponentConfiguration.java
new file mode 100644
index 0000000..1791ce1
--- /dev/null
+++ b/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/springboot/SparkComponentConfiguration.java
@@ -0,0 +1,166 @@
+/**
+ * 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.component.sparkrest.springboot;
+
+import org.apache.camel.component.sparkrest.SparkBinding;
+import org.apache.camel.component.sparkrest.SparkConfiguration;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * The spark-rest component is used for hosting REST services which has been
+ * defined using Camel rest-dsl.
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.component.spark-rest")
+public class SparkComponentConfiguration {
+
+ /**
+ * Port number. Will by default use 4567
+ */
+ private int port;
+ /**
+ * Set the IP address that Spark should listen on. If not called the default
+ * address is '0.0.0.0'.
+ */
+ private String ipAddress;
+ /**
+ * Minimum number of threads in Spark thread-pool (shared globally)
+ */
+ private int minThreads;
+ /**
+ * Maximum number of threads in Spark thread-pool (shared globally)
+ */
+ private int maxThreads;
+ /**
+ * Thread idle timeout in millis where threads that has been idle for a
+ * longer period will be terminated from the thread pool
+ */
+ private int timeOutMillis;
+ /**
+ * Configures connection to be secure to use the keystore file
+ */
+ private String keystoreFile;
+ /**
+ * Configures connection to be secure to use the keystore password
+ */
+ private String keystorePassword;
+ /**
+ * Configures connection to be secure to use the truststore file
+ */
+ private String truststoreFile;
+ /**
+ * Configures connection to be secure to use the truststore password
+ */
+ private String truststorePassword;
+ /**
+ * To use the shared SparkConfiguration
+ */
+ private SparkConfiguration sparkConfiguration;
+ /**
+ * To use a custom SparkBinding to map to/from Camel message.
+ */
+ private SparkBinding sparkBinding;
+
+ public int getPort() {
+ return port;
+ }
+
+ public void setPort(int port) {
+ this.port = port;
+ }
+
+ public String getIpAddress() {
+ return ipAddress;
+ }
+
+ public void setIpAddress(String ipAddress) {
+ this.ipAddress = ipAddress;
+ }
+
+ public int getMinThreads() {
+ return minThreads;
+ }
+
+ public void setMinThreads(int minThreads) {
+ this.minThreads = minThreads;
+ }
+
+ public int getMaxThreads() {
+ return maxThreads;
+ }
+
+ public void setMaxThreads(int maxThreads) {
+ this.maxThreads = maxThreads;
+ }
+
+ public int getTimeOutMillis() {
+ return timeOutMillis;
+ }
+
+ public void setTimeOutMillis(int timeOutMillis) {
+ this.timeOutMillis = timeOutMillis;
+ }
+
+ public String getKeystoreFile() {
+ return keystoreFile;
+ }
+
+ public void setKeystoreFile(String keystoreFile) {
+ this.keystoreFile = keystoreFile;
+ }
+
+ public String getKeystorePassword() {
+ return keystorePassword;
+ }
+
+ public void setKeystorePassword(String keystorePassword) {
+ this.keystorePassword = keystorePassword;
+ }
+
+ public String getTruststoreFile() {
+ return truststoreFile;
+ }
+
+ public void setTruststoreFile(String truststoreFile) {
+ this.truststoreFile = truststoreFile;
+ }
+
+ public String getTruststorePassword() {
+ return truststorePassword;
+ }
+
+ public void setTruststorePassword(String truststorePassword) {
+ this.truststorePassword = truststorePassword;
+ }
+
+ public SparkConfiguration getSparkConfiguration() {
+ return sparkConfiguration;
+ }
+
+ public void setSparkConfiguration(SparkConfiguration sparkConfiguration) {
+ this.sparkConfiguration = sparkConfiguration;
+ }
+
+ public SparkBinding getSparkBinding() {
+ return sparkBinding;
+ }
+
+ public void setSparkBinding(SparkBinding sparkBinding) {
+ this.sparkBinding = sparkBinding;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-spark-rest/src/main/resources/META-INF/spring.factories
----------------------------------------------------------------------
diff --git a/components/camel-spark-rest/src/main/resources/META-INF/spring.factories b/components/camel-spark-rest/src/main/resources/META-INF/spring.factories
new file mode 100644
index 0000000..9f7f38a
--- /dev/null
+++ b/components/camel-spark-rest/src/main/resources/META-INF/spring.factories
@@ -0,0 +1,19 @@
+#
+# 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.springframework.boot.autoconfigure.EnableAutoConfiguration=\
+org.apache.camel.component.sparkrest.springboot.SparkComponentAutoConfiguration
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-spark/src/main/java/org/apache/camel/component/spark/springboot/SparkComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-spark/src/main/java/org/apache/camel/component/spark/springboot/SparkComponentAutoConfiguration.java b/components/camel-spark/src/main/java/org/apache/camel/component/spark/springboot/SparkComponentAutoConfiguration.java
new file mode 100644
index 0000000..bf65556
--- /dev/null
+++ b/components/camel-spark/src/main/java/org/apache/camel/component/spark/springboot/SparkComponentAutoConfiguration.java
@@ -0,0 +1,50 @@
+/**
+ * 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.component.spark.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.component.spark.SparkComponent;
+import org.apache.camel.util.IntrospectionSupport;
+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.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(SparkComponentConfiguration.class)
+public class SparkComponentAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(SparkComponent.class)
+ public SparkComponent configureComponent(CamelContext camelContext,
+ SparkComponentConfiguration configuration) throws Exception {
+ SparkComponent component = new SparkComponent();
+ component.setCamelContext(camelContext);
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), component, parameters);
+ return component;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-spark/src/main/java/org/apache/camel/component/spark/springboot/SparkComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-spark/src/main/java/org/apache/camel/component/spark/springboot/SparkComponentConfiguration.java b/components/camel-spark/src/main/java/org/apache/camel/component/spark/springboot/SparkComponentConfiguration.java
new file mode 100644
index 0000000..eedf908
--- /dev/null
+++ b/components/camel-spark/src/main/java/org/apache/camel/component/spark/springboot/SparkComponentConfiguration.java
@@ -0,0 +1,56 @@
+/**
+ * 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.component.spark.springboot;
+
+import org.apache.camel.component.spark.RddCallback;
+import org.apache.spark.api.java.JavaRDDLike;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * The spark component can be used to send RDD or DataFrame jobs to Apache Spark
+ * cluster.
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.component.spark")
+public class SparkComponentConfiguration {
+
+ /**
+ * RDD to compute against.
+ */
+ private JavaRDDLike rdd;
+ /**
+ * Function performing action against an RDD.
+ */
+ private RddCallback rddCallback;
+
+ public JavaRDDLike getRdd() {
+ return rdd;
+ }
+
+ public void setRdd(JavaRDDLike rdd) {
+ this.rdd = rdd;
+ }
+
+ public RddCallback getRddCallback() {
+ return rddCallback;
+ }
+
+ public void setRddCallback(RddCallback rddCallback) {
+ this.rddCallback = rddCallback;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/75251730/components/camel-spark/src/main/resources/META-INF/spring.factories
----------------------------------------------------------------------
diff --git a/components/camel-spark/src/main/resources/META-INF/spring.factories b/components/camel-spark/src/main/resources/META-INF/spring.factories
new file mode 100644
index 0000000..744a7bf
--- /dev/null
+++ b/components/camel-spark/src/main/resources/META-INF/spring.factories
@@ -0,0 +1,19 @@
+#
+# 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.springframework.boot.autoconfigure.EnableAutoConfiguration=\
+org.apache.camel.component.spark.springboot.SparkComponentAutoConfiguration