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 2018/07/17 13:45:05 UTC

[camel] 07/13: CAMEL-12644: Generate spring boot auto configuration in the docs.

This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch camel-12644
in repository https://gitbox.apache.org/repos/asf/camel.git

commit b0fcbbd30ff5265a13d725689b4e5ae41046ad42
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Jul 16 22:05:10 2018 +0200

    CAMEL-12644: Generate spring boot auto configuration in the docs.
---
 .../src/main/docs/as2-component.adoc               | 87 ++++++++++++++++++--
 .../src/main/docs/box-component.adoc               | 94 ++++++++++++++++++++++
 .../src/main/docs/cql-component.adoc               | 16 ++++
 .../src/main/docs/json-fastjson-dataformat.adoc    | 73 +++++++++++++++++
 .../src/main/docs/fhir-component.adoc              | 63 ++++++++++++++-
 .../src/main/docs/fhirJson-dataformat.adoc         | 63 ++++++++++++++-
 .../src/main/docs/fhirXml-dataformat.adoc          | 62 +++++++++++++-
 .../src/main/docs/json-gson-dataformat.adoc        | 74 +++++++++++++++++
 .../camel-hystrix/src/main/docs/hystrix.adoc       | 17 +++-
 .../src/main/docs/json-jackson-dataformat.adoc     | 73 +++++++++++++++++
 .../src/main/docs/jetty-component.adoc             | 92 +++++++++++++++++++++
 .../src/main/docs/json-johnzon-dataformat.adoc     | 73 +++++++++++++++++
 .../camel-josql/src/main/docs/sql-language.adoc    | 17 +++-
 .../camel-jsch/src/main/docs/scp-component.adoc    | 19 +++++
 .../camel-juel/src/main/docs/el-language.adoc      | 17 +++-
 platforms/spring-boot/components-starter/pom.xml   |  2 +-
 ...pdateSpringBootAutoConfigurationReadmeMojo.java | 77 ++++++++++++++++--
 17 files changed, 898 insertions(+), 21 deletions(-)

diff --git a/components/camel-as2/camel-as2-component/src/main/docs/as2-component.adoc b/components/camel-as2/camel-as2-component/src/main/docs/as2-component.adoc
index 8b89717..9019b26 100644
--- a/components/camel-as2/camel-as2-component/src/main/docs/as2-component.adoc
+++ b/components/camel-as2/camel-as2-component/src/main/docs/as2-component.adoc
@@ -21,6 +21,19 @@ for this component:
 </dependency>
 ----
 
+=== URI format
+
+[source]
+----
+as2://apiName/methodName
+----
+
+apiName can be one of:
+
+* client
+* server
+
+
 === AS2 Options
 
 
@@ -70,18 +83,76 @@ with the following path and query parameters:
 | *synchronous* (advanced) | Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported). | false | boolean
 |===
 // endpoint options: END
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
 
-=== URI format
 
-[source]
-----
-as2://apiName/methodName
-----
+The component supports 24 options, which are listed below.
 
-apiName can be one of:
 
-* client
-* server
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.as2.configuration.api-name* | What kind of operation to perform
+ 
+ @param apiName
+            - the API Name to set |  | AS2ApiName
+| *camel.component.as2.configuration.as2-from* |  |  | String
+| *camel.component.as2.configuration.as2-message-structure* |  |  | AS2MessageStructure
+| *camel.component.as2.configuration.as2-to* |  |  | String
+| *camel.component.as2.configuration.as2-version* | The version of the AS2 protocol.
+ 
+ @param as2Version
+            - the version of the AS2 protocol. |  | String
+| *camel.component.as2.configuration.client-fqdn* | The Client Fully Qualified Domain Name (FQDN).
+ <p>
+ Used in message ids sent by endpoint.
+ 
+ @param clientFqdn
+            - the FQDN of client. |  | String
+| *camel.component.as2.configuration.disposition-notification-to* |  |  | String
+| *camel.component.as2.configuration.edi-message-transfer-encoding* |  |  | String
+| *camel.component.as2.configuration.from* |  |  | String
+| *camel.component.as2.configuration.method-name* | What sub operation to use for the selected operation
+ 
+ @param methodName
+            - the methodName to set |  | String
+| *camel.component.as2.configuration.request-uri* |  |  | String
+| *camel.component.as2.configuration.server* | The value included in the <code>Server</code> message header
+ identifying the AS2 Server.
+ 
+ @param server
+            - AS2 server identification string. |  | String
+| *camel.component.as2.configuration.server-fqdn* | The Server Fully Qualified Domain Name (FQDN).
+ <p>
+ Used in message ids sent by endpoint.
+ 
+ @param clientFqdn
+            - the FQDN of server. |  | String
+| *camel.component.as2.configuration.server-port-number* |  |  | Integer
+| *camel.component.as2.configuration.signed-receipt-mic-algorithms* |  |  | String[]
+| *camel.component.as2.configuration.signing-algorithm-name* |  |  | String
+| *camel.component.as2.configuration.signing-certificate-chain* |  |  | Certificate[]
+| *camel.component.as2.configuration.signing-private-key* |  |  | PrivateKey
+| *camel.component.as2.configuration.subject* |  |  | String
+| *camel.component.as2.configuration.target-hostname* | The host name (IP or DNS name) of target host.
+ 
+ @param targetHostname
+            - the target host name (IP or DNS name). |  | String
+| *camel.component.as2.configuration.target-port-number* |  |  | Integer
+| *camel.component.as2.configuration.user-agent* | The value included in the <code>User-Agent</code> message header
+ identifying the AS2 user agent.
+ 
+ @param userAgent
+            - AS2 user agent identification string. |  | String
+| *camel.component.as2.enabled* |  |  | Boolean
+| *camel.component.as2.resolve-property-placeholders* | Whether the component should resolve property placeholders on itself when
+ starting. Only properties which are of String type can use property
+ placeholders. | true | Boolean
+|===
+// spring-boot-auto-configure options: END
+
 
 === Client Endpoints:
 
