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