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 09:34:10 UTC
[21/34] camel git commit: Experiment with generating spring-boot auto
configuration for the Camel components.
http://git-wip-us.apache.org/repos/asf/camel/blob/3ad3f004/components/camel-quartz2/src/main/java/org/apache/camel/component/quartz2/springboot/QuartzComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-quartz2/src/main/java/org/apache/camel/component/quartz2/springboot/QuartzComponentConfiguration.java b/components/camel-quartz2/src/main/java/org/apache/camel/component/quartz2/springboot/QuartzComponentConfiguration.java
new file mode 100644
index 0000000..1a10e7d
--- /dev/null
+++ b/components/camel-quartz2/src/main/java/org/apache/camel/component/quartz2/springboot/QuartzComponentConfiguration.java
@@ -0,0 +1,149 @@
+/**
+ * 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.quartz2.springboot;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import java.util.Properties;
+import org.quartz.SchedulerFactory;
+import org.quartz.Scheduler;
+
+/**
+ * Provides a scheduled delivery of messages using the Quartz 2.x scheduler.
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.component.quartz2")
+public class QuartzComponentConfiguration {
+
+ /**
+ * Whether or not the scheduler should be auto started. This options is
+ * default true
+ */
+ private boolean autoStartScheduler;
+ /**
+ * Seconds to wait before starting the quartz scheduler.
+ */
+ private int startDelayedSeconds;
+ /**
+ * Whether to prefix the quartz job with the endpoint id. This option is
+ * default false.
+ */
+ private boolean prefixJobNameWithEndpointId;
+ /**
+ * Whether to enable Quartz JMX which allows to manage the Quartz scheduler
+ * from JMX. This options is default true
+ */
+ private boolean enableJmx;
+ /**
+ * Properties to configure the Quartz scheduler.
+ */
+ private Properties properties;
+ /**
+ * File name of the properties to load from the classpath
+ */
+ private String propertiesFile;
+ /**
+ * Whether to prefix the Quartz Scheduler instance name with the
+ * CamelContext name. This is enabled by default to let each CamelContext
+ * use its own Quartz scheduler instance by default. You can set this option
+ * to false to reuse Quartz scheduler instances between multiple
+ * CamelContext's.
+ */
+ private boolean prefixInstanceName;
+ /**
+ * To use the custom SchedulerFactory which is used to create the Scheduler.
+ */
+ private SchedulerFactory schedulerFactory;
+ /**
+ * To use the custom configured Quartz scheduler instead of creating a new
+ * Scheduler.
+ */
+ private Scheduler scheduler;
+
+ public boolean isAutoStartScheduler() {
+ return autoStartScheduler;
+ }
+
+ public void setAutoStartScheduler(boolean autoStartScheduler) {
+ this.autoStartScheduler = autoStartScheduler;
+ }
+
+ public int getStartDelayedSeconds() {
+ return startDelayedSeconds;
+ }
+
+ public void setStartDelayedSeconds(int startDelayedSeconds) {
+ this.startDelayedSeconds = startDelayedSeconds;
+ }
+
+ public boolean isPrefixJobNameWithEndpointId() {
+ return prefixJobNameWithEndpointId;
+ }
+
+ public void setPrefixJobNameWithEndpointId(
+ boolean prefixJobNameWithEndpointId) {
+ this.prefixJobNameWithEndpointId = prefixJobNameWithEndpointId;
+ }
+
+ public boolean isEnableJmx() {
+ return enableJmx;
+ }
+
+ public void setEnableJmx(boolean enableJmx) {
+ this.enableJmx = enableJmx;
+ }
+
+ public Properties getProperties() {
+ return properties;
+ }
+
+ public void setProperties(Properties properties) {
+ this.properties = properties;
+ }
+
+ public String getPropertiesFile() {
+ return propertiesFile;
+ }
+
+ public void setPropertiesFile(String propertiesFile) {
+ this.propertiesFile = propertiesFile;
+ }
+
+ public boolean isPrefixInstanceName() {
+ return prefixInstanceName;
+ }
+
+ public void setPrefixInstanceName(boolean prefixInstanceName) {
+ this.prefixInstanceName = prefixInstanceName;
+ }
+
+ public SchedulerFactory getSchedulerFactory() {
+ return schedulerFactory;
+ }
+
+ public void setSchedulerFactory(SchedulerFactory schedulerFactory) {
+ this.schedulerFactory = schedulerFactory;
+ }
+
+ public Scheduler getScheduler() {
+ return scheduler;
+ }
+
+ public void setScheduler(Scheduler scheduler) {
+ this.scheduler = scheduler;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/3ad3f004/components/camel-quartz2/src/main/resources/META-INF/spring.factories
----------------------------------------------------------------------
diff --git a/components/camel-quartz2/src/main/resources/META-INF/spring.factories b/components/camel-quartz2/src/main/resources/META-INF/spring.factories
new file mode 100644
index 0000000..c8a464a
--- /dev/null
+++ b/components/camel-quartz2/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.quartz2.springboot.QuartzComponentAutoConfiguration
http://git-wip-us.apache.org/repos/asf/camel/blob/3ad3f004/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/springboot/QuickfixjComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/springboot/QuickfixjComponentAutoConfiguration.java b/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/springboot/QuickfixjComponentAutoConfiguration.java
new file mode 100644
index 0000000..f6db84e
--- /dev/null
+++ b/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/springboot/QuickfixjComponentAutoConfiguration.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.quickfixj.springboot;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.component.quickfixj.QuickfixjComponent;
+import org.apache.camel.CamelContext;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.context.annotation.Bean;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(QuickfixjComponentConfiguration.class)
+public class QuickfixjComponentAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(QuickfixjComponent.class)
+ public QuickfixjComponent configureComponent(CamelContext camelContext,
+ QuickfixjComponentConfiguration configuration) throws Exception {
+ QuickfixjComponent component = new QuickfixjComponent();
+ 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/3ad3f004/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/springboot/QuickfixjComponentConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/springboot/QuickfixjComponentConfiguration.java b/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/springboot/QuickfixjComponentConfiguration.java
new file mode 100644
index 0000000..b5c7ac6
--- /dev/null
+++ b/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/springboot/QuickfixjComponentConfiguration.java
@@ -0,0 +1,98 @@
+/**
+ * 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.quickfixj.springboot;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import quickfix.MessageFactory;
+import quickfix.LogFactory;
+import quickfix.MessageStoreFactory;
+import java.util.Map;
+import org.apache.camel.component.quickfixj.QuickfixjConfiguration;
+
+/**
+ * The quickfix component allows to send Financial Interchange (FIX) messages to
+ * the QuickFix engine.
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.component.quickfix")
+public class QuickfixjComponentConfiguration {
+
+ /**
+ * To use the given MessageFactory
+ */
+ private MessageFactory messageFactory;
+ /**
+ * To use the given LogFactory
+ */
+ private LogFactory logFactory;
+ /**
+ * To use the given MessageStoreFactory
+ */
+ private MessageStoreFactory messageStoreFactory;
+ /**
+ * To use the given map of pre configured QuickFix configurations mapped to
+ * the key
+ */
+ private Map<java.lang.String, org.apache.camel.component.quickfixj.QuickfixjConfiguration> configurations;
+ /**
+ * If set to true the engines will be created and started when needed (when
+ * first message is send)
+ */
+ private boolean lazyCreateEngines;
+
+ public MessageFactory getMessageFactory() {
+ return messageFactory;
+ }
+
+ public void setMessageFactory(MessageFactory messageFactory) {
+ this.messageFactory = messageFactory;
+ }
+
+ public LogFactory getLogFactory() {
+ return logFactory;
+ }
+
+ public void setLogFactory(LogFactory logFactory) {
+ this.logFactory = logFactory;
+ }
+
+ public MessageStoreFactory getMessageStoreFactory() {
+ return messageStoreFactory;
+ }
+
+ public void setMessageStoreFactory(MessageStoreFactory messageStoreFactory) {
+ this.messageStoreFactory = messageStoreFactory;
+ }
+
+ public Map<String, QuickfixjConfiguration> getConfigurations() {
+ return configurations;
+ }
+
+ public void setConfigurations(
+ Map<String, QuickfixjConfiguration> configurations) {
+ this.configurations = configurations;
+ }
+
+ public boolean isLazyCreateEngines() {
+ return lazyCreateEngines;
+ }
+
+ public void setLazyCreateEngines(boolean lazyCreateEngines) {
+ this.lazyCreateEngines = lazyCreateEngines;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/3ad3f004/components/camel-quickfix/src/main/resources/META-INF/spring.factories
----------------------------------------------------------------------
diff --git a/components/camel-quickfix/src/main/resources/META-INF/spring.factories b/components/camel-quickfix/src/main/resources/META-INF/spring.factories
new file mode 100644
index 0000000..c3f0a79
--- /dev/null
+++ b/components/camel-quickfix/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.quickfixj.springboot.QuickfixjComponentAutoConfiguration
http://git-wip-us.apache.org/repos/asf/camel/blob/3ad3f004/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/springboot/RestletComponentAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/springboot/RestletComponentAutoConfiguration.java b/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/springboot/RestletComponentAutoConfiguration.java
new file mode 100644
index 0000000..5f67f3c
--- /dev/null
+++ b/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/springboot/RestletComponentAutoConfiguration.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.restlet.springboot;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.component.restlet.RestletComponent;
+import org.apache.camel.CamelContext;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.context.annotation.Bean;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(RestletComponentConfiguration.class)
+public class RestletComponentAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(RestletComponent.class)
+ public RestletComponent configureComponent(CamelContext camelContext,
+ RestletComponentConfiguration configuration) throws Exception {
+ RestletComponent component = new RestletComponent();
+ 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/3ad3f004/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..7628dc5
--- /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 org.springframework.boot.context.properties.ConfigurationProperties;
+import java.util.List;
+import org.apache.camel.spi.HeaderFilterStrategy;
+
+/**
+ * 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/3ad3f004/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/3ad3f004/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..b225f6e
--- /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 org.springframework.context.annotation.Configuration;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.component.salesforce.SalesforceComponent;
+import org.apache.camel.CamelContext;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.context.annotation.Bean;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+
+/**
+ * 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/3ad3f004/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..a0dc59e
--- /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 org.springframework.boot.context.properties.ConfigurationProperties;
+import org.apache.camel.component.salesforce.SalesforceLoginConfig;
+import org.apache.camel.component.salesforce.SalesforceEndpointConfig;
+import java.util.Map;
+import org.apache.camel.util.jsse.SSLContextParameters;
+import java.util.Set;
+
+/**
+ * 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/3ad3f004/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/3ad3f004/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..e7a36ea
--- /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 org.springframework.context.annotation.Configuration;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.component.xquery.XQueryComponent;
+import org.apache.camel.CamelContext;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.context.annotation.Bean;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+
+/**
+ * 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/3ad3f004/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..64a4a68
--- /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 org.springframework.boot.context.properties.ConfigurationProperties;
+import net.sf.saxon.lib.ModuleURIResolver;
+
+/**
+ * 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/3ad3f004/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/3ad3f004/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..6b00043
--- /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 org.springframework.context.annotation.Configuration;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.component.servlet.ServletComponent;
+import org.apache.camel.CamelContext;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.context.annotation.Bean;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+
+/**
+ * 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/3ad3f004/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..acb56fb
--- /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.springframework.boot.context.properties.ConfigurationProperties;
+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;
+
+/**
+ * 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/3ad3f004/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/3ad3f004/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..b90c08d
--- /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 org.springframework.context.annotation.Configuration;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.component.sjms.batch.SjmsBatchComponent;
+import org.apache.camel.CamelContext;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.context.annotation.Bean;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+
+/**
+ * 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/3ad3f004/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..2fc9821
--- /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 org.springframework.boot.context.properties.ConfigurationProperties;
+import javax.jms.ConnectionFactory;
+
+/**
+ * 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/3ad3f004/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..ac6d50a
--- /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 org.springframework.context.annotation.Configuration;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.component.sjms.SjmsComponent;
+import org.apache.camel.CamelContext;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.context.annotation.Bean;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+
+/**
+ * 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/3ad3f004/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..af45c48
--- /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 org.springframework.boot.context.properties.ConfigurationProperties;
+import javax.jms.ConnectionFactory;
+import org.apache.camel.spi.HeaderFilterStrategy;
+import org.apache.camel.component.sjms.jms.ConnectionResource;
+import org.apache.camel.component.sjms.jms.JmsKeyFormatStrategy;
+import org.apache.camel.component.sjms.TransactionCommitStrategy;
+import org.apache.camel.component.sjms.jms.DestinationCreationStrategy;
+import org.apache.camel.component.sjms.taskmanager.TimedTaskManager;
+import org.apache.camel.component.sjms.jms.MessageCreatedStrategy;
+
+/**
+ * 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/3ad3f004/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..a65a16e
--- /dev/null
+++ b/components/camel-sjms/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.sjms.batch.springboot.SjmsBatchComponentAutoConfiguration
http://git-wip-us.apache.org/repos/asf/camel/blob/3ad3f004/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..5a95d5a
--- /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 org.springframework.context.annotation.Configuration;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.component.slack.SlackComponent;
+import org.apache.camel.CamelContext;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.context.annotation.Bean;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+
+/**
+ * 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/3ad3f004/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/3ad3f004/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/3ad3f004/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..79890c3
--- /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 org.springframework.context.annotation.Configuration;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.component.smpp.SmppComponent;
+import org.apache.camel.CamelContext;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.context.annotation.Bean;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+
+/**
+ * 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/3ad3f004/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..5042b30
--- /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.springframework.boot.context.properties.ConfigurationProperties;
+import org.apache.camel.component.smpp.SmppConfiguration;
+
+/**
+ * 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