diff --git a/components/camel-box/camel-box-component/src/main/docs/box-component.adoc b/components/camel-box/camel-box-component/src/main/docs/box-component.adoc
index 7f66211..34d8547 100644
--- a/components/camel-box/camel-box-component/src/main/docs/box-component.adoc
+++ b/components/camel-box/camel-box-component/src/main/docs/box-component.adoc
@@ -108,6 +108,100 @@ with the following path and query parameters:
 | *userPassword* (security) | Box user password, MUST be provided if authSecureStorage is not set, or returns null on first call |  | String
 |===
 // endpoint options: END
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
+
+
+The component supports 30 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.box.configuration.access-token-cache* | Custom Access Token Cache for storing and retrieving access tokens.
+ 
+ @param accessTokenCache
+            - the Custom Access Token Cache |  | IAccessTokenCache
+| *camel.component.box.configuration.api-name* | What kind of operation to perform
+ 
+ @param apiNamethe
+            API Name to set |  | BoxApiName
+| *camel.component.box.configuration.authentication-type* | The type of authentication for connection.
+ <p>
+ Types of Authentication:
+ <ul>
+ <li>STANDARD_AUTHENTICATION - OAuth 2.0 (3-legged)</li>
+ <li>SERVER_AUTHENTICATION - OAuth 2.0 with JSON Web Tokens</li>
+ </ul>
+ 
+ @param authenticationTypethe
+            authenticationType to set | APP_USER_AUTHENTICATION | String
+| *camel.component.box.configuration.client-id* | Box application client ID
+ 
+ @param clientIdthe
+            clientId to set |  | String
+| *camel.component.box.configuration.client-secret* | Box application client secret
+ 
+ @param clientSecretthe
+            clientSecret to set |  | String
+| *camel.component.box.configuration.enterprise-id* | The enterprise ID to use for an App Enterprise.
+ 
+ @param enterpriseIdthe
+            enterpriseId to set |  | String
+| *camel.component.box.configuration.http-params* | Custom HTTP params for settings like proxy host
+ 
+ @param httpParamsthe
+            httpParams to set |  | Map
+| *camel.component.box.configuration.method-name* | What sub operation to use for the selected operation
+ 
+ @param methodNamethe
+            methodName to set |  | String
+| *camel.component.box.configuration.private-key-file* | The private key for generating the JWT signature.
+ 
+ @param privateKeythe
+            privateKey to set |  | String
+| *camel.component.box.configuration.private-key-password* | The password for the private key.
+ 
+ @param privateKeyPasswordthe
+            privateKeyPassword to set |  | String
+| *camel.component.box.configuration.public-key-id* | The ID for public key for validating the JWT signature.
+ 
+ @param publicKeyIdthe
+            publicKeyId to set |  | String
+| *camel.component.box.configuration.ssl-context-parameters.camel-context* |  |  | CamelContext
+| *camel.component.box.configuration.ssl-context-parameters.cert-alias* |  |  | String
+| *camel.component.box.configuration.ssl-context-parameters.cipher-suites* |  |  | CipherSuitesParameters
+| *camel.component.box.configuration.ssl-context-parameters.cipher-suites-filter* |  |  | FilterParameters
+| *camel.component.box.configuration.ssl-context-parameters.client-parameters* |  |  | SSLContextClient Parameters
+| *camel.component.box.configuration.ssl-context-parameters.key-managers* |  |  | KeyManagersParameters
+| *camel.component.box.configuration.ssl-context-parameters.provider* |  |  | String
+| *camel.component.box.configuration.ssl-context-parameters.secure-random* |  |  | SecureRandomParameters
+| *camel.component.box.configuration.ssl-context-parameters.secure-socket-protocol* |  |  | String
+| *camel.component.box.configuration.ssl-context-parameters.secure-socket-protocols* |  |  | SecureSocketProtocols Parameters
+| *camel.component.box.configuration.ssl-context-parameters.secure-socket-protocols-filter* |  |  | FilterParameters
+| *camel.component.box.configuration.ssl-context-parameters.server-parameters* |  |  | SSLContextServer Parameters
+| *camel.component.box.configuration.ssl-context-parameters.session-timeout* |  |  | String
+| *camel.component.box.configuration.ssl-context-parameters.trust-managers* |  |  | TrustManagersParameters
+| *camel.component.box.configuration.user-id* | The user ID to use for an App User.
+ 
+ @param userIdthe
+            userId to set |  | String
+| *camel.component.box.configuration.user-name* | Box user name, MUST be provided
+ 
+ @param userNamethe
+            userName to set |  | String
+| *camel.component.box.configuration.user-password* | Box user password, MUST be provided if authSecureStorage is not set,
+ or returns null on first call
+ 
+ @param userPasswordthe
+            userPassword to set |  | String
+| *camel.component.box.enabled* | Enable box component | true | Boolean
+| *camel.component.box.resolve-property-placeholders* | Whether the component should resolve property placeholders on itself when
+ starting. Only properties which are of String type can use property
+ placeholders. | true | Boolean
+|===
+// spring-boot-auto-configure options: END
 
 === URI format
 
diff --git a/components/camel-cassandraql/src/main/docs/cql-component.adoc b/components/camel-cassandraql/src/main/docs/cql-component.adoc
index 687d9e4..4127fd9 100644
--- a/components/camel-cassandraql/src/main/docs/cql-component.adoc
+++ b/components/camel-cassandraql/src/main/docs/cql-component.adoc
@@ -119,8 +119,24 @@ with the following path and query parameters:
 | *useFixedDelay* (scheduler) | Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details. | true | boolean
 |===
 // endpoint options: END
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
 
 
+The component supports 2 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.cql.enabled* | Enable cql component | true | Boolean
+| *camel.component.cql.resolve-property-placeholders* | Whether the component should resolve property placeholders on itself when
+ starting. Only properties which are of String type can use property
+ placeholders. | true | Boolean
+|===
+// spring-boot-auto-configure options: END
+
 === Messages
 
 ==== Incoming Message
diff --git a/components/camel-fastjson/src/main/docs/json-fastjson-dataformat.adoc b/components/camel-fastjson/src/main/docs/json-fastjson-dataformat.adoc
index 97ecafb..2d20083 100644
--- a/components/camel-fastjson/src/main/docs/json-fastjson-dataformat.adoc
+++ b/components/camel-fastjson/src/main/docs/json-fastjson-dataformat.adoc
@@ -45,8 +45,81 @@ The JSon Fastjson dataformat supports 19 options, which are listed below.
 | contentTypeHeader | false | Boolean | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc.
 |===
 // dataformat options: END
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
 
 
+The component supports 20 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.json-fastjson.allow-jms-type* | Used for JMS users to allow the JMSType header from the JMS spec to
+ specify a FQN classname to use to unmarshal to. | false | Boolean
+| *camel.dataformat.json-fastjson.allow-unmarshall-type* | If enabled then Jackson is allowed to attempt to use the
+ CamelJacksonUnmarshalType header during the unmarshalling. This should
+ only be enabled when desired to be used. | false | Boolean
+| *camel.dataformat.json-fastjson.collection-type-name* | 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. |  | String
+| *camel.dataformat.json-fastjson.content-type-header* | Whether the data format should set the Content-Type header with the type
+ from the data format if the data format is capable of doing so. For
+ example application/xml for data formats marshalling to XML, or
+ application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.json-fastjson.disable-features* | 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 |  | String
+| *camel.dataformat.json-fastjson.enable-features* | 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 |  | String
+| *camel.dataformat.json-fastjson.enable-jaxb-annotation-module* | Whether to enable the JAXB annotations module when using jackson. When
+ enabled then JAXB annotations can be used by Jackson. | false | Boolean
+| *camel.dataformat.json-fastjson.enabled* |  |  | Boolean
+| *camel.dataformat.json-fastjson.include* | 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 |  | String
+| *camel.dataformat.json-fastjson.json-view* | 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 |  | Class
+| *camel.dataformat.json-fastjson.library* | Which json library to use. |  | JsonLibrary
+| *camel.dataformat.json-fastjson.module-class-names* | 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. |  | String
+| *camel.dataformat.json-fastjson.module-refs* | To use custom Jackson modules referred from the Camel registry. Multiple
+ modules can be separated by comma. |  | String
+| *camel.dataformat.json-fastjson.object-mapper* | Lookup and use the existing ObjectMapper with the given id when using
+ Jackson. |  | String
+| *camel.dataformat.json-fastjson.permissions* | 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. |  | String
+| *camel.dataformat.json-fastjson.pretty-print* | To enable pretty printing output nicely formatted. Is by default false. | false | Boolean
+| *camel.dataformat.json-fastjson.timezone* | If set then Jackson will use the Timezone when marshalling/unmarshalling.
+ This option will have no effect on the others Json DataFormat, like gson,
+ fastjson and xstream. |  | String
+| *camel.dataformat.json-fastjson.unmarshal-type-name* | Class name of the java type to use when unarmshalling |  | String
+| *camel.dataformat.json-fastjson.use-default-object-mapper* | Whether to lookup and use default Jackson ObjectMapper from the registry. | true | Boolean
+| *camel.dataformat.json-fastjson.use-list* | To unarmshal to a List of Map or a List of Pojo. | false | Boolean
+|===
+// spring-boot-auto-configure options: END
+
 
 ### Dependencies
 
