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/10 11:02:44 UTC
[5/8] camel git commit: CAMEL-10041: Generate spring-boot auto
configuration for all Camel data formats that has options that can be
configured.
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/springboot/UniVocityFixedWidthDataFormatConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/springboot/UniVocityFixedWidthDataFormatConfiguration.java b/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/springboot/UniVocityFixedWidthDataFormatConfiguration.java
new file mode 100644
index 0000000..c7028aa
--- /dev/null
+++ b/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/springboot/UniVocityFixedWidthDataFormatConfiguration.java
@@ -0,0 +1,233 @@
+/**
+ * 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.dataformat.univocity.springboot;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * Camel UniVocity parsers data format support
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.dataformat.univocity-fixed")
+public class UniVocityFixedWidthDataFormatConfiguration {
+
+ /**
+ * Whether or not the trailing characters until new line must be ignored.
+ * The default value is false
+ */
+ private Boolean skipTrailingCharsUntilNewline;
+ /**
+ * Whether or not the record ends on new line. The default value is false
+ */
+ private Boolean recordEndsOnNewline;
+ /**
+ * The padding character. The default value is a space
+ */
+ private String padding;
+ /**
+ * The string representation of a null value. The default value is null
+ */
+ private String nullValue;
+ /**
+ * Whether or not the empty lines must be ignored. The default value is true
+ */
+ private Boolean skipEmptyLines;
+ /**
+ * Whether or not the trailing white spaces must ignored. The default value
+ * is true
+ */
+ private Boolean ignoreTrailingWhitespaces;
+ /**
+ * Whether or not the leading white spaces must be ignored. The default
+ * value is true
+ */
+ private Boolean ignoreLeadingWhitespaces;
+ /**
+ * Whether or not the headers are disabled. When defined this option
+ * explicitly sets the headers as null which indicates that there is no
+ * header. The default value is false
+ */
+ private Boolean headersDisabled;
+ /**
+ * Whether or not the header must be read in the first line of the test
+ * document The default value is false
+ */
+ private Boolean headerExtractionEnabled;
+ /**
+ * The maximum number of record to read.
+ */
+ private Integer numberOfRecordsToRead;
+ /**
+ * The String representation of an empty value
+ */
+ private String emptyValue;
+ /**
+ * The line separator of the files The default value is to use the JVM
+ * platform line separator
+ */
+ private String lineSeparator;
+ /**
+ * The normalized line separator of the files The default value is \n
+ */
+ private String normalizedLineSeparator;
+ /**
+ * The comment symbol. The default value is
+ */
+ private String comment;
+ /**
+ * Whether the unmarshalling should produce an iterator that reads the lines
+ * on the fly or if all the lines must be read at one. The default value is
+ * false
+ */
+ private Boolean lazyLoad;
+ /**
+ * Whether the unmarshalling should produce maps for the lines values
+ * instead of lists. It requires to have header (either defined or
+ * collected). The default value is false
+ */
+ private Boolean asMap;
+
+ public Boolean getSkipTrailingCharsUntilNewline() {
+ return skipTrailingCharsUntilNewline;
+ }
+
+ public void setSkipTrailingCharsUntilNewline(
+ Boolean skipTrailingCharsUntilNewline) {
+ this.skipTrailingCharsUntilNewline = skipTrailingCharsUntilNewline;
+ }
+
+ public Boolean getRecordEndsOnNewline() {
+ return recordEndsOnNewline;
+ }
+
+ public void setRecordEndsOnNewline(Boolean recordEndsOnNewline) {
+ this.recordEndsOnNewline = recordEndsOnNewline;
+ }
+
+ public String getPadding() {
+ return padding;
+ }
+
+ public void setPadding(String padding) {
+ this.padding = padding;
+ }
+
+ public String getNullValue() {
+ return nullValue;
+ }
+
+ public void setNullValue(String nullValue) {
+ this.nullValue = nullValue;
+ }
+
+ public Boolean getSkipEmptyLines() {
+ return skipEmptyLines;
+ }
+
+ public void setSkipEmptyLines(Boolean skipEmptyLines) {
+ this.skipEmptyLines = skipEmptyLines;
+ }
+
+ public Boolean getIgnoreTrailingWhitespaces() {
+ return ignoreTrailingWhitespaces;
+ }
+
+ public void setIgnoreTrailingWhitespaces(Boolean ignoreTrailingWhitespaces) {
+ this.ignoreTrailingWhitespaces = ignoreTrailingWhitespaces;
+ }
+
+ public Boolean getIgnoreLeadingWhitespaces() {
+ return ignoreLeadingWhitespaces;
+ }
+
+ public void setIgnoreLeadingWhitespaces(Boolean ignoreLeadingWhitespaces) {
+ this.ignoreLeadingWhitespaces = ignoreLeadingWhitespaces;
+ }
+
+ public Boolean getHeadersDisabled() {
+ return headersDisabled;
+ }
+
+ public void setHeadersDisabled(Boolean headersDisabled) {
+ this.headersDisabled = headersDisabled;
+ }
+
+ public Boolean getHeaderExtractionEnabled() {
+ return headerExtractionEnabled;
+ }
+
+ public void setHeaderExtractionEnabled(Boolean headerExtractionEnabled) {
+ this.headerExtractionEnabled = headerExtractionEnabled;
+ }
+
+ public Integer getNumberOfRecordsToRead() {
+ return numberOfRecordsToRead;
+ }
+
+ public void setNumberOfRecordsToRead(Integer numberOfRecordsToRead) {
+ this.numberOfRecordsToRead = numberOfRecordsToRead;
+ }
+
+ public String getEmptyValue() {
+ return emptyValue;
+ }
+
+ public void setEmptyValue(String emptyValue) {
+ this.emptyValue = emptyValue;
+ }
+
+ public String getLineSeparator() {
+ return lineSeparator;
+ }
+
+ public void setLineSeparator(String lineSeparator) {
+ this.lineSeparator = lineSeparator;
+ }
+
+ public String getNormalizedLineSeparator() {
+ return normalizedLineSeparator;
+ }
+
+ public void setNormalizedLineSeparator(String normalizedLineSeparator) {
+ this.normalizedLineSeparator = normalizedLineSeparator;
+ }
+
+ public String getComment() {
+ return comment;
+ }
+
+ public void setComment(String comment) {
+ this.comment = comment;
+ }
+
+ public Boolean getLazyLoad() {
+ return lazyLoad;
+ }
+
+ public void setLazyLoad(Boolean lazyLoad) {
+ this.lazyLoad = lazyLoad;
+ }
+
+ public Boolean getAsMap() {
+ return asMap;
+ }
+
+ public void setAsMap(Boolean asMap) {
+ this.asMap = asMap;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/springboot/UniVocityTsvDataFormatAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/springboot/UniVocityTsvDataFormatAutoConfiguration.java b/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/springboot/UniVocityTsvDataFormatAutoConfiguration.java
new file mode 100644
index 0000000..f313989
--- /dev/null
+++ b/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/springboot/UniVocityTsvDataFormatAutoConfiguration.java
@@ -0,0 +1,55 @@
+/**
+ * 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.dataformat.univocity.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.CamelContextAware;
+import org.apache.camel.dataformat.univocity.UniVocityTsvDataFormat;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(UniVocityTsvDataFormatConfiguration.class)
+public class UniVocityTsvDataFormatAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(UniVocityTsvDataFormat.class)
+ public UniVocityTsvDataFormat configureUniVocityTsvDataFormat(
+ CamelContext camelContext,
+ UniVocityTsvDataFormatConfiguration configuration) throws Exception {
+ UniVocityTsvDataFormat dataformat = new UniVocityTsvDataFormat();
+ if (dataformat instanceof CamelContextAware) {
+ ((CamelContextAware) dataformat).setCamelContext(camelContext);
+ }
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null,
+ false);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), dataformat, parameters);
+ return dataformat;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/springboot/UniVocityTsvDataFormatConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/springboot/UniVocityTsvDataFormatConfiguration.java b/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/springboot/UniVocityTsvDataFormatConfiguration.java
new file mode 100644
index 0000000..d33838c
--- /dev/null
+++ b/components/camel-univocity-parsers/src/main/java/org/apache/camel/dataformat/univocity/springboot/UniVocityTsvDataFormatConfiguration.java
@@ -0,0 +1,207 @@
+/**
+ * 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.dataformat.univocity.springboot;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * Camel UniVocity parsers data format support
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.dataformat.univocity-tsv")
+public class UniVocityTsvDataFormatConfiguration {
+
+ /**
+ * The escape character.
+ */
+ private String escapeChar;
+ /**
+ * The string representation of a null value. The default value is null
+ */
+ private String nullValue;
+ /**
+ * Whether or not the empty lines must be ignored. The default value is true
+ */
+ private Boolean skipEmptyLines;
+ /**
+ * Whether or not the trailing white spaces must ignored. The default value
+ * is true
+ */
+ private Boolean ignoreTrailingWhitespaces;
+ /**
+ * Whether or not the leading white spaces must be ignored. The default
+ * value is true
+ */
+ private Boolean ignoreLeadingWhitespaces;
+ /**
+ * Whether or not the headers are disabled. When defined this option
+ * explicitly sets the headers as null which indicates that there is no
+ * header. The default value is false
+ */
+ private Boolean headersDisabled;
+ /**
+ * Whether or not the header must be read in the first line of the test
+ * document The default value is false
+ */
+ private Boolean headerExtractionEnabled;
+ /**
+ * The maximum number of record to read.
+ */
+ private Integer numberOfRecordsToRead;
+ /**
+ * The String representation of an empty value
+ */
+ private String emptyValue;
+ /**
+ * The line separator of the files The default value is to use the JVM
+ * platform line separator
+ */
+ private String lineSeparator;
+ /**
+ * The normalized line separator of the files The default value is \n
+ */
+ private String normalizedLineSeparator;
+ /**
+ * The comment symbol. The default value is
+ */
+ private String comment;
+ /**
+ * Whether the unmarshalling should produce an iterator that reads the lines
+ * on the fly or if all the lines must be read at one. The default value is
+ * false
+ */
+ private Boolean lazyLoad;
+ /**
+ * Whether the unmarshalling should produce maps for the lines values
+ * instead of lists. It requires to have header (either defined or
+ * collected). The default value is false
+ */
+ private Boolean asMap;
+
+ public String getEscapeChar() {
+ return escapeChar;
+ }
+
+ public void setEscapeChar(String escapeChar) {
+ this.escapeChar = escapeChar;
+ }
+
+ public String getNullValue() {
+ return nullValue;
+ }
+
+ public void setNullValue(String nullValue) {
+ this.nullValue = nullValue;
+ }
+
+ public Boolean getSkipEmptyLines() {
+ return skipEmptyLines;
+ }
+
+ public void setSkipEmptyLines(Boolean skipEmptyLines) {
+ this.skipEmptyLines = skipEmptyLines;
+ }
+
+ public Boolean getIgnoreTrailingWhitespaces() {
+ return ignoreTrailingWhitespaces;
+ }
+
+ public void setIgnoreTrailingWhitespaces(Boolean ignoreTrailingWhitespaces) {
+ this.ignoreTrailingWhitespaces = ignoreTrailingWhitespaces;
+ }
+
+ public Boolean getIgnoreLeadingWhitespaces() {
+ return ignoreLeadingWhitespaces;
+ }
+
+ public void setIgnoreLeadingWhitespaces(Boolean ignoreLeadingWhitespaces) {
+ this.ignoreLeadingWhitespaces = ignoreLeadingWhitespaces;
+ }
+
+ public Boolean getHeadersDisabled() {
+ return headersDisabled;
+ }
+
+ public void setHeadersDisabled(Boolean headersDisabled) {
+ this.headersDisabled = headersDisabled;
+ }
+
+ public Boolean getHeaderExtractionEnabled() {
+ return headerExtractionEnabled;
+ }
+
+ public void setHeaderExtractionEnabled(Boolean headerExtractionEnabled) {
+ this.headerExtractionEnabled = headerExtractionEnabled;
+ }
+
+ public Integer getNumberOfRecordsToRead() {
+ return numberOfRecordsToRead;
+ }
+
+ public void setNumberOfRecordsToRead(Integer numberOfRecordsToRead) {
+ this.numberOfRecordsToRead = numberOfRecordsToRead;
+ }
+
+ public String getEmptyValue() {
+ return emptyValue;
+ }
+
+ public void setEmptyValue(String emptyValue) {
+ this.emptyValue = emptyValue;
+ }
+
+ public String getLineSeparator() {
+ return lineSeparator;
+ }
+
+ public void setLineSeparator(String lineSeparator) {
+ this.lineSeparator = lineSeparator;
+ }
+
+ public String getNormalizedLineSeparator() {
+ return normalizedLineSeparator;
+ }
+
+ public void setNormalizedLineSeparator(String normalizedLineSeparator) {
+ this.normalizedLineSeparator = normalizedLineSeparator;
+ }
+
+ public String getComment() {
+ return comment;
+ }
+
+ public void setComment(String comment) {
+ this.comment = comment;
+ }
+
+ public Boolean getLazyLoad() {
+ return lazyLoad;
+ }
+
+ public void setLazyLoad(Boolean lazyLoad) {
+ this.lazyLoad = lazyLoad;
+ }
+
+ public Boolean getAsMap() {
+ return asMap;
+ }
+
+ public void setAsMap(Boolean asMap) {
+ this.asMap = asMap;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/springboot/XmlJsonDataFormatAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/springboot/XmlJsonDataFormatAutoConfiguration.java b/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/springboot/XmlJsonDataFormatAutoConfiguration.java
new file mode 100644
index 0000000..25af5a6
--- /dev/null
+++ b/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/springboot/XmlJsonDataFormatAutoConfiguration.java
@@ -0,0 +1,55 @@
+/**
+ * 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.dataformat.xmljson.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.CamelContextAware;
+import org.apache.camel.dataformat.xmljson.XmlJsonDataFormat;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(XmlJsonDataFormatConfiguration.class)
+public class XmlJsonDataFormatAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(XmlJsonDataFormat.class)
+ public XmlJsonDataFormat configureXmlJsonDataFormat(
+ CamelContext camelContext,
+ XmlJsonDataFormatConfiguration configuration) throws Exception {
+ XmlJsonDataFormat dataformat = new XmlJsonDataFormat();
+ if (dataformat instanceof CamelContextAware) {
+ ((CamelContextAware) dataformat).setCamelContext(camelContext);
+ }
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null,
+ false);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), dataformat, parameters);
+ return dataformat;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/springboot/XmlJsonDataFormatConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/springboot/XmlJsonDataFormatConfiguration.java b/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/springboot/XmlJsonDataFormatConfiguration.java
new file mode 100644
index 0000000..868ed9e
--- /dev/null
+++ b/components/camel-xmljson/src/main/java/org/apache/camel/dataformat/xmljson/springboot/XmlJsonDataFormatConfiguration.java
@@ -0,0 +1,201 @@
+/**
+ * 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.dataformat.xmljson.springboot;
+
+import java.util.List;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * Camel XML JSON Data Format
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.dataformat.xmljson")
+public class XmlJsonDataFormatConfiguration {
+
+ /**
+ * Sets the encoding. Used for unmarshalling (JSON to XML conversion).
+ */
+ private String encoding;
+ /**
+ * Specifies the name of the XML elements representing each array element.
+ * Used for unmarshalling (JSON to XML conversion).
+ */
+ private String elementName;
+ /**
+ * Specifies the name of the top-level XML element. Used for unmarshalling
+ * (JSON to XML conversion). For example when converting 1 2 3 it will be
+ * output by default as 123. By setting this option or rootName you can
+ * alter the name of element 'a'.
+ */
+ private String arrayName;
+ /**
+ * Determines whether the resulting JSON will start off with a top-most
+ * element whose name matches the XML root element. Used for marshalling
+ * (XML to JSon conversion). If disabled XML string 12 turns into 'x: '1'
+ * 'y': '2' . Otherwise it turns into 'a': 'x: '1' 'y': '2' .
+ */
+ private Boolean forceTopLevelObject;
+ /**
+ * Flag to be tolerant to incomplete namespace prefixes. Used for
+ * unmarshalling (JSON to XML conversion). In most cases json-lib
+ * automatically changes this flag at runtime to match the processing.
+ */
+ private Boolean namespaceLenient;
+ /**
+ * Specifies the name of the top-level element. Used for unmarshalling (JSON
+ * to XML conversion). If not set json-lib will use arrayName or objectName
+ * (default value: 'o' at the current time it is not configurable in this
+ * data format). If set to 'root' the JSON string 'x': 'value1' 'y' :
+ * 'value2' would turn into value1value2 otherwise the 'root' element would
+ * be named 'o'.
+ */
+ private String rootName;
+ /**
+ * Determines whether white spaces between XML elements will be regarded as
+ * text values or disregarded. Used for marshalling (XML to JSon
+ * conversion).
+ */
+ private Boolean skipWhitespace;
+ /**
+ * Determines whether leading and trailing white spaces will be omitted from
+ * String values. Used for marshalling (XML to JSon conversion).
+ */
+ private Boolean trimSpaces;
+ /**
+ * Signals whether namespaces should be ignored. By default they will be
+ * added to the JSON output using xmlns elements. Used for marshalling (XML
+ * to JSon conversion).
+ */
+ private Boolean skipNamespaces;
+ /**
+ * Removes the namespace prefixes from XML qualified elements so that the
+ * resulting JSON string does not contain them. Used for marshalling (XML to
+ * JSon conversion).
+ */
+ private Boolean removeNamespacePrefixes;
+ /**
+ * With expandable properties JSON array elements are converted to XML as a
+ * sequence of repetitive XML elements with the local name equal to the JSON
+ * key for example: number: 123 normally converted to: 123 (where e can be
+ * modified by setting elementName) would instead translate to 123 if number
+ * is set as an expandable property Used for unmarshalling (JSON to XML
+ * conversion).
+ */
+ private List<java.lang.String> expandableProperties;
+ /**
+ * Adds type hints to the resulting XML to aid conversion back to JSON. Used
+ * for unmarshalling (JSON to XML conversion).
+ */
+ private String typeHints;
+
+ public String getEncoding() {
+ return encoding;
+ }
+
+ public void setEncoding(String encoding) {
+ this.encoding = encoding;
+ }
+
+ public String getElementName() {
+ return elementName;
+ }
+
+ public void setElementName(String elementName) {
+ this.elementName = elementName;
+ }
+
+ public String getArrayName() {
+ return arrayName;
+ }
+
+ public void setArrayName(String arrayName) {
+ this.arrayName = arrayName;
+ }
+
+ public Boolean getForceTopLevelObject() {
+ return forceTopLevelObject;
+ }
+
+ public void setForceTopLevelObject(Boolean forceTopLevelObject) {
+ this.forceTopLevelObject = forceTopLevelObject;
+ }
+
+ public Boolean getNamespaceLenient() {
+ return namespaceLenient;
+ }
+
+ public void setNamespaceLenient(Boolean namespaceLenient) {
+ this.namespaceLenient = namespaceLenient;
+ }
+
+ public String getRootName() {
+ return rootName;
+ }
+
+ public void setRootName(String rootName) {
+ this.rootName = rootName;
+ }
+
+ public Boolean getSkipWhitespace() {
+ return skipWhitespace;
+ }
+
+ public void setSkipWhitespace(Boolean skipWhitespace) {
+ this.skipWhitespace = skipWhitespace;
+ }
+
+ public Boolean getTrimSpaces() {
+ return trimSpaces;
+ }
+
+ public void setTrimSpaces(Boolean trimSpaces) {
+ this.trimSpaces = trimSpaces;
+ }
+
+ public Boolean getSkipNamespaces() {
+ return skipNamespaces;
+ }
+
+ public void setSkipNamespaces(Boolean skipNamespaces) {
+ this.skipNamespaces = skipNamespaces;
+ }
+
+ public Boolean getRemoveNamespacePrefixes() {
+ return removeNamespacePrefixes;
+ }
+
+ public void setRemoveNamespacePrefixes(Boolean removeNamespacePrefixes) {
+ this.removeNamespacePrefixes = removeNamespacePrefixes;
+ }
+
+ public List<String> getExpandableProperties() {
+ return expandableProperties;
+ }
+
+ public void setExpandableProperties(List<String> expandableProperties) {
+ this.expandableProperties = expandableProperties;
+ }
+
+ public String getTypeHints() {
+ return typeHints;
+ }
+
+ public void setTypeHints(String typeHints) {
+ this.typeHints = typeHints;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-xmlrpc/src/main/java/org/apache/camel/dataformat/xmlrpc/springboot/XmlRpcDataFormatAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-xmlrpc/src/main/java/org/apache/camel/dataformat/xmlrpc/springboot/XmlRpcDataFormatAutoConfiguration.java b/components/camel-xmlrpc/src/main/java/org/apache/camel/dataformat/xmlrpc/springboot/XmlRpcDataFormatAutoConfiguration.java
new file mode 100644
index 0000000..fd4462a
--- /dev/null
+++ b/components/camel-xmlrpc/src/main/java/org/apache/camel/dataformat/xmlrpc/springboot/XmlRpcDataFormatAutoConfiguration.java
@@ -0,0 +1,55 @@
+/**
+ * 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.dataformat.xmlrpc.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.CamelContextAware;
+import org.apache.camel.dataformat.xmlrpc.XmlRpcDataFormat;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(XmlRpcDataFormatConfiguration.class)
+public class XmlRpcDataFormatAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(XmlRpcDataFormat.class)
+ public XmlRpcDataFormat configureXmlRpcDataFormat(
+ CamelContext camelContext,
+ XmlRpcDataFormatConfiguration configuration) throws Exception {
+ XmlRpcDataFormat dataformat = new XmlRpcDataFormat();
+ if (dataformat instanceof CamelContextAware) {
+ ((CamelContextAware) dataformat).setCamelContext(camelContext);
+ }
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null,
+ false);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), dataformat, parameters);
+ return dataformat;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-xmlrpc/src/main/java/org/apache/camel/dataformat/xmlrpc/springboot/XmlRpcDataFormatConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-xmlrpc/src/main/java/org/apache/camel/dataformat/xmlrpc/springboot/XmlRpcDataFormatConfiguration.java b/components/camel-xmlrpc/src/main/java/org/apache/camel/dataformat/xmlrpc/springboot/XmlRpcDataFormatConfiguration.java
new file mode 100644
index 0000000..6a97071
--- /dev/null
+++ b/components/camel-xmlrpc/src/main/java/org/apache/camel/dataformat/xmlrpc/springboot/XmlRpcDataFormatConfiguration.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.dataformat.xmlrpc.springboot;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * Camel XML RPC support
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.dataformat.xmlrpc")
+public class XmlRpcDataFormatConfiguration {
+
+ /**
+ * Whether to unmarshal request or response Is by default false
+ */
+ private Boolean request;
+
+ public Boolean getRequest() {
+ return request;
+ }
+
+ public void setRequest(Boolean request) {
+ this.request = request;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/springboot/XMLSecurityDataFormatAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/springboot/XMLSecurityDataFormatAutoConfiguration.java b/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/springboot/XMLSecurityDataFormatAutoConfiguration.java
new file mode 100644
index 0000000..5f192a0
--- /dev/null
+++ b/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/springboot/XMLSecurityDataFormatAutoConfiguration.java
@@ -0,0 +1,55 @@
+/**
+ * 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.dataformat.xmlsecurity.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.CamelContextAware;
+import org.apache.camel.dataformat.xmlsecurity.XMLSecurityDataFormat;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(XMLSecurityDataFormatConfiguration.class)
+public class XMLSecurityDataFormatAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(XMLSecurityDataFormat.class)
+ public XMLSecurityDataFormat configureXMLSecurityDataFormat(
+ CamelContext camelContext,
+ XMLSecurityDataFormatConfiguration configuration) throws Exception {
+ XMLSecurityDataFormat dataformat = new XMLSecurityDataFormat();
+ if (dataformat instanceof CamelContextAware) {
+ ((CamelContextAware) dataformat).setCamelContext(camelContext);
+ }
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null,
+ false);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), dataformat, parameters);
+ return dataformat;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/springboot/XMLSecurityDataFormatConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/springboot/XMLSecurityDataFormatConfiguration.java b/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/springboot/XMLSecurityDataFormatConfiguration.java
new file mode 100644
index 0000000..6eca1fb
--- /dev/null
+++ b/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/springboot/XMLSecurityDataFormatConfiguration.java
@@ -0,0 +1,189 @@
+/**
+ * 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.dataformat.xmlsecurity.springboot;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * Camel Partial XML Encryption/Decryption and XML Signature support
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.dataformat.secureXML")
+public class XMLSecurityDataFormatConfiguration {
+
+ /**
+ * The cipher algorithm to be used for encryption/decryption of the XML
+ * message content. The available choices are: XMLCipher.TRIPLEDES
+ * XMLCipher.AES_128 XMLCipher.AES_128_GCM XMLCipher.AES_192
+ * XMLCipher.AES_192_GCM XMLCipher.AES_256 XMLCipher.AES_256_GCM
+ * XMLCipher.SEED_128 XMLCipher.CAMELLIA_128 XMLCipher.CAMELLIA_192
+ * XMLCipher.CAMELLIA_256 The default value is MLCipher.TRIPLEDES
+ */
+ private String xmlCipherAlgorithm;
+ /**
+ * A String used as passPhrase to encrypt/decrypt content. The passPhrase
+ * has to be provided. If no passPhrase is specified a default passPhrase is
+ * used. The passPhrase needs to be put together in conjunction with the
+ * appropriate encryption algorithm. For example using TRIPLEDES the
+ * passPhase can be a Only another 24 Byte key
+ */
+ private String passPhrase;
+ /**
+ * The XPath reference to the XML Element selected for
+ * encryption/decryption. If no tag is specified the entire payload is
+ * encrypted/decrypted.
+ */
+ private String secureTag;
+ /**
+ * A boolean value to specify whether the XML Element is to be encrypted or
+ * the contents of the XML Element false = Element Level true = Element
+ * Content Level
+ */
+ private Boolean secureTagContents;
+ /**
+ * The cipher algorithm to be used for encryption/decryption of the
+ * asymmetric key. The available choices are: XMLCipher.RSA_v1dot5
+ * XMLCipher.RSA_OAEP XMLCipher.RSA_OAEP_11 The default value is
+ * XMLCipher.RSA_OAEP
+ */
+ private String keyCipherAlgorithm;
+ /**
+ * The key alias to be used when retrieving the recipient's public or
+ * private key from a KeyStore when performing asymmetric key encryption or
+ * decryption.
+ */
+ private String recipientKeyAlias;
+ /**
+ * Refers to a KeyStore instance to lookup in the registry which is used for
+ * configuration options for creating and loading a KeyStore instance that
+ * represents the sender's trustStore or recipient's keyStore.
+ */
+ private String keyOrTrustStoreParametersId;
+ /**
+ * The password to be used for retrieving the private key from the KeyStore.
+ * This key is used for asymmetric decryption.
+ */
+ private String keyPassword;
+ /**
+ * The digest algorithm to use with the RSA OAEP algorithm. The available
+ * choices are: XMLCipher.SHA1 XMLCipher.SHA256 XMLCipher.SHA512 The default
+ * value is XMLCipher.SHA1
+ */
+ private String digestAlgorithm;
+ /**
+ * The MGF Algorithm to use with the RSA OAEP algorithm. The available
+ * choices are: EncryptionConstants.MGF1_SHA1
+ * EncryptionConstants.MGF1_SHA256 EncryptionConstants.MGF1_SHA512 The
+ * default value is EncryptionConstants.MGF1_SHA1
+ */
+ private String mgfAlgorithm;
+ /**
+ * Whether to add the public key used to encrypt the session key as a
+ * KeyValue in the EncryptedKey structure or not.
+ */
+ private Boolean addKeyValueForEncryptedKey;
+
+ public String getXmlCipherAlgorithm() {
+ return xmlCipherAlgorithm;
+ }
+
+ public void setXmlCipherAlgorithm(String xmlCipherAlgorithm) {
+ this.xmlCipherAlgorithm = xmlCipherAlgorithm;
+ }
+
+ public String getPassPhrase() {
+ return passPhrase;
+ }
+
+ public void setPassPhrase(String passPhrase) {
+ this.passPhrase = passPhrase;
+ }
+
+ public String getSecureTag() {
+ return secureTag;
+ }
+
+ public void setSecureTag(String secureTag) {
+ this.secureTag = secureTag;
+ }
+
+ public Boolean getSecureTagContents() {
+ return secureTagContents;
+ }
+
+ public void setSecureTagContents(Boolean secureTagContents) {
+ this.secureTagContents = secureTagContents;
+ }
+
+ public String getKeyCipherAlgorithm() {
+ return keyCipherAlgorithm;
+ }
+
+ public void setKeyCipherAlgorithm(String keyCipherAlgorithm) {
+ this.keyCipherAlgorithm = keyCipherAlgorithm;
+ }
+
+ public String getRecipientKeyAlias() {
+ return recipientKeyAlias;
+ }
+
+ public void setRecipientKeyAlias(String recipientKeyAlias) {
+ this.recipientKeyAlias = recipientKeyAlias;
+ }
+
+ public String getKeyOrTrustStoreParametersId() {
+ return keyOrTrustStoreParametersId;
+ }
+
+ public void setKeyOrTrustStoreParametersId(
+ String keyOrTrustStoreParametersId) {
+ this.keyOrTrustStoreParametersId = keyOrTrustStoreParametersId;
+ }
+
+ public String getKeyPassword() {
+ return keyPassword;
+ }
+
+ public void setKeyPassword(String keyPassword) {
+ this.keyPassword = keyPassword;
+ }
+
+ public String getDigestAlgorithm() {
+ return digestAlgorithm;
+ }
+
+ public void setDigestAlgorithm(String digestAlgorithm) {
+ this.digestAlgorithm = digestAlgorithm;
+ }
+
+ public String getMgfAlgorithm() {
+ return mgfAlgorithm;
+ }
+
+ public void setMgfAlgorithm(String mgfAlgorithm) {
+ this.mgfAlgorithm = mgfAlgorithm;
+ }
+
+ public Boolean getAddKeyValueForEncryptedKey() {
+ return addKeyValueForEncryptedKey;
+ }
+
+ public void setAddKeyValueForEncryptedKey(Boolean addKeyValueForEncryptedKey) {
+ this.addKeyValueForEncryptedKey = addKeyValueForEncryptedKey;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/JsonDataFormatAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/JsonDataFormatAutoConfiguration.java b/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/JsonDataFormatAutoConfiguration.java
new file mode 100644
index 0000000..9b3ac59
--- /dev/null
+++ b/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/JsonDataFormatAutoConfiguration.java
@@ -0,0 +1,54 @@
+/**
+ * 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.dataformat.xstream.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.CamelContextAware;
+import org.apache.camel.dataformat.xstream.JsonDataFormat;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(JsonDataFormatConfiguration.class)
+public class JsonDataFormatAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(JsonDataFormat.class)
+ public JsonDataFormat configureJsonDataFormat(CamelContext camelContext,
+ JsonDataFormatConfiguration configuration) throws Exception {
+ JsonDataFormat dataformat = new JsonDataFormat();
+ if (dataformat instanceof CamelContextAware) {
+ ((CamelContextAware) dataformat).setCamelContext(camelContext);
+ }
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null,
+ false);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), dataformat, parameters);
+ return dataformat;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/JsonDataFormatConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/JsonDataFormatConfiguration.java b/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/JsonDataFormatConfiguration.java
new file mode 100644
index 0000000..3107246
--- /dev/null
+++ b/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/JsonDataFormatConfiguration.java
@@ -0,0 +1,244 @@
+/**
+ * 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.dataformat.xstream.springboot;
+
+import org.apache.camel.model.dataformat.JsonLibrary;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * Camel XStream support
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.dataformat.json")
+public class JsonDataFormatConfiguration {
+
+ /**
+ * Lookup and use the existing ObjectMapper with the given id when using
+ * Jackson.
+ */
+ private String objectMapper;
+ /**
+ * To enable pretty printing output nicely formatted. Is by default false.
+ */
+ private Boolean prettyPrint;
+ /**
+ * Which json library to use such. Is by default xstream
+ */
+ private JsonLibrary library;
+ /**
+ * Class name of the java type to use when unarmshalling
+ */
+ private String unmarshalTypeName;
+ /**
+ * When marshalling a POJO to JSON you might want to exclude certain fields
+ * from the JSON output. With Jackson you can use JSON views to accomplish
+ * this. This option is to refer to the class which has JsonView annotations
+ */
+ private Class jsonView;
+ /**
+ * If you want to marshal a pojo to JSON and the pojo has some fields with
+ * null values. And you want to skip these null values you can set this
+ * option to NOT_NULL
+ */
+ private String include;
+ /**
+ * Used for JMS users to allow the JMSType header from the JMS spec to
+ * specify a FQN classname to use to unmarshal to.
+ */
+ private Boolean allowJmsType;
+ /**
+ * Refers to a custom collection type to lookup in the registry to use. This
+ * option should rarely be used but allows to use different collection types
+ * than java.util.Collection based as default.
+ */
+ private String collectionTypeName;
+ /**
+ * To unarmshal to a List of Map or a List of Pojo.
+ */
+ private Boolean useList;
+ /**
+ * Whether to enable the JAXB annotations module when using jackson. When
+ * enabled then JAXB annotations can be used by Jackson.
+ */
+ private Boolean enableJaxbAnnotationModule;
+ /**
+ * To use custom Jackson modules com.fasterxml.jackson.databind.Module
+ * specified as a String with FQN class names. Multiple classes can be
+ * separated by comma.
+ */
+ private String moduleClassNames;
+ /**
+ * To use custom Jackson modules referred from the Camel registry. Multiple
+ * modules can be separated by comma.
+ */
+ private String moduleRefs;
+ /**
+ * Set of features to enable on the Jackson
+ * com.fasterxml.jackson.databind.ObjectMapper. The features should be a
+ * name that matches a enum from
+ * com.fasterxml.jackson.databind.SerializationFeature
+ * com.fasterxml.jackson.databind.DeserializationFeature or
+ * com.fasterxml.jackson.databind.MapperFeature Multiple features can be
+ * separated by comma
+ */
+ private String enableFeatures;
+ /**
+ * Set of features to disable on the Jackson
+ * com.fasterxml.jackson.databind.ObjectMapper. The features should be a
+ * name that matches a enum from
+ * com.fasterxml.jackson.databind.SerializationFeature
+ * com.fasterxml.jackson.databind.DeserializationFeature or
+ * com.fasterxml.jackson.databind.MapperFeature Multiple features can be
+ * separated by comma
+ */
+ private String disableFeatures;
+ /**
+ * Adds permissions that controls which Java packages and classes XStream is
+ * allowed to use during unmarshal from xml/json to Java beans. A permission
+ * must be configured either here or globally using a JVM system property.
+ * The permission can be specified in a syntax where a plus sign is allow
+ * and minus sign is deny. Wildcards is supported by using . as prefix. For
+ * example to allow com.foo and all subpackages then specfy com.foo..
+ * Multiple permissions can be configured separated by comma such as
+ * com.foo.-com.foo.bar.MySecretBean. The following default permission is
+ * always included: -java.lang.java.util. unless its overridden by
+ * specifying a JVM system property with they key
+ * org.apache.camel.xstream.permissions.
+ */
+ private String permissions;
+
+ public String getObjectMapper() {
+ return objectMapper;
+ }
+
+ public void setObjectMapper(String objectMapper) {
+ this.objectMapper = objectMapper;
+ }
+
+ public Boolean getPrettyPrint() {
+ return prettyPrint;
+ }
+
+ public void setPrettyPrint(Boolean prettyPrint) {
+ this.prettyPrint = prettyPrint;
+ }
+
+ public JsonLibrary getLibrary() {
+ return library;
+ }
+
+ public void setLibrary(JsonLibrary library) {
+ this.library = library;
+ }
+
+ public String getUnmarshalTypeName() {
+ return unmarshalTypeName;
+ }
+
+ public void setUnmarshalTypeName(String unmarshalTypeName) {
+ this.unmarshalTypeName = unmarshalTypeName;
+ }
+
+ public Class getJsonView() {
+ return jsonView;
+ }
+
+ public void setJsonView(Class jsonView) {
+ this.jsonView = jsonView;
+ }
+
+ public String getInclude() {
+ return include;
+ }
+
+ public void setInclude(String include) {
+ this.include = include;
+ }
+
+ public Boolean getAllowJmsType() {
+ return allowJmsType;
+ }
+
+ public void setAllowJmsType(Boolean allowJmsType) {
+ this.allowJmsType = allowJmsType;
+ }
+
+ public String getCollectionTypeName() {
+ return collectionTypeName;
+ }
+
+ public void setCollectionTypeName(String collectionTypeName) {
+ this.collectionTypeName = collectionTypeName;
+ }
+
+ public Boolean getUseList() {
+ return useList;
+ }
+
+ public void setUseList(Boolean useList) {
+ this.useList = useList;
+ }
+
+ public Boolean getEnableJaxbAnnotationModule() {
+ return enableJaxbAnnotationModule;
+ }
+
+ public void setEnableJaxbAnnotationModule(Boolean enableJaxbAnnotationModule) {
+ this.enableJaxbAnnotationModule = enableJaxbAnnotationModule;
+ }
+
+ public String getModuleClassNames() {
+ return moduleClassNames;
+ }
+
+ public void setModuleClassNames(String moduleClassNames) {
+ this.moduleClassNames = moduleClassNames;
+ }
+
+ public String getModuleRefs() {
+ return moduleRefs;
+ }
+
+ public void setModuleRefs(String moduleRefs) {
+ this.moduleRefs = moduleRefs;
+ }
+
+ public String getEnableFeatures() {
+ return enableFeatures;
+ }
+
+ public void setEnableFeatures(String enableFeatures) {
+ this.enableFeatures = enableFeatures;
+ }
+
+ public String getDisableFeatures() {
+ return disableFeatures;
+ }
+
+ public void setDisableFeatures(String disableFeatures) {
+ this.disableFeatures = disableFeatures;
+ }
+
+ public String getPermissions() {
+ return permissions;
+ }
+
+ public void setPermissions(String permissions) {
+ this.permissions = permissions;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/XStreamDataFormatAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/XStreamDataFormatAutoConfiguration.java b/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/XStreamDataFormatAutoConfiguration.java
new file mode 100644
index 0000000..065a531
--- /dev/null
+++ b/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/XStreamDataFormatAutoConfiguration.java
@@ -0,0 +1,55 @@
+/**
+ * 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.dataformat.xstream.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.CamelContextAware;
+import org.apache.camel.dataformat.xstream.XStreamDataFormat;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(XStreamDataFormatConfiguration.class)
+public class XStreamDataFormatAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(XStreamDataFormat.class)
+ public XStreamDataFormat configureXStreamDataFormat(
+ CamelContext camelContext,
+ XStreamDataFormatConfiguration configuration) throws Exception {
+ XStreamDataFormat dataformat = new XStreamDataFormat();
+ if (dataformat instanceof CamelContextAware) {
+ ((CamelContextAware) dataformat).setCamelContext(camelContext);
+ }
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null,
+ false);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), dataformat, parameters);
+ return dataformat;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/XStreamDataFormatConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/XStreamDataFormatConfiguration.java b/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/XStreamDataFormatConfiguration.java
new file mode 100644
index 0000000..a8236e0
--- /dev/null
+++ b/components/camel-xstream/src/main/java/org/apache/camel/dataformat/xstream/springboot/XStreamDataFormatConfiguration.java
@@ -0,0 +1,159 @@
+/**
+ * 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.dataformat.xstream.springboot;
+
+import java.util.List;
+import java.util.Map;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * Camel XStream support
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.dataformat.xstream")
+public class XStreamDataFormatConfiguration {
+
+ /**
+ * Adds permissions that controls which Java packages and classes XStream is
+ * allowed to use during unmarshal from xml/json to Java beans. A permission
+ * must be configured either here or globally using a JVM system property.
+ * The permission can be specified in a syntax where a plus sign is allow
+ * and minus sign is deny. Wildcards is supported by using . as prefix. For
+ * example to allow com.foo and all subpackages then specfy com.foo..
+ * Multiple permissions can be configured separated by comma such as
+ * com.foo.-com.foo.bar.MySecretBean. The following default permission is
+ * always included: -java.lang.java.util. unless its overridden by
+ * specifying a JVM system property with they key
+ * org.apache.camel.xstream.permissions.
+ */
+ private String permissions;
+ /**
+ * Sets the encoding to use
+ */
+ private String encoding;
+ /**
+ * To use a custom XStream driver. The instance must be of type
+ * com.thoughtworks.xstream.io.HierarchicalStreamDriver
+ */
+ private String driver;
+ /**
+ * To refer to a custom XStream driver to lookup in the registry. The
+ * instance must be of type
+ * com.thoughtworks.xstream.io.HierarchicalStreamDriver
+ */
+ private String driverRef;
+ /**
+ * Mode for dealing with duplicate references The possible values are:
+ * NO_REFERENCES ID_REFERENCES XPATH_RELATIVE_REFERENCES
+ * XPATH_ABSOLUTE_REFERENCES SINGLE_NODE_XPATH_RELATIVE_REFERENCES
+ * SINGLE_NODE_XPATH_ABSOLUTE_REFERENCES
+ */
+ private String mode;
+ /**
+ * List of class names for using custom XStream converters. The classes must
+ * be of type com.thoughtworks.xstream.converters.Converter
+ */
+ private List<java.lang.String> converters;
+ /**
+ * Alias a Class to a shorter name to be used in XML elements.
+ */
+ private Map<java.lang.String, java.lang.String> aliases;
+ /**
+ * Prevents a field from being serialized. To omit a field you must always
+ * provide the declaring type and not necessarily the type that is
+ * converted.
+ */
+ private Map<java.lang.String, java.lang.String[]> omitFields;
+ /**
+ * Adds a default implicit collection which is used for any unmapped XML
+ * tag.
+ */
+ private Map<java.lang.String, java.lang.String[]> implicitCollections;
+
+ public String getPermissions() {
+ return permissions;
+ }
+
+ public void setPermissions(String permissions) {
+ this.permissions = permissions;
+ }
+
+ public String getEncoding() {
+ return encoding;
+ }
+
+ public void setEncoding(String encoding) {
+ this.encoding = encoding;
+ }
+
+ public String getDriver() {
+ return driver;
+ }
+
+ public void setDriver(String driver) {
+ this.driver = driver;
+ }
+
+ public String getDriverRef() {
+ return driverRef;
+ }
+
+ public void setDriverRef(String driverRef) {
+ this.driverRef = driverRef;
+ }
+
+ public String getMode() {
+ return mode;
+ }
+
+ public void setMode(String mode) {
+ this.mode = mode;
+ }
+
+ public List<String> getConverters() {
+ return converters;
+ }
+
+ public void setConverters(List<String> converters) {
+ this.converters = converters;
+ }
+
+ public Map<String, String> getAliases() {
+ return aliases;
+ }
+
+ public void setAliases(Map<String, String> aliases) {
+ this.aliases = aliases;
+ }
+
+ public Map<String, String[]> getOmitFields() {
+ return omitFields;
+ }
+
+ public void setOmitFields(Map<String, String[]> omitFields) {
+ this.omitFields = omitFields;
+ }
+
+ public Map<String, String[]> getImplicitCollections() {
+ return implicitCollections;
+ }
+
+ public void setImplicitCollections(Map<String, String[]> implicitCollections) {
+ this.implicitCollections = implicitCollections;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/springboot/ZipFileDataFormatAutoConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/springboot/ZipFileDataFormatAutoConfiguration.java b/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/springboot/ZipFileDataFormatAutoConfiguration.java
new file mode 100644
index 0000000..5ebea8f
--- /dev/null
+++ b/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/springboot/ZipFileDataFormatAutoConfiguration.java
@@ -0,0 +1,55 @@
+/**
+ * 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.dataformat.zipfile.springboot;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.camel.CamelContext;
+import org.apache.camel.CamelContextAware;
+import org.apache.camel.dataformat.zipfile.ZipFileDataFormat;
+import org.apache.camel.util.IntrospectionSupport;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+import org.springframework.boot.context.properties.EnableConfigurationProperties;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@Configuration
+@EnableConfigurationProperties(ZipFileDataFormatConfiguration.class)
+public class ZipFileDataFormatAutoConfiguration {
+
+ @Bean
+ @ConditionalOnClass(CamelContext.class)
+ @ConditionalOnMissingBean(ZipFileDataFormat.class)
+ public ZipFileDataFormat configureZipFileDataFormat(
+ CamelContext camelContext,
+ ZipFileDataFormatConfiguration configuration) throws Exception {
+ ZipFileDataFormat dataformat = new ZipFileDataFormat();
+ if (dataformat instanceof CamelContextAware) {
+ ((CamelContextAware) dataformat).setCamelContext(camelContext);
+ }
+ Map<String, Object> parameters = new HashMap<>();
+ IntrospectionSupport.getProperties(configuration, parameters, null,
+ false);
+ IntrospectionSupport.setProperties(camelContext,
+ camelContext.getTypeConverter(), dataformat, parameters);
+ return dataformat;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/d76f047d/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/springboot/ZipFileDataFormatConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/springboot/ZipFileDataFormatConfiguration.java b/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/springboot/ZipFileDataFormatConfiguration.java
new file mode 100644
index 0000000..b12703f
--- /dev/null
+++ b/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/springboot/ZipFileDataFormatConfiguration.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.dataformat.zipfile.springboot;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+/**
+ * Camel Zip file support
+ *
+ * Generated by camel-package-maven-plugin - do not edit this file!
+ */
+@ConfigurationProperties(prefix = "camel.dataformat.zipFile")
+public class ZipFileDataFormatConfiguration {
+
+ /**
+ * If the zip file has more then one entry the setting this option to true
+ * allows to work with the splitter EIP to split the data using an iterator
+ * in a streaming mode.
+ */
+ private Boolean usingIterator;
+
+ public Boolean getUsingIterator() {
+ return usingIterator;
+ }
+
+ public void setUsingIterator(Boolean usingIterator) {
+ this.usingIterator = usingIterator;
+ }
+}
\ No newline at end of file