diff --git a/components/camel-fhir/camel-fhir-component/src/main/docs/fhir-component.adoc b/components/camel-fhir/camel-fhir-component/src/main/docs/fhir-component.adoc
index ea755c5..1c64a07 100644
--- a/components/camel-fhir/camel-fhir-component/src/main/docs/fhir-component.adoc
+++ b/components/camel-fhir/camel-fhir-component/src/main/docs/fhir-component.adoc
@@ -118,4 +118,65 @@ with the following path and query parameters:
 | *password* (security) | Username to use for basic authentication |  | String
 | *username* (security) | Username to use for basic authentication |  | String
 |===
-// endpoint options: END
\ No newline at end of file
+// endpoint options: END
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
+
+
+The component supports 38 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.fhir.configuration.access-token* |  |  | String
+| *camel.component.fhir.configuration.api-name* | What kind of operation to perform |  | FhirApiName
+| *camel.component.fhir.configuration.client* |  |  | IGenericClient
+| *camel.component.fhir.configuration.client-factory* |  |  | IRestfulClientFactory
+| *camel.component.fhir.configuration.compress* |  | false | Boolean
+| *camel.component.fhir.configuration.connection-timeout* |  | 10000 | Integer
+| *camel.component.fhir.configuration.defer-model-scanning* |  | false | Boolean
+| *camel.component.fhir.configuration.fhir-context.add-profile-tag-when-encoding* |  |  | AddProfileTagEnum
+| *camel.component.fhir.configuration.fhir-context.element-definitions* |  |  | BaseRuntimeElementDefinition<?>>
+| *camel.component.fhir.configuration.fhir-context.localizer* |  |  | HapiLocalizer
+| *camel.component.fhir.configuration.fhir-context.narrative-generator* |  |  | INarrativeGenerator
+| *camel.component.fhir.configuration.fhir-context.parser-options* |  |  | ParserOptions
+| *camel.component.fhir.configuration.fhir-context.performance-options* |  |  | Set
+| *camel.component.fhir.configuration.fhir-context.resource-definitions-with-explicit-id* |  |  | RuntimeResourceDefinition>
+| *camel.component.fhir.configuration.fhir-context.resource-names* |  |  | Set
+| *camel.component.fhir.configuration.fhir-context.restful-client-factory* |  |  | IRestfulClientFactory
+| *camel.component.fhir.configuration.fhir-context.validation-support* |  |  | IContextValidation Support<?,?,?,?,?,?>
+| *camel.component.fhir.configuration.force-conformance-check* |  | false | Boolean
+| *camel.component.fhir.configuration.log* |  | false | Boolean
+| *camel.component.fhir.configuration.method-name* | What sub operation to use for the selected operation |  | String
+| *camel.component.fhir.configuration.password* |  |  | String
+| *camel.component.fhir.configuration.pretty-print* |  | false | Boolean
+| *camel.component.fhir.configuration.proxy-host* |  |  | String
+| *camel.component.fhir.configuration.proxy-password* |  |  | String
+| *camel.component.fhir.configuration.proxy-port* |  |  | Integer
+| *camel.component.fhir.configuration.proxy-user* |  |  | String
+| *camel.component.fhir.configuration.server-url* |  |  | String
+| *camel.component.fhir.configuration.session-cookie* |  |  | String
+| *camel.component.fhir.configuration.socket-timeout* |  | 10000 | Integer
+| *camel.component.fhir.configuration.username* |  |  | String
+| *camel.component.fhir.enabled* |  |  | Boolean
+| *camel.component.fhir.resolve-property-placeholders* | Whether the component should resolve property placeholders on itself when
+ starting. Only properties which are of String type can use property
+ placeholders. | true | Boolean
+| *camel.dataformat.fhirjson.content-type-header* | Whether the data format should set the Content-Type header with the type
+ from the data format if the data format is capable of doing so. For
+ example application/xml for data formats marshalling to XML, or
+ application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.fhirjson.enabled* |  |  | Boolean
+| *camel.dataformat.fhirjson.fhir-version* | The version of FHIR to use. Possible values are:
+ DSTU2,DSTU2_HL7ORG,DSTU2_1,DSTU3,R4 | DSTU3 | String
+| *camel.dataformat.fhirxml.content-type-header* | Whether the data format should set the Content-Type header with the type
+ from the data format if the data format is capable of doing so. For
+ example application/xml for data formats marshalling to XML, or
+ application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.fhirxml.enabled* |  |  | Boolean
+| *camel.dataformat.fhirxml.fhir-version* | The version of FHIR to use. Possible values are:
+ DSTU2,DSTU2_HL7ORG,DSTU2_1,DSTU3,R4 | DSTU3 | String
+|===
+// spring-boot-auto-configure options: END
diff --git a/components/camel-fhir/camel-fhir-component/src/main/docs/fhirJson-dataformat.adoc b/components/camel-fhir/camel-fhir-component/src/main/docs/fhirJson-dataformat.adoc
index 88b3e46..6472f1a 100644
--- a/components/camel-fhir/camel-fhir-component/src/main/docs/fhirJson-dataformat.adoc
+++ b/components/camel-fhir/camel-fhir-component/src/main/docs/fhirJson-dataformat.adoc
@@ -1,8 +1,6 @@
 [[fhirJson-dataformat]]
 == FHIR JSon DataFormat
 *Available as of Camel version 2.21*
-*Available as of Camel version 2.21*
-*Available as of Camel version 2.21*
 
 
 
@@ -24,3 +22,64 @@ The FHIR JSon dataformat supports 2 options, which are listed below.
 | contentTypeHeader | false | Boolean | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc.
 |===
 // dataformat options: END
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
+
+
+The component supports 38 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.fhir.configuration.access-token* |  |  | String
+| *camel.component.fhir.configuration.api-name* | What kind of operation to perform |  | FhirApiName
+| *camel.component.fhir.configuration.client* |  |  | IGenericClient
+| *camel.component.fhir.configuration.client-factory* |  |  | IRestfulClientFactory
+| *camel.component.fhir.configuration.compress* |  | false | Boolean
+| *camel.component.fhir.configuration.connection-timeout* |  | 10000 | Integer
+| *camel.component.fhir.configuration.defer-model-scanning* |  | false | Boolean
+| *camel.component.fhir.configuration.fhir-context.add-profile-tag-when-encoding* |  |  | AddProfileTagEnum
+| *camel.component.fhir.configuration.fhir-context.element-definitions* |  |  | BaseRuntimeElementDefinition<?>>
+| *camel.component.fhir.configuration.fhir-context.localizer* |  |  | HapiLocalizer
+| *camel.component.fhir.configuration.fhir-context.narrative-generator* |  |  | INarrativeGenerator
+| *camel.component.fhir.configuration.fhir-context.parser-options* |  |  | ParserOptions
+| *camel.component.fhir.configuration.fhir-context.performance-options* |  |  | Set
+| *camel.component.fhir.configuration.fhir-context.resource-definitions-with-explicit-id* |  |  | RuntimeResourceDefinition>
+| *camel.component.fhir.configuration.fhir-context.resource-names* |  |  | Set
+| *camel.component.fhir.configuration.fhir-context.restful-client-factory* |  |  | IRestfulClientFactory
+| *camel.component.fhir.configuration.fhir-context.validation-support* |  |  | IContextValidation Support<?,?,?,?,?,?>
+| *camel.component.fhir.configuration.force-conformance-check* |  | false | Boolean
+| *camel.component.fhir.configuration.log* |  | false | Boolean
+| *camel.component.fhir.configuration.method-name* | What sub operation to use for the selected operation |  | String
+| *camel.component.fhir.configuration.password* |  |  | String
+| *camel.component.fhir.configuration.pretty-print* |  | false | Boolean
+| *camel.component.fhir.configuration.proxy-host* |  |  | String
+| *camel.component.fhir.configuration.proxy-password* |  |  | String
+| *camel.component.fhir.configuration.proxy-port* |  |  | Integer
+| *camel.component.fhir.configuration.proxy-user* |  |  | String
+| *camel.component.fhir.configuration.server-url* |  |  | String
+| *camel.component.fhir.configuration.session-cookie* |  |  | String
+| *camel.component.fhir.configuration.socket-timeout* |  | 10000 | Integer
+| *camel.component.fhir.configuration.username* |  |  | String
+| *camel.component.fhir.enabled* |  |  | Boolean
+| *camel.component.fhir.resolve-property-placeholders* | Whether the component should resolve property placeholders on itself when
+ starting. Only properties which are of String type can use property
+ placeholders. | true | Boolean
+| *camel.dataformat.fhirjson.content-type-header* | Whether the data format should set the Content-Type header with the type
+ from the data format if the data format is capable of doing so. For
+ example application/xml for data formats marshalling to XML, or
+ application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.fhirjson.enabled* |  |  | Boolean
+| *camel.dataformat.fhirjson.fhir-version* | The version of FHIR to use. Possible values are:
+ DSTU2,DSTU2_HL7ORG,DSTU2_1,DSTU3,R4 | DSTU3 | String
+| *camel.dataformat.fhirxml.content-type-header* | Whether the data format should set the Content-Type header with the type
+ from the data format if the data format is capable of doing so. For
+ example application/xml for data formats marshalling to XML, or
+ application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.fhirxml.enabled* |  |  | Boolean
+| *camel.dataformat.fhirxml.fhir-version* | The version of FHIR to use. Possible values are:
+ DSTU2,DSTU2_HL7ORG,DSTU2_1,DSTU3,R4 | DSTU3 | String
+|===
+// spring-boot-auto-configure options: END
diff --git a/components/camel-fhir/camel-fhir-component/src/main/docs/fhirXml-dataformat.adoc b/components/camel-fhir/camel-fhir-component/src/main/docs/fhirXml-dataformat.adoc
index 37b53ec..637ef5f 100644
--- a/components/camel-fhir/camel-fhir-component/src/main/docs/fhirXml-dataformat.adoc
+++ b/components/camel-fhir/camel-fhir-component/src/main/docs/fhirXml-dataformat.adoc
@@ -1,7 +1,6 @@
 [[fhirXml-dataformat]]
 == FHIR XML DataFormat
 *Available as of Camel version 2.21*
-*Available as of Camel version 2.21*
 
 
 The FHIR-XML Data Format leverages
@@ -22,3 +21,64 @@ The FHIR XML dataformat supports 2 options, which are listed below.
 | contentTypeHeader | false | Boolean | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc.
 |===
 // dataformat options: END
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
+
+
+The component supports 38 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.fhir.configuration.access-token* |  |  | String
+| *camel.component.fhir.configuration.api-name* | What kind of operation to perform |  | FhirApiName
+| *camel.component.fhir.configuration.client* |  |  | IGenericClient
+| *camel.component.fhir.configuration.client-factory* |  |  | IRestfulClientFactory
+| *camel.component.fhir.configuration.compress* |  | false | Boolean
+| *camel.component.fhir.configuration.connection-timeout* |  | 10000 | Integer
+| *camel.component.fhir.configuration.defer-model-scanning* |  | false | Boolean
+| *camel.component.fhir.configuration.fhir-context.add-profile-tag-when-encoding* |  |  | AddProfileTagEnum
+| *camel.component.fhir.configuration.fhir-context.element-definitions* |  |  | BaseRuntimeElementDefinition<?>>
+| *camel.component.fhir.configuration.fhir-context.localizer* |  |  | HapiLocalizer
+| *camel.component.fhir.configuration.fhir-context.narrative-generator* |  |  | INarrativeGenerator
+| *camel.component.fhir.configuration.fhir-context.parser-options* |  |  | ParserOptions
+| *camel.component.fhir.configuration.fhir-context.performance-options* |  |  | Set
+| *camel.component.fhir.configuration.fhir-context.resource-definitions-with-explicit-id* |  |  | RuntimeResourceDefinition>
+| *camel.component.fhir.configuration.fhir-context.resource-names* |  |  | Set
+| *camel.component.fhir.configuration.fhir-context.restful-client-factory* |  |  | IRestfulClientFactory
+| *camel.component.fhir.configuration.fhir-context.validation-support* |  |  | IContextValidation Support<?,?,?,?,?,?>
+| *camel.component.fhir.configuration.force-conformance-check* |  | false | Boolean
+| *camel.component.fhir.configuration.log* |  | false | Boolean
+| *camel.component.fhir.configuration.method-name* | What sub operation to use for the selected operation |  | String
+| *camel.component.fhir.configuration.password* |  |  | String
+| *camel.component.fhir.configuration.pretty-print* |  | false | Boolean
+| *camel.component.fhir.configuration.proxy-host* |  |  | String
+| *camel.component.fhir.configuration.proxy-password* |  |  | String
+| *camel.component.fhir.configuration.proxy-port* |  |  | Integer
+| *camel.component.fhir.configuration.proxy-user* |  |  | String
+| *camel.component.fhir.configuration.server-url* |  |  | String
+| *camel.component.fhir.configuration.session-cookie* |  |  | String
+| *camel.component.fhir.configuration.socket-timeout* |  | 10000 | Integer
+| *camel.component.fhir.configuration.username* |  |  | String
+| *camel.component.fhir.enabled* |  |  | Boolean
+| *camel.component.fhir.resolve-property-placeholders* | Whether the component should resolve property placeholders on itself when
+ starting. Only properties which are of String type can use property
+ placeholders. | true | Boolean
+| *camel.dataformat.fhirjson.content-type-header* | Whether the data format should set the Content-Type header with the type
+ from the data format if the data format is capable of doing so. For
+ example application/xml for data formats marshalling to XML, or
+ application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.fhirjson.enabled* |  |  | Boolean
+| *camel.dataformat.fhirjson.fhir-version* | The version of FHIR to use. Possible values are:
+ DSTU2,DSTU2_HL7ORG,DSTU2_1,DSTU3,R4 | DSTU3 | String
+| *camel.dataformat.fhirxml.content-type-header* | Whether the data format should set the Content-Type header with the type
+ from the data format if the data format is capable of doing so. For
+ example application/xml for data formats marshalling to XML, or
+ application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.fhirxml.enabled* |  |  | Boolean
+| *camel.dataformat.fhirxml.fhir-version* | The version of FHIR to use. Possible values are:
+ DSTU2,DSTU2_HL7ORG,DSTU2_1,DSTU3,R4 | DSTU3 | String
+|===
+// spring-boot-auto-configure options: END
diff --git a/components/camel-gson/src/main/docs/json-gson-dataformat.adoc b/components/camel-gson/src/main/docs/json-gson-dataformat.adoc
index 9d60b38..c3704f4 100644
--- a/components/camel-gson/src/main/docs/json-gson-dataformat.adoc
+++ b/components/camel-gson/src/main/docs/json-gson-dataformat.adoc
@@ -45,6 +45,80 @@ The JSon GSon dataformat supports 19 options, which are listed below.
 | contentTypeHeader | false | Boolean | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc.
 |===
 // dataformat options: END
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
+
+
+The component supports 20 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.json-gson.allow-jms-type* | Used for JMS users to allow the JMSType header from the JMS spec to
+ specify a FQN classname to use to unmarshal to. | false | Boolean
+| *camel.dataformat.json-gson.allow-unmarshall-type* | If enabled then Jackson is allowed to attempt to use the
+ CamelJacksonUnmarshalType header during the unmarshalling. This should
+ only be enabled when desired to be used. | false | Boolean
+| *camel.dataformat.json-gson.collection-type-name* | 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. |  | String
+| *camel.dataformat.json-gson.content-type-header* | Whether the data format should set the Content-Type header with the type
+ from the data format if the data format is capable of doing so. For
+ example application/xml for data formats marshalling to XML, or
+ application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.json-gson.disable-features* | 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 |  | String
+| *camel.dataformat.json-gson.enable-features* | 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 |  | String
+| *camel.dataformat.json-gson.enable-jaxb-annotation-module* | Whether to enable the JAXB annotations module when using jackson. When
+ enabled then JAXB annotations can be used by Jackson. | false | Boolean
+| *camel.dataformat.json-gson.enabled* | Enable json-gson dataformat | true | Boolean
+| *camel.dataformat.json-gson.include* | 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 |  | String
+| *camel.dataformat.json-gson.json-view* | 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 |  | Class
+| *camel.dataformat.json-gson.library* | Which json library to use. |  | JsonLibrary
+| *camel.dataformat.json-gson.module-class-names* | 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. |  | String
+| *camel.dataformat.json-gson.module-refs* | To use custom Jackson modules referred from the Camel registry. Multiple
+ modules can be separated by comma. |  | String
+| *camel.dataformat.json-gson.object-mapper* | Lookup and use the existing ObjectMapper with the given id when using
+ Jackson. |  | String
+| *camel.dataformat.json-gson.permissions* | 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. |  | String
+| *camel.dataformat.json-gson.pretty-print* | To enable pretty printing output nicely formatted. Is by default false. | false | Boolean
+| *camel.dataformat.json-gson.timezone* | If set then Jackson will use the Timezone when marshalling/unmarshalling.
+ This option will have no effect on the others Json DataFormat, like gson,
+ fastjson and xstream. |  | String
+| *camel.dataformat.json-gson.unmarshal-type-name* | Class name of the java type to use when unarmshalling |  | String
+| *camel.dataformat.json-gson.use-default-object-mapper* | Whether to lookup and use default Jackson ObjectMapper from the registry. | true | Boolean
+| *camel.dataformat.json-gson.use-list* | To unarmshal to a List of Map or a List of Pojo. | false | Boolean
+|===
+// spring-boot-auto-configure options: END
 
 
 
diff --git a/components/camel-hystrix/src/main/docs/hystrix.adoc b/components/camel-hystrix/src/main/docs/hystrix.adoc
index 40885f1..3b9a191 100644
--- a/components/camel-hystrix/src/main/docs/hystrix.adoc
+++ b/components/camel-hystrix/src/main/docs/hystrix.adoc
@@ -17,4 +17,19 @@ for this component:
 </dependency>
 ----
 
-For more information see the http://camel.apache.org/hystrix-eip.html[Hystrix EIP]
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.hystrix.mapping.enabled* | Enables the automatic mapping of the hystrics metric servlet into the Spring web context. | true | Boolean
+| *camel.component.hystrix.mapping.path* | Endpoint for hystrix metrics servlet. | /hystrix.stream | String
+| *camel.component.hystrix.mapping.servlet-name* | Name of the Hystrix metrics servlet. | HystrixEventStreamServlet | String
+|===
+// spring-boot-auto-configure options: END
diff --git a/components/camel-jackson/src/main/docs/json-jackson-dataformat.adoc b/components/camel-jackson/src/main/docs/json-jackson-dataformat.adoc
index 7aa707d..1bd5f7e 100644
--- a/components/camel-jackson/src/main/docs/json-jackson-dataformat.adoc
+++ b/components/camel-jackson/src/main/docs/json-jackson-dataformat.adoc
@@ -46,8 +46,81 @@ The JSon Jackson dataformat supports 19 options, which are listed below.
 | contentTypeHeader | false | Boolean | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc.
 |===
 // dataformat options: END
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
 
 
+The component supports 20 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.json-jackson.allow-jms-type* | Used for JMS users to allow the JMSType header from the JMS spec to
+ specify a FQN classname to use to unmarshal to. | false | Boolean
+| *camel.dataformat.json-jackson.allow-unmarshall-type* | If enabled then Jackson is allowed to attempt to use the
+ CamelJacksonUnmarshalType header during the unmarshalling. This should
+ only be enabled when desired to be used. | false | Boolean
+| *camel.dataformat.json-jackson.collection-type-name* | 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. |  | String
+| *camel.dataformat.json-jackson.content-type-header* | Whether the data format should set the Content-Type header with the type
+ from the data format if the data format is capable of doing so. For
+ example application/xml for data formats marshalling to XML, or
+ application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.json-jackson.disable-features* | 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 |  | String
+| *camel.dataformat.json-jackson.enable-features* | 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 |  | String
+| *camel.dataformat.json-jackson.enable-jaxb-annotation-module* | Whether to enable the JAXB annotations module when using jackson. When
+ enabled then JAXB annotations can be used by Jackson. | false | Boolean
+| *camel.dataformat.json-jackson.enabled* | Enable json-jackson dataformat | true | Boolean
+| *camel.dataformat.json-jackson.include* | 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 |  | String
+| *camel.dataformat.json-jackson.json-view* | 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 |  | Class
+| *camel.dataformat.json-jackson.library* | Which json library to use. |  | JsonLibrary
+| *camel.dataformat.json-jackson.module-class-names* | 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. |  | String
+| *camel.dataformat.json-jackson.module-refs* | To use custom Jackson modules referred from the Camel registry. Multiple
+ modules can be separated by comma. |  | String
+| *camel.dataformat.json-jackson.object-mapper* | Lookup and use the existing ObjectMapper with the given id when using
+ Jackson. |  | String
+| *camel.dataformat.json-jackson.permissions* | 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. |  | String
+| *camel.dataformat.json-jackson.pretty-print* | To enable pretty printing output nicely formatted. Is by default false. | false | Boolean
+| *camel.dataformat.json-jackson.timezone* | If set then Jackson will use the Timezone when marshalling/unmarshalling.
+ This option will have no effect on the others Json DataFormat, like gson,
+ fastjson and xstream. |  | String
+| *camel.dataformat.json-jackson.unmarshal-type-name* | Class name of the java type to use when unarmshalling |  | String
+| *camel.dataformat.json-jackson.use-default-object-mapper* | Whether to lookup and use default Jackson ObjectMapper from the registry. | true | Boolean
+| *camel.dataformat.json-jackson.use-list* | To unarmshal to a List of Map or a List of Pojo. | false | Boolean
+|===
+// spring-boot-auto-configure options: END
+
 === Using custom ObjectMapper
 
 You can configure `JacksonDataFormat` to use a custom `ObjectMapper` in case you need more control of the mapping configuration.
diff --git a/components/camel-jetty9/src/main/docs/jetty-component.adoc b/components/camel-jetty9/src/main/docs/jetty-component.adoc
index a106cdd..a999541 100644
--- a/components/camel-jetty9/src/main/docs/jetty-component.adoc
+++ b/components/camel-jetty9/src/main/docs/jetty-component.adoc
@@ -185,8 +185,100 @@ with the following path and query parameters:
 | *sslContextParameters* (security) | To configure security using SSLContextParameters |  | SSLContextParameters
 |===
 // endpoint options: END
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
 
 
+The component supports 34 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jetty.allow-java-serialized-object* | 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. | false | Boolean
+| *camel.component.jetty.continuation-timeout* | Allows to set a timeout in millis when using Jetty as consumer (server).
+ By default Jetty uses 30000. You can use a value of = 0 to never expire.
+ If a timeout occurs then the request will be expired and Jetty will
+ return back a http error 503 to the client. This option is only in use
+ when using Jetty with the Asynchronous Routing Engine. | 30000 | Long
+| *camel.component.jetty.enable-jmx* | If this option is true, Jetty JMX support will be enabled for this
+ endpoint. | false | Boolean
+| *camel.component.jetty.enabled* | Enable jetty component | true | Boolean
+| *camel.component.jetty.error-handler* | This option is used to set the ErrorHandler that Jetty server uses. The
+ option is a org.eclipse.jetty.server.handler.ErrorHandler type. |  | String
+| *camel.component.jetty.header-filter-strategy* | To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter
+ header to and from Camel message. The option is a
+ org.apache.camel.spi.HeaderFilterStrategy type. |  | String
+| *camel.component.jetty.http-binding* | Not to be used - use JettyHttpBinding instead. The option is a
+ org.apache.camel.http.common.HttpBinding type. |  | String
+| *camel.component.jetty.http-client-max-threads* | To set a value for maximum number of threads in HttpClient thread pool.
+ Notice that both a min and max size must be configured. |  | Integer
+| *camel.component.jetty.http-client-min-threads* | To set a value for minimum number of threads in HttpClient thread pool.
+ Notice that both a min and max size must be configured. |  | Integer
+| *camel.component.jetty.http-configuration* | Jetty component does not use HttpConfiguration. The option is a
+ org.apache.camel.http.common.HttpConfiguration type. |  | String
+| *camel.component.jetty.jetty-http-binding* | To use a custom org.apache.camel.component.jetty.JettyHttpBinding, which
+ are used to customize how a response should be written for the producer.
+ The option is a org.apache.camel.component.jetty.JettyHttpBinding type. |  | String
+| *camel.component.jetty.keystore* | Specifies the location of the Java keystore file, which contains the
+ Jetty server's own X.509 certificate in a key entry. |  | String
+| *camel.component.jetty.max-threads* | To set a value for maximum number of threads in server thread pool.
+ Notice that both a min and max size must be configured. |  | Integer
+| *camel.component.jetty.mb-container* | To use a existing configured org.eclipse.jetty.jmx.MBeanContainer if JMX
+ is enabled that Jetty uses for registering mbeans. The option is a
+ org.eclipse.jetty.jmx.MBeanContainer type. |  | String
+| *camel.component.jetty.min-threads* | To set a value for minimum number of threads in server thread pool.
+ Notice that both a min and max size must be configured. |  | Integer
+| *camel.component.jetty.proxy-host* | To use a http proxy to configure the hostname. |  | String
+| *camel.component.jetty.proxy-port* | To use a http proxy to configure the port number. |  | Integer
+| *camel.component.jetty.request-buffer-size* | Allows to configure a custom value of the request buffer size on the
+ Jetty connectors. |  | Integer
+| *camel.component.jetty.request-header-size* | Allows to configure a custom value of the request header size on the
+ Jetty connectors. |  | Integer
+| *camel.component.jetty.resolve-property-placeholders* | Whether the component should resolve property placeholders on itself when
+ starting. Only properties which are of String type can use property
+ placeholders. | true | Boolean
+| *camel.component.jetty.response-buffer-size* | Allows to configure a custom value of the response buffer size on the
+ Jetty connectors. |  | Integer
+| *camel.component.jetty.response-header-size* | Allows to configure a custom value of the response header size on the
+ Jetty connectors. |  | Integer
+| *camel.component.jetty.send-server-version* | If the option is true, jetty server will send the date header to the
+ client which sends the request. NOTE please make sure there is no any
+ other camel-jetty endpoint is share the same port, otherwise this option
+ may not work as expected. | true | Boolean
+| *camel.component.jetty.socket-connector-properties* | A map which contains general HTTP connector properties. Uses the same
+ principle as sslSocketConnectorProperties. The option is a
+ java.util.Map<java.lang.String,java.lang.Object> type. |  | String
+| *camel.component.jetty.socket-connectors* | A map which contains per port number specific HTTP connectors. Uses the
+ same principle as sslSocketConnectors. The option is a
+ java.util.Map<java.lang.Integer,org.eclipse.jetty.server.Connector> type. |  | String
+| *camel.component.jetty.ssl-context-parameters* | To configure security using SSLContextParameters. The option is a
+ org.apache.camel.util.jsse.SSLContextParameters type. |  | String
+| *camel.component.jetty.ssl-key-password* | The key password, which is used to access the certificate's key entry in
+ the keystore (this is the same password that is supplied to the keystore
+ command's -keypass option). |  | String
+| *camel.component.jetty.ssl-password* | The ssl password, which is required to access the keystore file (this is
+ the same password that is supplied to the keystore command's -storepass
+ option). |  | String
+| *camel.component.jetty.ssl-socket-connector-properties* | A map which contains general SSL connector properties. The option is a
+ java.util.Map<java.lang.String,java.lang.Object> type. |  | String
+| *camel.component.jetty.ssl-socket-connectors* | A map which contains per port number specific SSL connectors. The option
+ is a java.util.Map<java.lang.Integer,org.eclipse.jetty.server.Connector>
+ type. |  | String
+| *camel.component.jetty.thread-pool* | To use a custom thread pool for the server. This option should only be
+ used in special circumstances. The option is a
+ org.eclipse.jetty.util.thread.ThreadPool type. |  | String
+| *camel.component.jetty.use-continuation* | Whether or not to use Jetty continuations for the Jetty Server. | true | Boolean
+| *camel.component.jetty.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters | false | Boolean
+| *camel.component.jetty.use-x-forwarded-for-header* | To use the X-Forwarded-For header in HttpServletRequest.getRemoteAddr. | false | Boolean
+|===
+// spring-boot-auto-configure options: END
+
 
 
 
diff --git a/components/camel-johnzon/src/main/docs/json-johnzon-dataformat.adoc b/components/camel-johnzon/src/main/docs/json-johnzon-dataformat.adoc
index 433bd59..9d005e4 100644
--- a/components/camel-johnzon/src/main/docs/json-johnzon-dataformat.adoc
+++ b/components/camel-johnzon/src/main/docs/json-johnzon-dataformat.adoc
@@ -46,8 +46,81 @@ The JSon Johnzon dataformat supports 19 options, which are listed below.
 | contentTypeHeader | false | Boolean | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc.
 |===
 // dataformat options: END
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
 
 
+The component supports 20 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.json-johnzon.allow-jms-type* | Used for JMS users to allow the JMSType header from the JMS spec to
+ specify a FQN classname to use to unmarshal to. | false | Boolean
+| *camel.dataformat.json-johnzon.allow-unmarshall-type* | If enabled then Jackson is allowed to attempt to use the
+ CamelJacksonUnmarshalType header during the unmarshalling. This should
+ only be enabled when desired to be used. | false | Boolean
+| *camel.dataformat.json-johnzon.collection-type-name* | 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. |  | String
+| *camel.dataformat.json-johnzon.content-type-header* | Whether the data format should set the Content-Type header with the type
+ from the data format if the data format is capable of doing so. For
+ example application/xml for data formats marshalling to XML, or
+ application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.json-johnzon.disable-features* | 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 |  | String
+| *camel.dataformat.json-johnzon.enable-features* | 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 |  | String
+| *camel.dataformat.json-johnzon.enable-jaxb-annotation-module* | Whether to enable the JAXB annotations module when using jackson. When
+ enabled then JAXB annotations can be used by Jackson. | false | Boolean
+| *camel.dataformat.json-johnzon.enabled* | Enable json-johnzon dataformat | true | Boolean
+| *camel.dataformat.json-johnzon.include* | 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 |  | String
+| *camel.dataformat.json-johnzon.json-view* | 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 |  | Class
+| *camel.dataformat.json-johnzon.library* | Which json library to use. |  | JsonLibrary
+| *camel.dataformat.json-johnzon.module-class-names* | 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. |  | String
+| *camel.dataformat.json-johnzon.module-refs* | To use custom Jackson modules referred from the Camel registry. Multiple
+ modules can be separated by comma. |  | String
+| *camel.dataformat.json-johnzon.object-mapper* | Lookup and use the existing ObjectMapper with the given id when using
+ Jackson. |  | String
+| *camel.dataformat.json-johnzon.permissions* | 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. |  | String
+| *camel.dataformat.json-johnzon.pretty-print* | To enable pretty printing output nicely formatted. Is by default false. | false | Boolean
+| *camel.dataformat.json-johnzon.timezone* | If set then Jackson will use the Timezone when marshalling/unmarshalling.
+ This option will have no effect on the others Json DataFormat, like gson,
+ fastjson and xstream. |  | String
+| *camel.dataformat.json-johnzon.unmarshal-type-name* | Class name of the java type to use when unarmshalling |  | String
+| *camel.dataformat.json-johnzon.use-default-object-mapper* | Whether to lookup and use default Jackson ObjectMapper from the registry. | true | Boolean
+| *camel.dataformat.json-johnzon.use-list* | To unarmshal to a List of Map or a List of Pojo. | false | Boolean
+|===
+// spring-boot-auto-configure options: END
+
 
 ### Dependencies
 
diff --git a/components/camel-josql/src/main/docs/sql-language.adoc b/components/camel-josql/src/main/docs/sql-language.adoc
index 031f092..20f7fc1 100644
--- a/components/camel-josql/src/main/docs/sql-language.adoc
+++ b/components/camel-josql/src/main/docs/sql-language.adoc
@@ -70,8 +70,23 @@ The SQL language supports 1 options, which are listed below.
 | trim | true | Boolean | Whether to trim the value to remove leading and trailing whitespaces and line breaks
 |===
 // language options: END
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
 
 
+The component supports 2 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.language.sql.enabled* | Enable sql language | true | Boolean
+| *camel.language.sql.trim* | Whether to trim the value to remove leading and trailing whitespaces and
+ line breaks | true | Boolean
+|===
+// spring-boot-auto-configure options: END
+
 ### Loading script from external resource
 
 *Available as of Camel 2.11*
@@ -84,4 +99,4 @@ eg to refer to a file on the classpath you can do:
 [source,java]
 ----------------------------------------------------------
 .setHeader("myHeader").sql("resource:classpath:mysql.sql")
-----------------------------------------------------------
\ No newline at end of file
+----------------------------------------------------------
diff --git a/components/camel-jsch/src/main/docs/scp-component.adoc b/components/camel-jsch/src/main/docs/scp-component.adoc
index 06d43f9..e4a7a09 100644
--- a/components/camel-jsch/src/main/docs/scp-component.adoc
+++ b/components/camel-jsch/src/main/docs/scp-component.adoc
@@ -111,8 +111,27 @@ with the following path and query parameters:
 | *ciphers* (security) | Set a comma separated list of ciphers that will be used in order of preference. Possible cipher names are defined by JCraft JSCH. Some examples include: aes128-ctr,aes128-cbc,3des-ctr,3des-cbc,blowfish-cbc,aes192-cbc,aes256-cbc. If not specified the default list from JSCH will be used. |  | String
 |===
 // endpoint options: END
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
 
 
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.scp.enabled* | Enable scp component | true | Boolean
+| *camel.component.scp.resolve-property-placeholders* | Whether the component should resolve property placeholders on itself when
+ starting. Only properties which are of String type can use property
+ placeholders. | true | Boolean
+| *camel.component.scp.verbose-logging* | JSCH is verbose logging out of the box. Therefore we turn the logging
+ down to DEBUG logging by default. But setting this option to true turns
+ on the verbose logging again. | false | Boolean
+|===
+// spring-boot-auto-configure options: END
+
 
 
 
diff --git a/components/camel-juel/src/main/docs/el-language.adoc b/components/camel-juel/src/main/docs/el-language.adoc
index b4e5e82..f1b2cfb 100644
--- a/components/camel-juel/src/main/docs/el-language.adoc
+++ b/components/camel-juel/src/main/docs/el-language.adoc
@@ -60,8 +60,23 @@ The EL language supports 1 options, which are listed below.
 | trim | true | Boolean | Whether to trim the value to remove leading and trailing whitespaces and line breaks
 |===
 // language options: END
+// spring-boot-auto-configure options: START
+=== Spring Boot Auto-Configuration
 
 
+The component supports 2 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.language.el.enabled* | Enable el language | true | Boolean
+| *camel.language.el.trim* | Whether to trim the value to remove leading and trailing whitespaces and
+ line breaks | true | Boolean
+|===
+// spring-boot-auto-configure options: END
+
 
 ### Variables
 
@@ -106,4 +121,4 @@ the download page for the latest versions).
 -------------------------------------
 
 Otherwise you'll also need to include
-http://repo2.maven.org/maven2/de/odysseus/juel/juel/2.1.3/juel-2.1.3.jar[JUEL].
\ No newline at end of file
+http://repo2.maven.org/maven2/de/odysseus/juel/juel/2.1.3/juel-2.1.3.jar[JUEL].
diff --git a/platforms/spring-boot/components-starter/pom.xml b/platforms/spring-boot/components-starter/pom.xml
index 0e65b06..fd00a6a 100644
--- a/platforms/spring-boot/components-starter/pom.xml
+++ b/platforms/spring-boot/components-starter/pom.xml
@@ -83,7 +83,7 @@
         <version>${project.version}</version>
         <configuration>
           <!-- set to true to make build fail fast if missing documentation in docs files -->
-          <failFast>false</failFast>
+          <failFast>true</failFast>
         </configuration>
         <executions>
           <execution>
diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/UpdateSpringBootAutoConfigurationReadmeMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/UpdateSpringBootAutoConfigurationReadmeMojo.java
index d61eb23..8ddf207 100644
--- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/UpdateSpringBootAutoConfigurationReadmeMojo.java
+++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/UpdateSpringBootAutoConfigurationReadmeMojo.java
@@ -17,6 +17,7 @@
 package org.apache.camel.maven.packaging;
 
 import java.io.File;
+import java.io.FileFilter;
 import java.io.FileInputStream;
 import java.io.FileReader;
 import java.io.IOException;
@@ -99,16 +100,29 @@ public class UpdateSpringBootAutoConfigurationReadmeMojo extends AbstractMojo {
 
         // only if there is components we should update the documentation files
         if (jsonFile.exists()) {
-            getLog().info("Processing file: " + jsonFile);
+            getLog().debug("Processing Spring Boot auto-configuration file: " + jsonFile);
             Object js = Jsoner.deserialize(new FileReader(jsonFile));
             if (js != null) {
                 String name = starter.getName();
+
+                if (!isValidStarter(name)) {
+                    return;
+                }
+
                 // skip camel-  and -starter in the end
                 String componentName = name.substring(6, name.length() - 8);
                 getLog().debug("Camel component: " + componentName);
                 File docFolder = new File(componentsDir, "camel-" + componentName + "/src/main/docs/");
                 // update all adoc files (as it may be component, language, data-format or just other kind)
-                File[] docFiles = docFolder.listFiles((f) -> f.getName().startsWith(componentName) && f.getName().endsWith(".adoc"));
+                File[] docFiles = docFolder.listFiles(new ComponentDocFilter(componentName));
+
+                // maybe its one of those that has a sub-folder
+                if (docFiles == null || docFiles.length == 0) {
+                    docFolder = new File(componentsDir, "camel-" + componentName + "/camel-" + componentName + "-component/src/main/docs/");
+                    // update all adoc files (as it may be component, language, data-format or just other kind)
+                    docFiles = docFolder.listFiles(new ComponentDocFilter(componentName));
+                }
+
                 if (docFiles != null && docFiles.length > 0) {
                     boolean onlyOther = docFiles.length == 1 && docFiles[0].getName().equals(componentName + ".adoc");
                     List models = parseSpringBootAutoConfigreModels(jsonFile);
@@ -124,17 +138,70 @@ public class UpdateSpringBootAutoConfigurationReadmeMojo extends AbstractMojo {
                         } else {
                             getLog().debug("No changes to doc file: " + docFile);
                         }
-                        if (isFailFast()) {
-                            throw new MojoExecutionException("Failed build due failFast=true");
-                        }
                     }
                 } else {
                     getLog().warn("No component docs found in folder: " + docFolder);
+                    if (isFailFast()) {
+                        throw new MojoExecutionException("Failed build due failFast=true");
+                    }
                 }
             }
         }
     }
 
+    private static final class ComponentDocFilter implements FileFilter {
+
+        private final String componentName;
+
+        public ComponentDocFilter(String componentName) {
+            this.componentName = asComponentName(componentName);
+        }
+
+        @Override
+        public boolean accept(File pathname) {
+            String name = pathname.getName();
+
+            // skip empty placeholder files
+            if ("aws.adoc".equals(name) || "azure.adoc".equals(name) || "hazelcast.adoc".equals(name)
+                || "ignite.adoc".equals(name) || "kubernetes.adoc".equals(name)) {
+                return false;
+            }
+
+            return name.startsWith(componentName) && name.endsWith(".adoc");
+        }
+    }
+
+    private static String asComponentName(String componentName) {
+        if ("fastjson".equals(componentName)) {
+            return "json-fastjson";
+        } else if ("gson".equals(componentName)) {
+            return "json-gson";
+        } else if ("jackson".equals(componentName)) {
+            return "json-jackson";
+        } else if ("johnzon".equals(componentName)) {
+            return "json-johnzon";
+        } else if ("cassandraql".equals(componentName)) {
+            return "cql";
+        } else if ("josql".equals(componentName)) {
+            return "sql";
+        } else if ("jetty9".equals(componentName)) {
+            return "jetty";
+        } else if ("juel".equals(componentName)) {
+            return "el";
+        } else if ("jsch".equals(componentName)) {
+            return "scp";
+        }
+        return componentName;
+    }
+
+    private static boolean isValidStarter(String name) {
+        // skip these
+        if ("camel-core-starter".equals(name) || "camel-spring-boot-starter".equals(name)) {
+            return false;
+        }
+        return true;
+    }
+
     private List parseSpringBootAutoConfigreModels(File file) throws IOException, DeserializationException {
         List<SpringBootAutoConfigureOptionModel> answer = new ArrayList<>();