You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by gn...@apache.org on 2019/06/11 16:15:53 UTC

[camel] branch endpoint-dsl updated (011e7fd -> b56e661)

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

gnodet pushed a change to branch endpoint-dsl
in repository https://gitbox.apache.org/repos/asf/camel.git.


    from 011e7fd  Add an EndpointRouteBuilder to access the DSL directly
     new e091e0b  Rename the new classes/interfaces
     new 192b1d2  Generate additional fluent methods with a String argument to allow the property binding to kick in for references, placeholders, etc...
     new 2afa044  Fix endpoint resolution
     new 7b8c3ac  Fix enum generation and put <code> around the type in javadoc
     new b56e661  Fix javadoc generated for the type to use &lt; and &gt;

The 5 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../blueprint/BlueprintComponentResolverTest.java  |    7 +
 .../main/java/org/apache/camel/CamelContext.java   |   11 +
 .../src/main/java/org/apache/camel/Component.java  |   14 +
 .../java/org/apache/camel/spi/RouteContext.java    |    9 +-
 .../camel/impl/engine/AbstractCamelContext.java    |  105 +
 .../camel/impl/engine/DefaultRouteContext.java     |   24 +-
 .../camel/core/osgi/OsgiComponentResolverTest.java |    7 +
 .../org/apache/camel/builder/RouteBuilder.java     |    4 +-
 .../camel/model/AbstractEndpointBuilder.java       |   44 +
 .../camel/model/EndpointConsumerBuilder.java       |   27 +
 .../org/apache/camel/model/EndpointDefinition.java |   38 -
 .../camel/model/EndpointProducerBuilder.java       |   27 +
 .../org/apache/camel/model/FromDefinition.java     |   14 +-
 .../apache/camel/model/ProcessorDefinition.java    |    2 +-
 .../org/apache/camel/model/RouteDefinition.java    |    2 +-
 .../org/apache/camel/model/RoutesDefinition.java   |    2 +-
 .../org/apache/camel/model/SendDefinition.java     |   11 +-
 .../java/org/apache/camel/model/ToDefinition.java  |    4 +-
 .../apache/camel/model/endpoint/AMQPEndpoint.java  | 1127 --------
 .../camel/model/endpoint/AMQPEndpointBuilder.java  | 2072 +++++++++++++++
 .../{AS2Endpoint.java => AS2EndpointBuilder.java}  |  296 ++-
 .../camel/model/endpoint/ActiveMQEndpoint.java     | 1133 ---------
 .../model/endpoint/ActiveMQEndpointBuilder.java    | 2088 +++++++++++++++
 .../apache/camel/model/endpoint/AhcEndpoint.java   |  200 --
 .../camel/model/endpoint/AhcEndpointBuilder.java   |  357 +++
 .../apache/camel/model/endpoint/ApnsEndpoint.java  |  280 --
 .../camel/model/endpoint/ApnsEndpointBuilder.java  |  492 ++++
 .../camel/model/endpoint/AsteriskEndpoint.java     |  159 --
 .../model/endpoint/AsteriskEndpointBuilder.java    |  225 ++
 .../apache/camel/model/endpoint/AtmosEndpoint.java |  192 --
 .../camel/model/endpoint/AtmosEndpointBuilder.java |  273 ++
 .../endpoint/AtmosphereWebsocketEndpoint.java      |  331 ---
 .../AtmosphereWebsocketEndpointBuilder.java        |  580 +++++
 .../apache/camel/model/endpoint/AtomEndpoint.java  |  327 ---
 .../camel/model/endpoint/AtomEndpointBuilder.java  |  592 +++++
 .../camel/model/endpoint/AtomixMapEndpoint.java    |  242 --
 .../model/endpoint/AtomixMapEndpointBuilder.java   |  411 +++
 .../model/endpoint/AtomixMessagingEndpoint.java    |  251 --
 .../endpoint/AtomixMessagingEndpointBuilder.java   |  417 +++
 .../model/endpoint/AtomixMultiMapEndpoint.java     |  232 --
 .../endpoint/AtomixMultiMapEndpointBuilder.java    |  401 +++
 .../camel/model/endpoint/AtomixQueueEndpoint.java  |  229 --
 .../model/endpoint/AtomixQueueEndpointBuilder.java |  379 +++
 .../camel/model/endpoint/AtomixSetEndpoint.java    |  234 --
 .../model/endpoint/AtomixSetEndpointBuilder.java   |  393 +++
 .../camel/model/endpoint/AtomixValueEndpoint.java  |  236 --
 .../model/endpoint/AtomixValueEndpointBuilder.java |  394 +++
 .../apache/camel/model/endpoint/AvroEndpoint.java  |  198 --
 .../camel/model/endpoint/AvroEndpointBuilder.java  |  301 +++
 ...{BeanEndpoint.java => BeanEndpointBuilder.java} |   77 +-
 .../model/endpoint/BeanValidatorEndpoint.java      |  118 -
 .../endpoint/BeanValidatorEndpointBuilder.java     |  172 ++
 .../camel/model/endpoint/BeanstalkEndpoint.java    |  340 ---
 .../model/endpoint/BeanstalkEndpointBuilder.java   |  624 +++++
 .../camel/model/endpoint/BlobServiceEndpoint.java  |  257 --
 .../model/endpoint/BlobServiceEndpointBuilder.java |  429 ++++
 .../camel/model/endpoint/BonitaEndpoint.java       |  155 --
 .../model/endpoint/BonitaEndpointBuilder.java      |  223 ++
 .../{BoxEndpoint.java => BoxEndpointBuilder.java}  |  214 +-
 ...Endpoint.java => BraintreeEndpointBuilder.java} |  172 +-
 .../camel/model/endpoint/BrowseEndpoint.java       |  125 -
 .../model/endpoint/BrowseEndpointBuilder.java      |  183 ++
 .../{CMEndpoint.java => CMEndpointBuilder.java}    |   78 +-
 .../apache/camel/model/endpoint/CMISEndpoint.java  |  198 --
 .../camel/model/endpoint/CMISEndpointBuilder.java  |  303 +++
 .../model/endpoint/CaffeineCacheEndpoint.java      |  251 --
 .../endpoint/CaffeineCacheEndpointBuilder.java     |  439 ++++
 .../model/endpoint/CaffeineLoadCacheEndpoint.java  |  252 --
 .../endpoint/CaffeineLoadCacheEndpointBuilder.java |  444 ++++
 .../camel/model/endpoint/CassandraEndpoint.java    |  382 ---
 .../model/endpoint/CassandraEndpointBuilder.java   |  649 +++++
 ...ndpoint.java => ChatScriptEndpointBuilder.java} |   74 +-
 ...hunkEndpoint.java => ChunkEndpointBuilder.java} |   77 +-
 ...derEndpoint.java => CinderEndpointBuilder.java} |   79 +-
 ...lassEndpoint.java => ClassEndpointBuilder.java} |   77 +-
 .../camel/model/endpoint/ClientEndpoint.java       |  257 --
 .../model/endpoint/ClientEndpointBuilder.java      |  447 ++++
 .../apache/camel/model/endpoint/CoAPEndpoint.java  |  215 --
 .../camel/model/endpoint/CoAPEndpointBuilder.java  |  327 +++
 .../camel/model/endpoint/CometdEndpoint.java       |  245 --
 .../model/endpoint/CometdEndpointBuilder.java      |  396 +++
 .../camel/model/endpoint/ConsulEndpoint.java       |  125 -
 .../model/endpoint/ConsulEndpointBuilder.java      |  183 ++
 ...ndpoint.java => ControlBusEndpointBuilder.java} |   99 +-
 .../apache/camel/model/endpoint/CordaEndpoint.java |  124 -
 .../camel/model/endpoint/CordaEndpointBuilder.java |  191 ++
 .../camel/model/endpoint/CouchDbEndpoint.java      |  215 --
 .../model/endpoint/CouchDbEndpointBuilder.java     |  314 +++
 .../camel/model/endpoint/CouchbaseEndpoint.java    |  499 ----
 .../model/endpoint/CouchbaseEndpointBuilder.java   |  876 +++++++
 .../camel/model/endpoint/CryptoCmsEndpoint.java    |  244 --
 .../model/endpoint/CryptoCmsEndpointBuilder.java   |  425 ++++
 .../{CwEndpoint.java => CwEndpointBuilder.java}    |  105 +-
 .../apache/camel/model/endpoint/CxfEndpoint.java   |  402 ---
 .../camel/model/endpoint/CxfEndpointBuilder.java   |  667 +++++
 .../apache/camel/model/endpoint/CxfRsEndpoint.java |  386 ---
 .../camel/model/endpoint/CxfRsEndpointBuilder.java |  695 +++++
 ...ndpoint.java => DataFormatEndpointBuilder.java} |   51 +-
 .../camel/model/endpoint/DataSetEndpoint.java      |  263 --
 .../model/endpoint/DataSetEndpointBuilder.java     |  458 ++++
 .../camel/model/endpoint/DataSetTestEndpoint.java  |  231 --
 .../model/endpoint/DataSetTestEndpointBuilder.java |  404 +++
 .../{DdbEndpoint.java => DdbEndpointBuilder.java}  |  128 +-
 .../camel/model/endpoint/DdbStreamEndpoint.java    |  342 ---
 .../model/endpoint/DdbStreamEndpointBuilder.java   |  614 +++++
 .../camel/model/endpoint/DigitalOceanEndpoint.java |  156 --
 .../endpoint/DigitalOceanEndpointBuilder.java      |  233 ++
 ...t.java => DigitalSignatureEndpointBuilder.java} |  195 +-
 .../camel/model/endpoint/DirectEndpoint.java       |  150 --
 .../model/endpoint/DirectEndpointBuilder.java      |  236 ++
 .../camel/model/endpoint/DirectVmEndpoint.java     |  171 --
 .../model/endpoint/DirectVmEndpointBuilder.java    |  279 ++
 .../camel/model/endpoint/DisruptorEndpoint.java    |  219 --
 .../model/endpoint/DisruptorEndpointBuilder.java   |  373 +++
 .../camel/model/endpoint/DisruptorVmEndpoint.java  |  222 --
 .../model/endpoint/DisruptorVmEndpointBuilder.java |  374 +++
 .../{DnsEndpoint.java => DnsEndpointBuilder.java}  |   56 +-
 .../camel/model/endpoint/DockerEndpoint.java       |  246 --
 .../model/endpoint/DockerEndpointBuilder.java      |  390 +++
 ...ozerEndpoint.java => DozerEndpointBuilder.java} |   75 +-
 ...rillEndpoint.java => DrillEndpointBuilder.java} |   78 +-
 .../camel/model/endpoint/DropboxEndpoint.java      |  204 --
 .../model/endpoint/DropboxEndpointBuilder.java     |  294 +++
 .../apache/camel/model/endpoint/EC2Endpoint.java   |  137 -
 .../camel/model/endpoint/EC2EndpointBuilder.java   |  188 ++
 .../apache/camel/model/endpoint/ECSEndpoint.java   |  134 -
 .../camel/model/endpoint/ECSEndpointBuilder.java   |  181 ++
 .../apache/camel/model/endpoint/EKSEndpoint.java   |  134 -
 .../camel/model/endpoint/EKSEndpointBuilder.java   |  181 ++
 .../camel/model/endpoint/EhcacheEndpoint.java      |  245 --
 .../model/endpoint/EhcacheEndpointBuilder.java     |  402 +++
 .../{EjbEndpoint.java => EjbEndpointBuilder.java}  |   77 +-
 .../model/endpoint/ElasticsearchEndpoint.java      |  174 --
 .../endpoint/ElasticsearchEndpointBuilder.java     |  267 ++
 .../apache/camel/model/endpoint/ElsqlEndpoint.java |  563 ----
 .../camel/model/endpoint/ElsqlEndpointBuilder.java |  999 ++++++++
 .../camel/model/endpoint/EndpointBuilder.java      |  590 ++---
 .../apache/camel/model/endpoint/EtcdEndpoint.java  |  364 ---
 .../camel/model/endpoint/EtcdEndpointBuilder.java  |  635 +++++
 .../camel/model/endpoint/EventAdminEndpoint.java   |  135 -
 .../model/endpoint/EventAdminEndpointBuilder.java  |  201 ++
 .../apache/camel/model/endpoint/EventEndpoint.java |  123 -
 .../camel/model/endpoint/EventEndpointBuilder.java |  180 ++
 ...{ExecEndpoint.java => ExecEndpointBuilder.java} |  107 +-
 .../camel/model/endpoint/FacebookEndpoint.java     |  854 -------
 .../model/endpoint/FacebookEndpointBuilder.java    | 1290 ++++++++++
 .../apache/camel/model/endpoint/FhirEndpoint.java  |  320 ---
 .../camel/model/endpoint/FhirEndpointBuilder.java  |  504 ++++
 .../apache/camel/model/endpoint/FileEndpoint.java  | 1132 ---------
 .../camel/model/endpoint/FileEndpointBuilder.java  | 2085 +++++++++++++++
 .../camel/model/endpoint/FlatpackEndpoint.java     |  334 ---
 .../model/endpoint/FlatpackEndpointBuilder.java    |  608 +++++
 .../apache/camel/model/endpoint/FlinkEndpoint.java |  121 -
 .../camel/model/endpoint/FlinkEndpointBuilder.java |  196 ++
 .../{FopEndpoint.java => FopEndpointBuilder.java}  |   71 +-
 ...ndpoint.java => FreemarkerEndpointBuilder.java} |   81 +-
 .../apache/camel/model/endpoint/FtpEndpoint.java   | 1321 ----------
 .../camel/model/endpoint/FtpEndpointBuilder.java   | 2446 ++++++++++++++++++
 .../apache/camel/model/endpoint/FtpsEndpoint.java  | 1447 -----------
 .../camel/model/endpoint/FtpsEndpointBuilder.java  | 2688 ++++++++++++++++++++
 ...iaEndpoint.java => GangliaEndpointBuilder.java} |  161 +-
 ...rEndpoint.java => GeoCoderEndpointBuilder.java} |   98 +-
 .../apache/camel/model/endpoint/GitEndpoint.java   |  193 --
 .../camel/model/endpoint/GitEndpointBuilder.java   |  272 ++
 .../camel/model/endpoint/GitHubEndpoint.java       |  198 --
 .../model/endpoint/GitHubEndpointBuilder.java      |  265 ++
 ...nceEndpoint.java => GlanceEndpointBuilder.java} |   76 +-
 ...int.java => GoogleBigQueryEndpointBuilder.java} |   70 +-
 ....java => GoogleBigQuerySQLEndpointBuilder.java} |   64 +-
 ...int.java => GoogleCalendarEndpointBuilder.java} |  147 +-
 .../endpoint/GoogleCalendarStreamEndpoint.java     |  362 ---
 .../GoogleCalendarStreamEndpointBuilder.java       |  618 +++++
 .../camel/model/endpoint/GoogleDriveEndpoint.java  |  212 --
 .../model/endpoint/GoogleDriveEndpointBuilder.java |  298 +++
 ...ndpoint.java => GoogleMailEndpointBuilder.java} |  140 +-
 .../model/endpoint/GoogleMailStreamEndpoint.java   |  340 ---
 .../endpoint/GoogleMailStreamEndpointBuilder.java  |  574 +++++
 .../camel/model/endpoint/GooglePubsubEndpoint.java |  179 --
 .../endpoint/GooglePubsubEndpointBuilder.java      |  271 ++
 ...point.java => GoogleSheetsEndpointBuilder.java} |  141 +-
 .../model/endpoint/GoogleSheetsStreamEndpoint.java |  368 ---
 .../GoogleSheetsStreamEndpointBuilder.java         |  620 +++++
 .../apache/camel/model/endpoint/GoraEndpoint.java  |  244 --
 .../camel/model/endpoint/GoraEndpointBuilder.java  |  420 +++
 ...rapeEndpoint.java => GrapeEndpointBuilder.java} |   48 +-
 .../camel/model/endpoint/GridFsEndpoint.java       |  247 --
 .../model/endpoint/GridFsEndpointBuilder.java      |  367 +++
 .../apache/camel/model/endpoint/GrpcEndpoint.java  |  339 ---
 .../camel/model/endpoint/GrpcEndpointBuilder.java  |  514 ++++
 .../model/endpoint/GuavaEventBusEndpoint.java      |  153 --
 .../endpoint/GuavaEventBusEndpointBuilder.java     |  237 ++
 .../apache/camel/model/endpoint/HBaseEndpoint.java |  235 --
 .../camel/model/endpoint/HBaseEndpointBuilder.java |  388 +++
 .../endpoint/HazelcastAtomicnumberEndpoint.java    |  162 --
 .../HazelcastAtomicnumberEndpointBuilder.java      |  258 ++
 .../model/endpoint/HazelcastInstanceEndpoint.java  |  228 --
 .../endpoint/HazelcastInstanceEndpointBuilder.java |  389 +++
 .../model/endpoint/HazelcastListEndpoint.java      |  240 --
 .../endpoint/HazelcastListEndpointBuilder.java     |  398 +++
 .../camel/model/endpoint/HazelcastMapEndpoint.java |  240 --
 .../endpoint/HazelcastMapEndpointBuilder.java      |  398 +++
 .../model/endpoint/HazelcastMultimapEndpoint.java  |  241 --
 .../endpoint/HazelcastMultimapEndpointBuilder.java |  403 +++
 .../model/endpoint/HazelcastQueueEndpoint.java     |  240 --
 .../endpoint/HazelcastQueueEndpointBuilder.java    |  399 +++
 .../endpoint/HazelcastReplicatedmapEndpoint.java   |  243 --
 .../HazelcastReplicatedmapEndpointBuilder.java     |  403 +++
 .../endpoint/HazelcastRingbufferEndpoint.java      |  161 --
 .../HazelcastRingbufferEndpointBuilder.java        |  258 ++
 .../model/endpoint/HazelcastSedaEndpoint.java      |  240 --
 .../endpoint/HazelcastSedaEndpointBuilder.java     |  398 +++
 .../camel/model/endpoint/HazelcastSetEndpoint.java |  240 --
 .../endpoint/HazelcastSetEndpointBuilder.java      |  398 +++
 .../model/endpoint/HazelcastTopicEndpoint.java     |  240 --
 .../endpoint/HazelcastTopicEndpointBuilder.java    |  399 +++
 .../apache/camel/model/endpoint/HdfsEndpoint.java  |  470 ----
 .../camel/model/endpoint/HdfsEndpointBuilder.java  |  826 ++++++
 .../camel/model/endpoint/HipchatEndpoint.java      |  316 ---
 .../model/endpoint/HipchatEndpointBuilder.java     |  547 ++++
 .../apache/camel/model/endpoint/HttpEndpoint.java  |  529 ----
 .../camel/model/endpoint/HttpEndpointBuilder.java  |  925 +++++++
 .../apache/camel/model/endpoint/IAMEndpoint.java   |  135 -
 .../camel/model/endpoint/IAMEndpointBuilder.java   |  181 ++
 .../apache/camel/model/endpoint/IOTAEndpoint.java  |  169 --
 .../camel/model/endpoint/IOTAEndpointBuilder.java  |  254 ++
 ...{IPFSEndpoint.java => IPFSEndpointBuilder.java} |   59 +-
 .../camel/model/endpoint/IgniteCacheEndpoint.java  |  241 --
 .../model/endpoint/IgniteCacheEndpointBuilder.java |  413 +++
 .../model/endpoint/IgniteComputeEndpoint.java      |  151 --
 .../endpoint/IgniteComputeEndpointBuilder.java     |  225 ++
 .../camel/model/endpoint/IgniteEventsEndpoint.java |  151 --
 .../endpoint/IgniteEventsEndpointBuilder.java      |  252 ++
 .../camel/model/endpoint/IgniteIdGenEndpoint.java  |  124 -
 .../model/endpoint/IgniteIdGenEndpointBuilder.java |  195 ++
 .../model/endpoint/IgniteMessagingEndpoint.java    |  176 --
 .../endpoint/IgniteMessagingEndpointBuilder.java   |  284 +++
 .../camel/model/endpoint/IgniteQueueEndpoint.java  |  136 -
 .../model/endpoint/IgniteQueueEndpointBuilder.java |  220 ++
 .../camel/model/endpoint/IgniteSetEndpoint.java    |  120 -
 .../model/endpoint/IgniteSetEndpointBuilder.java   |  188 ++
 .../camel/model/endpoint/InfinispanEndpoint.java   |  271 --
 .../model/endpoint/InfinispanEndpointBuilder.java  |  457 ++++
 ...bEndpoint.java => InfluxDbEndpointBuilder.java} |   66 +-
 .../apache/camel/model/endpoint/IrcEndpoint.java   |  294 ---
 .../camel/model/endpoint/IrcEndpointBuilder.java   |  505 ++++
 .../camel/model/endpoint/IronMQEndpoint.java       |  365 ---
 .../model/endpoint/IronMQEndpointBuilder.java      |  657 +++++
 .../apache/camel/model/endpoint/JBPMEndpoint.java  |  335 ---
 .../camel/model/endpoint/JBPMEndpointBuilder.java  |  549 ++++
 .../camel/model/endpoint/JCacheEndpoint.java       |  278 --
 .../model/endpoint/JCacheEndpointBuilder.java      |  464 ++++
 .../camel/model/endpoint/JGroupsEndpoint.java      |  144 --
 .../model/endpoint/JGroupsEndpointBuilder.java     |  213 ++
 .../camel/model/endpoint/JGroupsRaftEndpoint.java  |  137 -
 .../model/endpoint/JGroupsRaftEndpointBuilder.java |  206 ++
 .../apache/camel/model/endpoint/JMXEndpoint.java   |  342 ---
 .../camel/model/endpoint/JMXEndpointBuilder.java   |  577 +++++
 .../model/endpoint/JSR356WebSocketEndpoint.java    |  144 --
 .../endpoint/JSR356WebSocketEndpointBuilder.java   |  210 ++
 .../camel/model/endpoint/JcloudsEndpoint.java      |  225 --
 .../model/endpoint/JcloudsEndpointBuilder.java     |  296 +++
 .../apache/camel/model/endpoint/JcrEndpoint.java   |  220 --
 .../camel/model/endpoint/JcrEndpointBuilder.java   |  328 +++
 .../apache/camel/model/endpoint/JdbcEndpoint.java  |  205 --
 .../camel/model/endpoint/JdbcEndpointBuilder.java  |  343 +++
 .../camel/model/endpoint/JettyHttpEndpoint9.java   |   12 +-
 .../model/endpoint/JettyHttpEndpointBuilder9.java  | 1177 +++++++++
 ...{JingEndpoint.java => JingEndpointBuilder.java} |   61 +-
 ...{JiraEndpoint.java => JiraEndpointBuilder.java} |  175 +-
 .../apache/camel/model/endpoint/JmsEndpoint.java   | 1128 --------
 .../camel/model/endpoint/JmsEndpointBuilder.java   | 2070 +++++++++++++++
 ...{JoltEndpoint.java => JoltEndpointBuilder.java} |   97 +-
 .../apache/camel/model/endpoint/JooqEndpoint.java  |  298 ---
 .../camel/model/endpoint/JooqEndpointBuilder.java  |  536 ++++
 .../apache/camel/model/endpoint/JpaEndpoint.java   |  491 ----
 .../camel/model/endpoint/JpaEndpointBuilder.java   |  907 +++++++
 ...oint.java => JsonValidatorEndpointBuilder.java} |  107 +-
 .../apache/camel/model/endpoint/Jt400Endpoint.java |  398 ---
 .../camel/model/endpoint/Jt400EndpointBuilder.java |  706 +++++
 .../apache/camel/model/endpoint/KMSEndpoint.java   |  134 -
 .../camel/model/endpoint/KMSEndpointBuilder.java   |  180 ++
 .../apache/camel/model/endpoint/KafkaEndpoint.java | 1076 --------
 .../camel/model/endpoint/KafkaEndpointBuilder.java | 1767 +++++++++++++
 ...eEndpoint.java => KeystoneEndpointBuilder.java} |   76 +-
 .../camel/model/endpoint/KinesisEndpoint.java      |  377 ---
 .../model/endpoint/KinesisEndpointBuilder.java     |  645 +++++
 ...nt.java => KinesisFirehoseEndpointBuilder.java} |   80 +-
 ...va => KubernetesConfigMapsEndpointBuilder.java} |  129 +-
 .../endpoint/KubernetesDeploymentsEndpoint.java    |  311 ---
 .../KubernetesDeploymentsEndpointBuilder.java      |  410 +++
 .../model/endpoint/KubernetesHPAEndpoint.java      |  309 ---
 .../endpoint/KubernetesHPAEndpointBuilder.java     |  407 +++
 .../model/endpoint/KubernetesJobEndpoint.java      |  309 ---
 .../endpoint/KubernetesJobEndpointBuilder.java     |  407 +++
 .../endpoint/KubernetesNamespacesEndpoint.java     |  311 ---
 .../KubernetesNamespacesEndpointBuilder.java       |  410 +++
 .../model/endpoint/KubernetesNodesEndpoint.java    |  309 ---
 .../endpoint/KubernetesNodesEndpointBuilder.java   |  408 +++
 ...tesPersistentVolumesClaimsEndpointBuilder.java} |  129 +-
 ...ubernetesPersistentVolumesEndpointBuilder.java} |  130 +-
 .../model/endpoint/KubernetesPodsEndpoint.java     |  309 ---
 .../endpoint/KubernetesPodsEndpointBuilder.java    |  407 +++
 .../KubernetesReplicationControllersEndpoint.java  |  316 ---
 ...netesReplicationControllersEndpointBuilder.java |  417 +++
 ...> KubernetesResourcesQuotaEndpointBuilder.java} |  130 +-
 ....java => KubernetesSecretsEndpointBuilder.java} |  130 +-
 ... KubernetesServiceAccountsEndpointBuilder.java} |  130 +-
 .../model/endpoint/KubernetesServicesEndpoint.java |  309 ---
 .../KubernetesServicesEndpointBuilder.java         |  410 +++
 ...bdaEndpoint.java => LambdaEndpointBuilder.java} |   99 +-
 ...eEndpoint.java => LanguageEndpointBuilder.java} |   99 +-
 ...{LdapEndpoint.java => LdapEndpointBuilder.java} |   71 +-
 ...{LdifEndpoint.java => LdifEndpointBuilder.java} |   48 +-
 ...nEndpoint.java => LinkedInEndpointBuilder.java} |  219 +-
 .../apache/camel/model/endpoint/LogEndpoint.java   |  284 ---
 .../camel/model/endpoint/LogEndpointBuilder.java   |  512 ++++
 .../camel/model/endpoint/LuceneEndpoint.java       |  127 -
 .../model/endpoint/LuceneEndpointBuilder.java      |  195 ++
 .../camel/model/endpoint/LumberjackEndpoint.java   |  130 -
 .../model/endpoint/LumberjackEndpointBuilder.java  |  203 ++
 .../apache/camel/model/endpoint/MQEndpoint.java    |  135 -
 .../camel/model/endpoint/MQEndpointBuilder.java    |  184 ++
 .../apache/camel/model/endpoint/MQTTEndpoint.java  |  449 ----
 .../camel/model/endpoint/MQTTEndpointBuilder.java  |  728 ++++++
 .../apache/camel/model/endpoint/MSKEndpoint.java   |  134 -
 .../camel/model/endpoint/MSKEndpointBuilder.java   |  181 ++
 .../apache/camel/model/endpoint/MailEndpoint.java  |  688 -----
 .../camel/model/endpoint/MailEndpointBuilder.java  | 1250 +++++++++
 .../camel/model/endpoint/MasterEndpoint.java       |  120 -
 .../model/endpoint/MasterEndpointBuilder.java      |  178 ++
 .../camel/model/endpoint/MetricsEndpoint.java      |  140 -
 .../model/endpoint/MetricsEndpointBuilder.java     |  219 ++
 ...ndpoint.java => MicrometerEndpointBuilder.java} |   82 +-
 .../camel/model/endpoint/MiloClientEndpoint.java   |  301 ---
 .../model/endpoint/MiloClientEndpointBuilder.java  |  467 ++++
 .../camel/model/endpoint/MiloServerEndpoint.java   |  125 -
 .../model/endpoint/MiloServerEndpointBuilder.java  |  182 ++
 .../apache/camel/model/endpoint/Mina2Endpoint.java |  350 ---
 .../camel/model/endpoint/Mina2EndpointBuilder.java |  630 +++++
 .../apache/camel/model/endpoint/MllpEndpoint.java  |  341 ---
 .../camel/model/endpoint/MllpEndpointBuilder.java  |  616 +++++
 .../apache/camel/model/endpoint/MockEndpoint.java  |  194 --
 .../camel/model/endpoint/MockEndpointBuilder.java  |  338 +++
 ...DbEndpoint.java => MongoDbEndpointBuilder.java} |  229 +-
 .../apache/camel/model/endpoint/MsvEndpoint.java   |  160 --
 .../camel/model/endpoint/MsvEndpointBuilder.java   |  247 ++
 ...eEndpoint.java => MustacheEndpointBuilder.java} |   65 +-
 .../apache/camel/model/endpoint/MvelEndpoint.java  |   97 -
 ...ChunkEndpoint.java => MvelEndpointBuilder.java} |   89 +-
 ...dpoint.java => MyBatisBeanEndpointBuilder.java} |   82 +-
 .../camel/model/endpoint/MyBatisEndpoint.java      |  382 ---
 .../model/endpoint/MyBatisEndpointBuilder.java     |  670 +++++
 .../camel/model/endpoint/NagiosEndpoint.java       |  141 -
 .../model/endpoint/NagiosEndpointBuilder.java      |  214 ++
 .../apache/camel/model/endpoint/NatsEndpoint.java  |  290 ---
 .../camel/model/endpoint/NatsEndpointBuilder.java  |  491 ++++
 ...Endpoint.java => NetWeaverEndpointBuilder.java} |   87 +-
 .../apache/camel/model/endpoint/NettyEndpoint.java |  793 ------
 .../camel/model/endpoint/NettyEndpointBuilder.java | 1490 +++++++++++
 .../camel/model/endpoint/NettyHttpEndpoint.java    |  894 -------
 .../model/endpoint/NettyHttpEndpointBuilder.java   | 1696 ++++++++++++
 ...onEndpoint.java => NeutronEndpointBuilder.java} |   79 +-
 ...{NovaEndpoint.java => NovaEndpointBuilder.java} |   79 +-
 .../apache/camel/model/endpoint/NsqEndpoint.java   |  215 --
 .../camel/model/endpoint/NsqEndpointBuilder.java   |  348 +++
 .../camel/model/endpoint/Olingo2Endpoint.java      |  236 --
 .../model/endpoint/Olingo2EndpointBuilder.java     |  383 +++
 .../camel/model/endpoint/Olingo4Endpoint.java      |  236 --
 .../model/endpoint/Olingo4EndpointBuilder.java     |  383 +++
 ...a => OpenshiftBuildConfigsEndpointBuilder.java} |  129 +-
 ...nt.java => OpenshiftBuildsEndpointBuilder.java} |  129 +-
 .../camel/model/endpoint/OptaPlannerEndpoint.java  |  150 --
 .../model/endpoint/OptaPlannerEndpointBuilder.java |  223 ++
 .../apache/camel/model/endpoint/PahoEndpoint.java  |  212 --
 .../camel/model/endpoint/PahoEndpointBuilder.java  |  323 +++
 .../camel/model/endpoint/PaxLoggingEndpoint.java   |  115 -
 .../model/endpoint/PaxLoggingEndpointBuilder.java  |  172 ++
 .../apache/camel/model/endpoint/PdfEndpoint.java   |  151 --
 .../camel/model/endpoint/PdfEndpointBuilder.java   |  252 ++
 .../camel/model/endpoint/PgEventEndpoint.java      |  170 --
 .../model/endpoint/PgEventEndpointBuilder.java     |  248 ++
 ...erEndpoint.java => PrinterEndpointBuilder.java} |  110 +-
 .../camel/model/endpoint/PropertiesEndpoint.java   |  146 --
 .../model/endpoint/PropertiesEndpointBuilder.java  |  223 ++
 ...NubEndpoint.java => PubNubEndpointBuilder.java} |  173 +-
 .../camel/model/endpoint/PulsarEndpoint.java       |  184 --
 .../model/endpoint/PulsarEndpointBuilder.java      |  271 ++
 .../camel/model/endpoint/QuartzEndpoint.java       |  251 --
 .../model/endpoint/QuartzEndpointBuilder.java      |  445 ++++
 .../camel/model/endpoint/QueueServiceEndpoint.java |  178 --
 .../endpoint/QueueServiceEndpointBuilder.java      |  284 +++
 .../camel/model/endpoint/QuickfixjEndpoint.java    |  148 --
 .../model/endpoint/QuickfixjEndpointBuilder.java   |  227 ++
 .../camel/model/endpoint/RabbitMQEndpoint.java     |  593 -----
 .../model/endpoint/RabbitMQEndpointBuilder.java    | 1047 ++++++++
 .../model/endpoint/ReactiveStreamsEndpoint.java    |  194 --
 .../endpoint/ReactiveStreamsEndpointBuilder.java   |  320 +++
 .../apache/camel/model/endpoint/RedisEndpoint.java |  190 --
 .../camel/model/endpoint/RedisEndpointBuilder.java |  302 +++
 .../apache/camel/model/endpoint/RefEndpoint.java   |  125 -
 .../camel/model/endpoint/RefEndpointBuilder.java   |  181 ++
 ...piEndpoint.java => RestApiEndpointBuilder.java} |  111 +-
 ...{RestEndpoint.java => RestEndpointBuilder.java} |  174 +-
 ...dpoint.java => RestSwaggerEndpointBuilder.java} |  110 +-
 .../camel/model/endpoint/RestletEndpoint.java      |  284 ---
 .../model/endpoint/RestletEndpointBuilder.java     |  501 ++++
 .../apache/camel/model/endpoint/RssEndpoint.java   |  326 ---
 .../camel/model/endpoint/RssEndpointBuilder.java   |  591 +++++
 .../apache/camel/model/endpoint/S3Endpoint.java    |  562 ----
 .../camel/model/endpoint/S3EndpointBuilder.java    |  985 +++++++
 .../apache/camel/model/endpoint/SWFEndpoint.java   |  342 ---
 .../camel/model/endpoint/SWFEndpointBuilder.java   |  503 ++++
 ...{SagaEndpoint.java => SagaEndpointBuilder.java} |   63 +-
 .../camel/model/endpoint/SalesforceEndpoint.java   |  482 ----
 .../model/endpoint/SalesforceEndpointBuilder.java  |  770 ++++++
 .../camel/model/endpoint/SchedulerEndpoint.java    |  269 --
 .../model/endpoint/SchedulerEndpointBuilder.java   |  493 ++++
 .../camel/model/endpoint/SchematronEndpoint.java   |  101 -
 .../model/endpoint/SchematronEndpointBuilder.java  |  149 ++
 .../apache/camel/model/endpoint/ScpEndpoint.java   |  313 ---
 .../camel/model/endpoint/ScpEndpointBuilder.java   |  492 ++++
 .../{SdbEndpoint.java => SdbEndpointBuilder.java}  |  111 +-
 .../apache/camel/model/endpoint/SedaEndpoint.java  |  258 --
 .../camel/model/endpoint/SedaEndpointBuilder.java  |  454 ++++
 .../camel/model/endpoint/ServerEndpoint.java       |  265 --
 .../model/endpoint/ServerEndpointBuilder.java      |  463 ++++
 .../camel/model/endpoint/ServiceEndpoint.java      |  113 -
 .../model/endpoint/ServiceEndpointBuilder.java     |  170 ++
 .../camel/model/endpoint/ServiceNowEndpoint.java   |  441 ----
 .../model/endpoint/ServiceNowEndpointBuilder.java  |  700 +++++
 .../camel/model/endpoint/ServletEndpoint.java      |  296 ---
 .../model/endpoint/ServletEndpointBuilder.java     |  526 ++++
 .../{SesEndpoint.java => SesEndpointBuilder.java}  |  106 +-
 .../apache/camel/model/endpoint/SftpEndpoint.java  | 1399 ----------
 .../camel/model/endpoint/SftpEndpointBuilder.java  | 2556 +++++++++++++++++++
 .../apache/camel/model/endpoint/SipEndpoint.java   |  469 ----
 .../camel/model/endpoint/SipEndpointBuilder.java   |  782 ++++++
 .../apache/camel/model/endpoint/Sjms2Endpoint.java |  443 ----
 .../camel/model/endpoint/Sjms2EndpointBuilder.java |  788 ++++++
 .../camel/model/endpoint/SjmsBatchEndpoint.java    |  323 ---
 .../model/endpoint/SjmsBatchEndpointBuilder.java   |  598 +++++
 .../apache/camel/model/endpoint/SjmsEndpoint.java  |  420 ---
 .../camel/model/endpoint/SjmsEndpointBuilder.java  |  747 ++++++
 .../apache/camel/model/endpoint/SlackEndpoint.java |  326 ---
 .../camel/model/endpoint/SlackEndpointBuilder.java |  542 ++++
 .../apache/camel/model/endpoint/SmppEndpoint.java  |  471 ----
 .../camel/model/endpoint/SmppEndpointBuilder.java  |  795 ++++++
 .../apache/camel/model/endpoint/SnmpEndpoint.java  |  419 ---
 .../camel/model/endpoint/SnmpEndpointBuilder.java  |  709 ++++++
 .../{SnsEndpoint.java => SnsEndpointBuilder.java}  |  145 +-
 .../apache/camel/model/endpoint/SolrEndpoint.java  |  175 --
 .../camel/model/endpoint/SolrEndpointBuilder.java  |  272 ++
 .../camel/model/endpoint/SoroushBotEndpoint.java   |  292 ---
 .../model/endpoint/SoroushBotEndpointBuilder.java  |  512 ++++
 .../apache/camel/model/endpoint/SparkEndpoint.java |  196 --
 .../camel/model/endpoint/SparkEndpointBuilder.java |  327 +++
 .../camel/model/endpoint/SplunkEndpoint.java       |  448 ----
 .../model/endpoint/SplunkEndpointBuilder.java      |  738 ++++++
 .../camel/model/endpoint/SpringBatchEndpoint.java  |  102 -
 .../model/endpoint/SpringBatchEndpointBuilder.java |  151 ++
 .../model/endpoint/SpringIntegrationEndpoint.java  |  157 --
 .../endpoint/SpringIntegrationEndpointBuilder.java |  228 ++
 ...ndpoint.java => SpringLdapEndpointBuilder.java} |   62 +-
 .../model/endpoint/SpringWebserviceEndpoint.java   |  354 ---
 .../endpoint/SpringWebserviceEndpointBuilder.java  |  624 +++++
 .../apache/camel/model/endpoint/SqlEndpoint.java   |  525 ----
 .../camel/model/endpoint/SqlEndpointBuilder.java   |  936 +++++++
 ...Endpoint.java => SqlStoredEndpointBuilder.java} |  105 +-
 .../apache/camel/model/endpoint/SqsEndpoint.java   |  579 -----
 .../camel/model/endpoint/SqsEndpointBuilder.java   | 1017 ++++++++
 .../apache/camel/model/endpoint/SshEndpoint.java   |  387 ---
 .../camel/model/endpoint/SshEndpointBuilder.java   |  646 +++++
 ...{StAXEndpoint.java => StAXEndpointBuilder.java} |   48 +-
 .../apache/camel/model/endpoint/StompEndpoint.java |  171 --
 .../camel/model/endpoint/StompEndpointBuilder.java |  248 ++
 .../camel/model/endpoint/StreamEndpoint.java       |  293 ---
 .../model/endpoint/StreamEndpointBuilder.java      |  494 ++++
 ...int.java => StringTemplateEndpointBuilder.java} |   79 +-
 .../apache/camel/model/endpoint/StubEndpoint.java  |  258 --
 .../camel/model/endpoint/StubEndpointBuilder.java  |  454 ++++
 ...wiftEndpoint.java => SwiftEndpointBuilder.java} |   79 +-
 .../camel/model/endpoint/TelegramEndpoint.java     |  328 ---
 .../model/endpoint/TelegramEndpointBuilder.java    |  569 +++++
 .../camel/model/endpoint/ThriftEndpoint.java       |  216 --
 .../model/endpoint/ThriftEndpointBuilder.java      |  349 +++
 ...{TikaEndpoint.java => TikaEndpointBuilder.java} |   87 +-
 .../apache/camel/model/endpoint/TimerEndpoint.java |  185 --
 .../camel/model/endpoint/TimerEndpointBuilder.java |  315 +++
 ...lioEndpoint.java => TwilioEndpointBuilder.java} |  130 +-
 .../endpoint/TwitterDirectMessageEndpoint.java     |  484 ----
 .../TwitterDirectMessageEndpointBuilder.java       |  824 ++++++
 .../model/endpoint/TwitterSearchEndpoint.java      |  479 ----
 .../endpoint/TwitterSearchEndpointBuilder.java     |  808 ++++++
 .../model/endpoint/TwitterStreamingEndpoint.java   |  479 ----
 .../endpoint/TwitterStreamingEndpointBuilder.java  |  827 ++++++
 .../model/endpoint/TwitterTimelineEndpoint.java    |  492 ----
 .../endpoint/TwitterTimelineEndpointBuilder.java   |  836 ++++++
 .../camel/model/endpoint/UndertowEndpoint.java     |  290 ---
 .../model/endpoint/UndertowEndpointBuilder.java    |  521 ++++
 .../camel/model/endpoint/ValidatorEndpoint.java    |  160 --
 .../model/endpoint/ValidatorEndpointBuilder.java   |  247 ++
 ...yEndpoint.java => VelocityEndpointBuilder.java} |   74 +-
 .../apache/camel/model/endpoint/VertxEndpoint.java |  133 -
 .../camel/model/endpoint/VertxEndpointBuilder.java |  200 ++
 .../apache/camel/model/endpoint/VmEndpoint.java    |  258 --
 .../camel/model/endpoint/VmEndpointBuilder.java    |  452 ++++
 .../camel/model/endpoint/WeatherEndpoint.java      |  510 ----
 .../model/endpoint/WeatherEndpointBuilder.java     |  812 ++++++
 .../apache/camel/model/endpoint/Web3jEndpoint.java |  398 ---
 .../camel/model/endpoint/Web3jEndpointBuilder.java |  610 +++++
 ...okEndpoint.java => WebhookEndpointBuilder.java} |  125 +-
 .../camel/model/endpoint/WebsocketEndpoint.java    |  269 --
 .../model/endpoint/WebsocketEndpointBuilder.java   |  435 ++++
 .../camel/model/endpoint/WordpressEndpoint.java    |  198 --
 .../model/endpoint/WordpressEndpointBuilder.java   |  293 +++
 .../apache/camel/model/endpoint/WsEndpoint.java    |  229 --
 .../camel/model/endpoint/WsEndpointBuilder.java    |  402 +++
 .../camel/model/endpoint/XChangeEndpoint.java      |  110 -
 .../model/endpoint/XChangeEndpointBuilder.java     |  170 ++
 .../camel/model/endpoint/XQueryEndpoint.java       |  373 ---
 .../model/endpoint/XQueryEndpointBuilder.java      |  687 +++++
 ...point.java => XmlSignatureEndpointBuilder.java} |  403 ++-
 .../apache/camel/model/endpoint/XmppEndpoint.java  |  269 --
 .../camel/model/endpoint/XmppEndpointBuilder.java  |  418 +++
 .../apache/camel/model/endpoint/XsltEndpoint.java  |  231 --
 .../camel/model/endpoint/XsltEndpointBuilder.java  |  398 +++
 .../camel/model/endpoint/YammerEndpoint.java       |  354 ---
 .../model/endpoint/YammerEndpointBuilder.java      |  621 +++++
 .../camel/model/endpoint/ZendeskEndpoint.java      |  167 --
 .../model/endpoint/ZendeskEndpointBuilder.java     |  227 ++
 .../camel/model/endpoint/ZooKeeperEndpoint.java    |  198 --
 .../model/endpoint/ZooKeeperEndpointBuilder.java   |  314 +++
 .../model/endpoint/ZooKeeperMasterEndpoint.java    |  123 -
 .../endpoint/ZooKeeperMasterEndpointBuilder.java   |  181 ++
 .../org/apache/camel/reifier/RouteReifier.java     |    4 +-
 .../java/org/apache/camel/reifier/SendReifier.java |    6 +-
 .../component/file/FileAbsolutePathIssueTest.java  |    6 +-
 .../file/FileBatchConsumerMemoryLeakTest.java      |   10 +-
 .../camel/maven/packaging/EndpointDslMojo.java     |   53 +-
 539 files changed, 119524 insertions(+), 68965 deletions(-)
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/AbstractEndpointBuilder.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/EndpointConsumerBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/EndpointDefinition.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/EndpointProducerBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{AS2Endpoint.java => AS2EndpointBuilder.java} (52%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ActiveMQEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ActiveMQEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{BeanEndpoint.java => BeanEndpointBuilder.java} (52%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{BoxEndpoint.java => BoxEndpointBuilder.java} (50%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{BraintreeEndpoint.java => BraintreeEndpointBuilder.java} (50%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/BrowseEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/BrowseEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{CMEndpoint.java => CMEndpointBuilder.java} (54%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMISEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMISEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{ChatScriptEndpoint.java => ChatScriptEndpointBuilder.java} (55%)
 copy core/camel-core/src/main/java/org/apache/camel/model/endpoint/{ChunkEndpoint.java => ChunkEndpointBuilder.java} (59%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{CinderEndpoint.java => CinderEndpointBuilder.java} (56%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{ClassEndpoint.java => ClassEndpointBuilder.java} (52%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClientEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClientEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CoAPEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CoAPEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CometdEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CometdEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ConsulEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ConsulEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{ControlBusEndpoint.java => ControlBusEndpointBuilder.java} (55%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CordaEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CordaEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchDbEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchDbEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchbaseEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchbaseEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CryptoCmsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CryptoCmsEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{CwEndpoint.java => CwEndpointBuilder.java} (52%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfRsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfRsEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{DataFormatEndpoint.java => DataFormatEndpointBuilder.java} (57%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetTestEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetTestEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{DdbEndpoint.java => DdbEndpointBuilder.java} (52%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbStreamEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbStreamEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DigitalOceanEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DigitalOceanEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{DigitalSignatureEndpoint.java => DigitalSignatureEndpointBuilder.java} (52%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectVmEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectVmEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorVmEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorVmEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{DnsEndpoint.java => DnsEndpointBuilder.java} (53%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DockerEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DockerEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{DozerEndpoint.java => DozerEndpointBuilder.java} (61%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{DrillEndpoint.java => DrillEndpointBuilder.java} (54%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DropboxEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/DropboxEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/EC2Endpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/EC2EndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ECSEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ECSEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/EKSEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/EKSEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/EhcacheEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/EhcacheEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{EjbEndpoint.java => EjbEndpointBuilder.java} (52%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ElasticsearchEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ElasticsearchEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ElsqlEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ElsqlEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/EtcdEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/EtcdEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/EventAdminEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/EventAdminEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/EventEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/EventEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{ExecEndpoint.java => ExecEndpointBuilder.java} (53%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/FacebookEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/FacebookEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/FhirEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/FhirEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/FileEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/FileEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/FlatpackEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/FlatpackEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/FlinkEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/FlinkEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{FopEndpoint.java => FopEndpointBuilder.java} (53%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{FreemarkerEndpoint.java => FreemarkerEndpointBuilder.java} (54%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/FtpEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/FtpEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/FtpsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/FtpsEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{GangliaEndpoint.java => GangliaEndpointBuilder.java} (50%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{GeoCoderEndpoint.java => GeoCoderEndpointBuilder.java} (61%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GitEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GitEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GitHubEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GitHubEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{GlanceEndpoint.java => GlanceEndpointBuilder.java} (56%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{GoogleBigQueryEndpoint.java => GoogleBigQueryEndpointBuilder.java} (53%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{GoogleBigQuerySQLEndpoint.java => GoogleBigQuerySQLEndpointBuilder.java} (51%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{GoogleCalendarEndpoint.java => GoogleCalendarEndpointBuilder.java} (55%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleCalendarStreamEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleCalendarStreamEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleDriveEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleDriveEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{GoogleMailEndpoint.java => GoogleMailEndpointBuilder.java} (51%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleMailStreamEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleMailStreamEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GooglePubsubEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GooglePubsubEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{GoogleSheetsEndpoint.java => GoogleSheetsEndpointBuilder.java} (51%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleSheetsStreamEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleSheetsStreamEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoraEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoraEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{GrapeEndpoint.java => GrapeEndpointBuilder.java} (57%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GridFsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GridFsEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GrpcEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GrpcEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GuavaEventBusEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/GuavaEventBusEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HBaseEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HBaseEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastAtomicnumberEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastAtomicnumberEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastInstanceEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastInstanceEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastListEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastListEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastMapEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastMapEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastMultimapEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastMultimapEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastQueueEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastQueueEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastReplicatedmapEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastReplicatedmapEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastRingbufferEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastRingbufferEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastSedaEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastSedaEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastSetEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastSetEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastTopicEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HazelcastTopicEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HdfsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HdfsEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HipchatEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HipchatEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HttpEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/HttpEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IAMEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IAMEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IOTAEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IOTAEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{IPFSEndpoint.java => IPFSEndpointBuilder.java} (53%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteCacheEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteCacheEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteComputeEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteComputeEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteEventsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteEventsEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteIdGenEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteIdGenEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteMessagingEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteMessagingEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteQueueEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteQueueEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteSetEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteSetEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/InfinispanEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/InfinispanEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{InfluxDbEndpoint.java => InfluxDbEndpointBuilder.java} (60%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IrcEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IrcEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IronMQEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/IronMQEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JBPMEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JBPMEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JCacheEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JCacheEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JGroupsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JGroupsEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JGroupsRaftEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JGroupsRaftEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JMXEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JMXEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JSR356WebSocketEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JSR356WebSocketEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JcloudsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JcloudsEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JcrEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JcrEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JdbcEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JdbcEndpointBuilder.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JettyHttpEndpointBuilder9.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{JingEndpoint.java => JingEndpointBuilder.java} (54%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{JiraEndpoint.java => JiraEndpointBuilder.java} (51%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JmsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JmsEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{JoltEndpoint.java => JoltEndpointBuilder.java} (52%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JooqEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JooqEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JpaEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/JpaEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{JsonValidatorEndpoint.java => JsonValidatorEndpointBuilder.java} (50%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/Jt400Endpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/Jt400EndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KMSEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KMSEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KafkaEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KafkaEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{KeystoneEndpoint.java => KeystoneEndpointBuilder.java} (55%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KinesisEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KinesisEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{KinesisFirehoseEndpoint.java => KinesisFirehoseEndpointBuilder.java} (54%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{KubernetesConfigMapsEndpoint.java => KubernetesConfigMapsEndpointBuilder.java} (57%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesDeploymentsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesDeploymentsEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesHPAEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesHPAEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesJobEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesJobEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesNamespacesEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesNamespacesEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesNodesEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesNodesEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{KubernetesPersistentVolumesClaimsEndpoint.java => KubernetesPersistentVolumesClaimsEndpointBuilder.java} (57%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{KubernetesPersistentVolumesEndpoint.java => KubernetesPersistentVolumesEndpointBuilder.java} (57%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesPodsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesPodsEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesReplicationControllersEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesReplicationControllersEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{KubernetesResourcesQuotaEndpoint.java => KubernetesResourcesQuotaEndpointBuilder.java} (57%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{KubernetesSecretsEndpoint.java => KubernetesSecretsEndpointBuilder.java} (57%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{KubernetesServiceAccountsEndpoint.java => KubernetesServiceAccountsEndpointBuilder.java} (57%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesServicesEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/KubernetesServicesEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{LambdaEndpoint.java => LambdaEndpointBuilder.java} (52%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{LanguageEndpoint.java => LanguageEndpointBuilder.java} (52%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{LdapEndpoint.java => LdapEndpointBuilder.java} (59%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{LdifEndpoint.java => LdifEndpointBuilder.java} (59%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{LinkedInEndpoint.java => LinkedInEndpointBuilder.java} (50%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/LogEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/LogEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/LuceneEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/LuceneEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/LumberjackEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/LumberjackEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MQEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MQEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MQTTEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MQTTEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MSKEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MSKEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MailEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MailEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MasterEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MasterEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MetricsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MetricsEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{MicrometerEndpoint.java => MicrometerEndpointBuilder.java} (55%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MiloClientEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MiloClientEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MiloServerEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MiloServerEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/Mina2Endpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/Mina2EndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MllpEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MllpEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MockEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MockEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{MongoDbEndpoint.java => MongoDbEndpointBuilder.java} (52%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MsvEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MsvEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{MustacheEndpoint.java => MustacheEndpointBuilder.java} (61%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MvelEndpoint.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{ChunkEndpoint.java => MvelEndpointBuilder.java} (60%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{MyBatisBeanEndpoint.java => MyBatisBeanEndpointBuilder.java} (56%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MyBatisEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/MyBatisEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/NagiosEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/NagiosEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/NatsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/NatsEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{NetWeaverEndpoint.java => NetWeaverEndpointBuilder.java} (51%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/NettyEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/NettyEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/NettyHttpEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/NettyHttpEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{NeutronEndpoint.java => NeutronEndpointBuilder.java} (56%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{NovaEndpoint.java => NovaEndpointBuilder.java} (56%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/NsqEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/NsqEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/Olingo2Endpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/Olingo2EndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/Olingo4Endpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/Olingo4EndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{OpenshiftBuildConfigsEndpoint.java => OpenshiftBuildConfigsEndpointBuilder.java} (57%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{OpenshiftBuildsEndpoint.java => OpenshiftBuildsEndpointBuilder.java} (57%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/OptaPlannerEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/OptaPlannerEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/PahoEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/PahoEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/PaxLoggingEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/PaxLoggingEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/PdfEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/PdfEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/PgEventEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/PgEventEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{PrinterEndpoint.java => PrinterEndpointBuilder.java} (56%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/PropertiesEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/PropertiesEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{PubNubEndpoint.java => PubNubEndpointBuilder.java} (50%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/PulsarEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/PulsarEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/QuartzEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/QuartzEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/QueueServiceEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/QueueServiceEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/QuickfixjEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/QuickfixjEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/RabbitMQEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/RabbitMQEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ReactiveStreamsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ReactiveStreamsEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/RedisEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/RedisEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/RefEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/RefEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{RestApiEndpoint.java => RestApiEndpointBuilder.java} (51%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{RestEndpoint.java => RestEndpointBuilder.java} (51%)
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{RestSwaggerEndpoint.java => RestSwaggerEndpointBuilder.java} (55%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/RestletEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/RestletEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/RssEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/RssEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/S3Endpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/S3EndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SWFEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SWFEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{SagaEndpoint.java => SagaEndpointBuilder.java} (50%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SalesforceEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SalesforceEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SchedulerEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SchedulerEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SchematronEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SchematronEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ScpEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ScpEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{SdbEndpoint.java => SdbEndpointBuilder.java} (53%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SedaEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SedaEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ServerEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ServerEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ServiceEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ServiceEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ServiceNowEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ServiceNowEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ServletEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ServletEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{SesEndpoint.java => SesEndpointBuilder.java} (54%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SftpEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SftpEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SipEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SipEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/Sjms2Endpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/Sjms2EndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SjmsBatchEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SjmsBatchEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SjmsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SjmsEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SlackEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SlackEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SmppEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SmppEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SnmpEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SnmpEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{SnsEndpoint.java => SnsEndpointBuilder.java} (53%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SolrEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SolrEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SoroushBotEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SoroushBotEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SparkEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SparkEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SplunkEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SplunkEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SpringBatchEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SpringBatchEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SpringIntegrationEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SpringIntegrationEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{SpringLdapEndpoint.java => SpringLdapEndpointBuilder.java} (55%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SpringWebserviceEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SpringWebserviceEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SqlEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SqlEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{SqlStoredEndpoint.java => SqlStoredEndpointBuilder.java} (51%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SqsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SqsEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SshEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/SshEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{StAXEndpoint.java => StAXEndpointBuilder.java} (58%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/StompEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/StompEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/StreamEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/StreamEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{StringTemplateEndpoint.java => StringTemplateEndpointBuilder.java} (52%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/StubEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/StubEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{SwiftEndpoint.java => SwiftEndpointBuilder.java} (56%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/TelegramEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/TelegramEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ThriftEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ThriftEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{TikaEndpoint.java => TikaEndpointBuilder.java} (53%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/TimerEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/TimerEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{TwilioEndpoint.java => TwilioEndpointBuilder.java} (51%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterDirectMessageEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterDirectMessageEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterSearchEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterSearchEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterStreamingEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterStreamingEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterTimelineEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterTimelineEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/UndertowEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/UndertowEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ValidatorEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ValidatorEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{VelocityEndpoint.java => VelocityEndpointBuilder.java} (57%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/VertxEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/VertxEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/VmEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/VmEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/WeatherEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/WeatherEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/Web3jEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/Web3jEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{WebhookEndpoint.java => WebhookEndpointBuilder.java} (50%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/WebsocketEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/WebsocketEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/WordpressEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/WordpressEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/WsEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/WsEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/XChangeEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/XChangeEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/XQueryEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/XQueryEndpointBuilder.java
 rename core/camel-core/src/main/java/org/apache/camel/model/endpoint/{XmlSignatureEndpoint.java => XmlSignatureEndpointBuilder.java} (53%)
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/XmppEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/XmppEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/XsltEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/XsltEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/YammerEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/YammerEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ZendeskEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ZendeskEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ZooKeeperEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ZooKeeperEndpointBuilder.java
 delete mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ZooKeeperMasterEndpoint.java
 create mode 100644 core/camel-core/src/main/java/org/apache/camel/model/endpoint/ZooKeeperMasterEndpointBuilder.java


[camel] 04/05: Fix enum generation and put around the type in javadoc

Posted by gn...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

gnodet pushed a commit to branch endpoint-dsl
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 7b8c3ac42acc079bc2daf37da0ab51e98b846ab6
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Tue Jun 11 17:53:28 2019 +0200

    Fix enum generation and put <code> around the type in javadoc
---
 .../camel/model/endpoint/AMQPEndpointBuilder.java  | 407 ++++++++-------
 .../camel/model/endpoint/AS2EndpointBuilder.java   | 120 +++--
 .../model/endpoint/ActiveMQEndpointBuilder.java    | 407 ++++++++-------
 .../camel/model/endpoint/AhcEndpointBuilder.java   |  74 +--
 .../camel/model/endpoint/ApnsEndpointBuilder.java  | 103 ++--
 .../model/endpoint/AsteriskEndpointBuilder.java    |  36 +-
 .../camel/model/endpoint/AtmosEndpointBuilder.java |  57 ++-
 .../AtmosphereWebsocketEndpointBuilder.java        | 111 +++--
 .../camel/model/endpoint/AtomEndpointBuilder.java  | 130 ++---
 .../model/endpoint/AtomixMapEndpointBuilder.java   |  98 ++--
 .../endpoint/AtomixMessagingEndpointBuilder.java   | 104 ++--
 .../endpoint/AtomixMultiMapEndpointBuilder.java    |  98 ++--
 .../model/endpoint/AtomixQueueEndpointBuilder.java |  90 ++--
 .../model/endpoint/AtomixSetEndpointBuilder.java   |  93 ++--
 .../model/endpoint/AtomixValueEndpointBuilder.java |  95 ++--
 .../camel/model/endpoint/AvroEndpointBuilder.java  |  61 ++-
 .../camel/model/endpoint/BeanEndpointBuilder.java  |  26 +-
 .../endpoint/BeanValidatorEndpointBuilder.java     |  32 +-
 .../model/endpoint/BeanstalkEndpointBuilder.java   | 141 +++---
 .../model/endpoint/BlobServiceEndpointBuilder.java |  85 ++--
 .../model/endpoint/BonitaEndpointBuilder.java      |  40 +-
 .../camel/model/endpoint/BoxEndpointBuilder.java   |  87 ++--
 .../model/endpoint/BraintreeEndpointBuilder.java   |  59 +--
 .../model/endpoint/BrowseEndpointBuilder.java      |  24 +-
 .../camel/model/endpoint/CMEndpointBuilder.java    |  26 +-
 .../camel/model/endpoint/CMISEndpointBuilder.java  |  66 +--
 .../endpoint/CaffeineCacheEndpointBuilder.java     |  95 ++--
 .../endpoint/CaffeineLoadCacheEndpointBuilder.java |  95 ++--
 .../model/endpoint/CassandraEndpointBuilder.java   | 150 +++---
 .../model/endpoint/ChatScriptEndpointBuilder.java  |  24 +-
 .../camel/model/endpoint/ChunkEndpointBuilder.java |  33 +-
 .../model/endpoint/CinderEndpointBuilder.java      |  35 +-
 .../camel/model/endpoint/ClassEndpointBuilder.java |  26 +-
 .../model/endpoint/ClientEndpointBuilder.java      | 107 ++--
 .../camel/model/endpoint/CoAPEndpointBuilder.java  |  60 ++-
 .../model/endpoint/CometdEndpointBuilder.java      |  78 +--
 .../model/endpoint/ConsulEndpointBuilder.java      |  24 +-
 .../model/endpoint/ControlBusEndpointBuilder.java  |  32 +-
 .../camel/model/endpoint/CordaEndpointBuilder.java |  28 +-
 .../model/endpoint/CouchDbEndpointBuilder.java     |  62 +--
 .../model/endpoint/CouchbaseEndpointBuilder.java   | 226 +++++----
 .../model/endpoint/CryptoCmsEndpointBuilder.java   |  77 +--
 .../camel/model/endpoint/CwEndpointBuilder.java    |  46 +-
 .../camel/model/endpoint/CxfEndpointBuilder.java   | 147 +++---
 .../camel/model/endpoint/CxfRsEndpointBuilder.java | 145 +++---
 .../model/endpoint/DataFormatEndpointBuilder.java  |  13 +-
 .../model/endpoint/DataSetEndpointBuilder.java     |  80 +--
 .../model/endpoint/DataSetTestEndpointBuilder.java |  70 +--
 .../camel/model/endpoint/DdbEndpointBuilder.java   |  56 ++-
 .../model/endpoint/DdbStreamEndpointBuilder.java   | 133 ++---
 .../endpoint/DigitalOceanEndpointBuilder.java      |  51 +-
 .../endpoint/DigitalSignatureEndpointBuilder.java  |  80 +--
 .../model/endpoint/DirectEndpointBuilder.java      |  41 +-
 .../model/endpoint/DirectVmEndpointBuilder.java    |  50 +-
 .../model/endpoint/DisruptorEndpointBuilder.java   |  60 ++-
 .../model/endpoint/DisruptorVmEndpointBuilder.java |  60 ++-
 .../camel/model/endpoint/DnsEndpointBuilder.java   |  12 +-
 .../model/endpoint/DockerEndpointBuilder.java      |  95 ++--
 .../camel/model/endpoint/DozerEndpointBuilder.java |  26 +-
 .../camel/model/endpoint/DrillEndpointBuilder.java |  26 +-
 .../model/endpoint/DropboxEndpointBuilder.java     |  53 +-
 .../camel/model/endpoint/EC2EndpointBuilder.java   |  34 +-
 .../camel/model/endpoint/ECSEndpointBuilder.java   |  33 +-
 .../camel/model/endpoint/EKSEndpointBuilder.java   |  33 +-
 .../model/endpoint/EhcacheEndpointBuilder.java     |  83 ++--
 .../camel/model/endpoint/EjbEndpointBuilder.java   |  26 +-
 .../endpoint/ElasticsearchEndpointBuilder.java     |  57 ++-
 .../camel/model/endpoint/ElsqlEndpointBuilder.java | 217 ++++----
 .../camel/model/endpoint/EtcdEndpointBuilder.java  | 146 +++---
 .../model/endpoint/EventAdminEndpointBuilder.java  |  31 +-
 .../camel/model/endpoint/EventEndpointBuilder.java |  24 +-
 .../camel/model/endpoint/ExecEndpointBuilder.java  |  37 +-
 .../model/endpoint/FacebookEndpointBuilder.java    | 376 +++++++-------
 .../camel/model/endpoint/FhirEndpointBuilder.java  | 128 ++---
 .../camel/model/endpoint/FileEndpointBuilder.java  | 407 ++++++++-------
 .../model/endpoint/FlatpackEndpointBuilder.java    | 132 ++---
 .../camel/model/endpoint/FlinkEndpointBuilder.java |  38 +-
 .../camel/model/endpoint/FopEndpointBuilder.java   |  19 +-
 .../model/endpoint/FreemarkerEndpointBuilder.java  |  25 +-
 .../camel/model/endpoint/FtpEndpointBuilder.java   | 500 ++++++++++---------
 .../camel/model/endpoint/FtpsEndpointBuilder.java  | 553 +++++++++++----------
 .../model/endpoint/GangliaEndpointBuilder.java     |  71 +--
 .../model/endpoint/GeoCoderEndpointBuilder.java    |  48 +-
 .../camel/model/endpoint/GitEndpointBuilder.java   |  55 +-
 .../model/endpoint/GitHubEndpointBuilder.java      |  49 +-
 .../model/endpoint/GlanceEndpointBuilder.java      |  32 +-
 .../endpoint/GoogleBigQueryEndpointBuilder.java    |  25 +-
 .../endpoint/GoogleBigQuerySQLEndpointBuilder.java |  18 +-
 .../endpoint/GoogleCalendarEndpointBuilder.java    |  50 +-
 .../GoogleCalendarStreamEndpointBuilder.java       | 141 +++---
 .../model/endpoint/GoogleDriveEndpointBuilder.java |  59 +--
 .../model/endpoint/GoogleMailEndpointBuilder.java  |  44 +-
 .../endpoint/GoogleMailStreamEndpointBuilder.java  | 130 ++---
 .../endpoint/GooglePubsubEndpointBuilder.java      |  45 +-
 .../endpoint/GoogleSheetsEndpointBuilder.java      |  45 +-
 .../GoogleSheetsStreamEndpointBuilder.java         | 136 ++---
 .../camel/model/endpoint/GoraEndpointBuilder.java  | 106 ++--
 .../camel/model/endpoint/GrapeEndpointBuilder.java |  10 +-
 .../model/endpoint/GridFsEndpointBuilder.java      |  68 +--
 .../camel/model/endpoint/GrpcEndpointBuilder.java  | 109 ++--
 .../endpoint/GuavaEventBusEndpointBuilder.java     |  33 +-
 .../camel/model/endpoint/HBaseEndpointBuilder.java |  85 ++--
 .../HazelcastAtomicnumberEndpointBuilder.java      |  51 +-
 .../endpoint/HazelcastInstanceEndpointBuilder.java |  83 ++--
 .../endpoint/HazelcastListEndpointBuilder.java     |  83 ++--
 .../endpoint/HazelcastMapEndpointBuilder.java      |  83 ++--
 .../endpoint/HazelcastMultimapEndpointBuilder.java |  83 ++--
 .../endpoint/HazelcastQueueEndpointBuilder.java    |  83 ++--
 .../HazelcastReplicatedmapEndpointBuilder.java     |  83 ++--
 .../HazelcastRingbufferEndpointBuilder.java        |  51 +-
 .../endpoint/HazelcastSedaEndpointBuilder.java     |  83 ++--
 .../endpoint/HazelcastSetEndpointBuilder.java      |  83 ++--
 .../endpoint/HazelcastTopicEndpointBuilder.java    |  83 ++--
 .../camel/model/endpoint/HdfsEndpointBuilder.java  | 204 ++++----
 .../model/endpoint/HipchatEndpointBuilder.java     | 115 +++--
 .../camel/model/endpoint/HttpEndpointBuilder.java  | 220 ++++----
 .../camel/model/endpoint/IAMEndpointBuilder.java   |  34 +-
 .../camel/model/endpoint/IOTAEndpointBuilder.java  |  45 +-
 .../camel/model/endpoint/IPFSEndpointBuilder.java  |  15 +-
 .../model/endpoint/IgniteCacheEndpointBuilder.java |  76 +--
 .../endpoint/IgniteComputeEndpointBuilder.java     |  43 +-
 .../endpoint/IgniteEventsEndpointBuilder.java      |  46 +-
 .../model/endpoint/IgniteIdGenEndpointBuilder.java |  37 +-
 .../endpoint/IgniteMessagingEndpointBuilder.java   |  50 +-
 .../model/endpoint/IgniteQueueEndpointBuilder.java |  39 +-
 .../model/endpoint/IgniteSetEndpointBuilder.java   |  32 +-
 .../model/endpoint/InfinispanEndpointBuilder.java  |  92 ++--
 .../model/endpoint/InfluxDbEndpointBuilder.java    |  22 +-
 .../camel/model/endpoint/IrcEndpointBuilder.java   | 133 ++---
 .../model/endpoint/IronMQEndpointBuilder.java      | 145 +++---
 .../camel/model/endpoint/JBPMEndpointBuilder.java  | 135 ++---
 .../model/endpoint/JCacheEndpointBuilder.java      | 110 ++--
 .../model/endpoint/JGroupsEndpointBuilder.java     |  30 +-
 .../model/endpoint/JGroupsRaftEndpointBuilder.java |  31 +-
 .../camel/model/endpoint/JMXEndpointBuilder.java   | 128 ++---
 .../endpoint/JSR356WebSocketEndpointBuilder.java   |  30 +-
 .../model/endpoint/JcloudsEndpointBuilder.java     |  63 +--
 .../camel/model/endpoint/JcrEndpointBuilder.java   |  67 +--
 .../camel/model/endpoint/JdbcEndpointBuilder.java  |  66 +--
 .../model/endpoint/JettyHttpEndpointBuilder9.java  | 252 +++++-----
 .../camel/model/endpoint/JingEndpointBuilder.java  |  15 +-
 .../camel/model/endpoint/JiraEndpointBuilder.java  |  56 ++-
 .../camel/model/endpoint/JmsEndpointBuilder.java   | 407 ++++++++-------
 .../camel/model/endpoint/JoltEndpointBuilder.java  |  32 +-
 .../camel/model/endpoint/JooqEndpointBuilder.java  | 115 +++--
 .../camel/model/endpoint/JpaEndpointBuilder.java   | 200 ++++----
 .../endpoint/JsonValidatorEndpointBuilder.java     |  36 +-
 .../camel/model/endpoint/Jt400EndpointBuilder.java | 176 ++++---
 .../camel/model/endpoint/KMSEndpointBuilder.java   |  32 +-
 .../camel/model/endpoint/KafkaEndpointBuilder.java | 366 +++++++-------
 .../model/endpoint/KeystoneEndpointBuilder.java    |  32 +-
 .../model/endpoint/KinesisEndpointBuilder.java     | 140 +++---
 .../endpoint/KinesisFirehoseEndpointBuilder.java   |  29 +-
 .../KubernetesConfigMapsEndpointBuilder.java       |  68 +--
 .../KubernetesDeploymentsEndpointBuilder.java      |  95 ++--
 .../endpoint/KubernetesHPAEndpointBuilder.java     |  95 ++--
 .../endpoint/KubernetesJobEndpointBuilder.java     |  95 ++--
 .../KubernetesNamespacesEndpointBuilder.java       |  95 ++--
 .../endpoint/KubernetesNodesEndpointBuilder.java   |  95 ++--
 ...etesPersistentVolumesClaimsEndpointBuilder.java |  68 +--
 ...KubernetesPersistentVolumesEndpointBuilder.java |  68 +--
 .../endpoint/KubernetesPodsEndpointBuilder.java    |  95 ++--
 ...netesReplicationControllersEndpointBuilder.java |  95 ++--
 .../KubernetesResourcesQuotaEndpointBuilder.java   |  68 +--
 .../endpoint/KubernetesSecretsEndpointBuilder.java |  68 +--
 .../KubernetesServiceAccountsEndpointBuilder.java  |  68 +--
 .../KubernetesServicesEndpointBuilder.java         |  95 ++--
 .../model/endpoint/LambdaEndpointBuilder.java      |  37 +-
 .../model/endpoint/LanguageEndpointBuilder.java    |  33 +-
 .../camel/model/endpoint/LdapEndpointBuilder.java  |  23 +-
 .../camel/model/endpoint/LdifEndpointBuilder.java  |  10 +-
 .../model/endpoint/LinkedInEndpointBuilder.java    |  80 +--
 .../camel/model/endpoint/LogEndpointBuilder.java   | 129 ++---
 .../model/endpoint/LuceneEndpointBuilder.java      |  34 +-
 .../model/endpoint/LumberjackEndpointBuilder.java  |  34 +-
 .../camel/model/endpoint/MQEndpointBuilder.java    |  34 +-
 .../camel/model/endpoint/MQTTEndpointBuilder.java  | 159 +++---
 .../camel/model/endpoint/MSKEndpointBuilder.java   |  33 +-
 .../camel/model/endpoint/MailEndpointBuilder.java  | 281 ++++++-----
 .../model/endpoint/MasterEndpointBuilder.java      |  26 +-
 .../model/endpoint/MetricsEndpointBuilder.java     |  47 +-
 .../model/endpoint/MicrometerEndpointBuilder.java  |  34 +-
 .../model/endpoint/MiloClientEndpointBuilder.java  | 111 +++--
 .../model/endpoint/MiloServerEndpointBuilder.java  |  24 +-
 .../camel/model/endpoint/Mina2EndpointBuilder.java | 132 ++---
 .../camel/model/endpoint/MllpEndpointBuilder.java  | 130 ++---
 .../camel/model/endpoint/MockEndpointBuilder.java  |  54 +-
 .../model/endpoint/MongoDbEndpointBuilder.java     |  78 +--
 .../camel/model/endpoint/MsvEndpointBuilder.java   |  50 +-
 .../model/endpoint/MustacheEndpointBuilder.java    |  21 +-
 .../camel/model/endpoint/MvelEndpointBuilder.java  |  17 +-
 .../model/endpoint/MyBatisBeanEndpointBuilder.java |  23 +-
 .../model/endpoint/MyBatisEndpointBuilder.java     | 138 ++---
 .../model/endpoint/NagiosEndpointBuilder.java      |  44 +-
 .../camel/model/endpoint/NatsEndpointBuilder.java  | 119 +++--
 .../model/endpoint/NetWeaverEndpointBuilder.java   |  29 +-
 .../camel/model/endpoint/NettyEndpointBuilder.java | 338 +++++++------
 .../model/endpoint/NettyHttpEndpointBuilder.java   | 374 +++++++-------
 .../model/endpoint/NeutronEndpointBuilder.java     |  35 +-
 .../camel/model/endpoint/NovaEndpointBuilder.java  |  35 +-
 .../camel/model/endpoint/NsqEndpointBuilder.java   |  83 ++--
 .../model/endpoint/Olingo2EndpointBuilder.java     |  73 +--
 .../model/endpoint/Olingo4EndpointBuilder.java     |  73 +--
 .../OpenshiftBuildConfigsEndpointBuilder.java      |  68 +--
 .../endpoint/OpenshiftBuildsEndpointBuilder.java   |  68 +--
 .../model/endpoint/OptaPlannerEndpointBuilder.java |  34 +-
 .../camel/model/endpoint/PahoEndpointBuilder.java  |  66 +--
 .../model/endpoint/PaxLoggingEndpointBuilder.java  |  24 +-
 .../camel/model/endpoint/PdfEndpointBuilder.java   |  52 +-
 .../model/endpoint/PgEventEndpointBuilder.java     |  44 +-
 .../model/endpoint/PrinterEndpointBuilder.java     |  52 +-
 .../model/endpoint/PropertiesEndpointBuilder.java  |  37 +-
 .../model/endpoint/PubNubEndpointBuilder.java      |  55 +-
 .../model/endpoint/PulsarEndpointBuilder.java      |  53 +-
 .../model/endpoint/QuartzEndpointBuilder.java      |  94 ++--
 .../endpoint/QueueServiceEndpointBuilder.java      |  51 +-
 .../model/endpoint/QuickfixjEndpointBuilder.java   |  33 +-
 .../model/endpoint/RabbitMQEndpointBuilder.java    | 254 +++++-----
 .../endpoint/ReactiveStreamsEndpointBuilder.java   |  50 +-
 .../camel/model/endpoint/RedisEndpointBuilder.java |  61 +--
 .../camel/model/endpoint/RefEndpointBuilder.java   |  24 +-
 .../model/endpoint/RestApiEndpointBuilder.java     |  32 +-
 .../camel/model/endpoint/RestEndpointBuilder.java  |  55 +-
 .../model/endpoint/RestSwaggerEndpointBuilder.java |  25 +-
 .../model/endpoint/RestletEndpointBuilder.java     |  99 ++--
 .../camel/model/endpoint/RssEndpointBuilder.java   | 130 ++---
 .../camel/model/endpoint/S3EndpointBuilder.java    | 231 +++++----
 .../camel/model/endpoint/SWFEndpointBuilder.java   | 117 +++--
 .../camel/model/endpoint/SagaEndpointBuilder.java  |  18 +-
 .../model/endpoint/SalesforceEndpointBuilder.java  | 189 +++----
 .../model/endpoint/SchedulerEndpointBuilder.java   | 106 ++--
 .../model/endpoint/SchematronEndpointBuilder.java  |  25 +-
 .../camel/model/endpoint/ScpEndpointBuilder.java   | 101 ++--
 .../camel/model/endpoint/SdbEndpointBuilder.java   |  43 +-
 .../camel/model/endpoint/SedaEndpointBuilder.java  |  86 ++--
 .../model/endpoint/ServerEndpointBuilder.java      | 111 +++--
 .../model/endpoint/ServiceEndpointBuilder.java     |  24 +-
 .../model/endpoint/ServiceNowEndpointBuilder.java  | 183 ++++---
 .../model/endpoint/ServletEndpointBuilder.java     | 103 ++--
 .../camel/model/endpoint/SesEndpointBuilder.java   |  41 +-
 .../camel/model/endpoint/SftpEndpointBuilder.java  | 527 +++++++++++---------
 .../camel/model/endpoint/SipEndpointBuilder.java   | 176 +++----
 .../camel/model/endpoint/Sjms2EndpointBuilder.java | 170 ++++---
 .../model/endpoint/SjmsBatchEndpointBuilder.java   | 112 +++--
 .../camel/model/endpoint/SjmsEndpointBuilder.java  | 158 +++---
 .../camel/model/endpoint/SlackEndpointBuilder.java | 121 +++--
 .../camel/model/endpoint/SmppEndpointBuilder.java  | 171 ++++---
 .../camel/model/endpoint/SnmpEndpointBuilder.java  | 160 +++---
 .../camel/model/endpoint/SnsEndpointBuilder.java   |  64 +--
 .../camel/model/endpoint/SolrEndpointBuilder.java  |  57 ++-
 .../model/endpoint/SoroushBotEndpointBuilder.java  | 103 ++--
 .../camel/model/endpoint/SparkEndpointBuilder.java |  56 ++-
 .../model/endpoint/SplunkEndpointBuilder.java      | 176 ++++---
 .../model/endpoint/SpringBatchEndpointBuilder.java |  27 +-
 .../endpoint/SpringIntegrationEndpointBuilder.java |  37 +-
 .../model/endpoint/SpringLdapEndpointBuilder.java  |  20 +-
 .../endpoint/SpringWebserviceEndpointBuilder.java  | 119 ++---
 .../camel/model/endpoint/SqlEndpointBuilder.java   | 203 ++++----
 .../model/endpoint/SqlStoredEndpointBuilder.java   |  35 +-
 .../camel/model/endpoint/SqsEndpointBuilder.java   | 234 +++++----
 .../camel/model/endpoint/SshEndpointBuilder.java   | 146 +++---
 .../camel/model/endpoint/StAXEndpointBuilder.java  |  10 +-
 .../camel/model/endpoint/StompEndpointBuilder.java |  44 +-
 .../model/endpoint/StreamEndpointBuilder.java      | 103 ++--
 .../endpoint/StringTemplateEndpointBuilder.java    |  27 +-
 .../camel/model/endpoint/StubEndpointBuilder.java  |  86 ++--
 .../camel/model/endpoint/SwiftEndpointBuilder.java |  35 +-
 .../model/endpoint/TelegramEndpointBuilder.java    | 122 ++---
 .../model/endpoint/ThriftEndpointBuilder.java      |  77 +--
 .../camel/model/endpoint/TikaEndpointBuilder.java  |  27 +-
 .../camel/model/endpoint/TimerEndpointBuilder.java |  62 ++-
 .../model/endpoint/TwilioEndpointBuilder.java      |  32 +-
 .../TwitterDirectMessageEndpointBuilder.java       | 182 ++++---
 .../endpoint/TwitterSearchEndpointBuilder.java     | 182 ++++---
 .../endpoint/TwitterStreamingEndpointBuilder.java  | 188 +++----
 .../endpoint/TwitterTimelineEndpointBuilder.java   | 188 +++----
 .../model/endpoint/UndertowEndpointBuilder.java    | 104 ++--
 .../model/endpoint/ValidatorEndpointBuilder.java   |  50 +-
 .../model/endpoint/VelocityEndpointBuilder.java    |  24 +-
 .../camel/model/endpoint/VertxEndpointBuilder.java |  29 +-
 .../camel/model/endpoint/VmEndpointBuilder.java    |  86 ++--
 .../model/endpoint/WeatherEndpointBuilder.java     | 196 ++++----
 .../camel/model/endpoint/Web3jEndpointBuilder.java | 141 +++---
 .../model/endpoint/WebhookEndpointBuilder.java     |  40 +-
 .../model/endpoint/WebsocketEndpointBuilder.java   |  95 ++--
 .../model/endpoint/WordpressEndpointBuilder.java   |  56 ++-
 .../camel/model/endpoint/WsEndpointBuilder.java    |  82 +--
 .../model/endpoint/XChangeEndpointBuilder.java     |  43 +-
 .../model/endpoint/XQueryEndpointBuilder.java      | 150 +++---
 .../endpoint/XmlSignatureEndpointBuilder.java      | 141 +++---
 .../camel/model/endpoint/XmppEndpointBuilder.java  |  87 ++--
 .../camel/model/endpoint/XsltEndpointBuilder.java  |  79 +--
 .../model/endpoint/YammerEndpointBuilder.java      | 132 ++---
 .../model/endpoint/ZendeskEndpointBuilder.java     |  39 +-
 .../model/endpoint/ZooKeeperEndpointBuilder.java   |  58 ++-
 .../endpoint/ZooKeeperMasterEndpointBuilder.java   |  26 +-
 .../camel/maven/packaging/EndpointDslMojo.java     |  10 +-
 297 files changed, 14723 insertions(+), 12233 deletions(-)

diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpointBuilder.java
index 6307a6d..649b5dd 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpointBuilder.java
@@ -41,8 +41,8 @@ public interface AMQPEndpointBuilder {
             super("amqp", path);
         }
         /**
-         * The kind of destination to use. The option is a java.lang.String
-         * type.
+         * The kind of destination to use. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T destinationType(String destinationType) {
             this.properties.put("destinationType", destinationType);
@@ -50,7 +50,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Name of the queue or topic to use as destination. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T destinationName(String destinationName) {
             this.properties.put("destinationName", destinationName);
@@ -61,7 +61,7 @@ public interface AMQPEndpointBuilder {
          * must be unique and can only be used by a single JMS connection
          * instance. It is typically only required for durable topic
          * subscriptions. If using Apache ActiveMQ you may prefer to use Virtual
-         * Topics instead. The option is a java.lang.String type.
+         * Topics instead. The option is a <code>java.lang.String</code> type.
          */
         public T clientId(String clientId) {
             this.properties.put("clientId", clientId);
@@ -72,7 +72,7 @@ public interface AMQPEndpointBuilder {
          * factory is not specified for either
          * setTemplateConnectionFactory(ConnectionFactory) or
          * setListenerConnectionFactory(ConnectionFactory). The option is a
-         * javax.jms.ConnectionFactory type.
+         * <code>javax.jms.ConnectionFactory</code> type.
          */
         public T connectionFactory(Object connectionFactory) {
             this.properties.put("connectionFactory", connectionFactory);
@@ -83,7 +83,7 @@ public interface AMQPEndpointBuilder {
          * factory is not specified for either
          * setTemplateConnectionFactory(ConnectionFactory) or
          * setListenerConnectionFactory(ConnectionFactory). The option will be
-         * converted to a javax.jms.ConnectionFactory type.
+         * converted to a <code>javax.jms.ConnectionFactory</code> type.
          */
         public T connectionFactory(String connectionFactory) {
             this.properties.put("connectionFactory", connectionFactory);
@@ -98,7 +98,7 @@ public interface AMQPEndpointBuilder {
          * handles the reply message. You can also use this option if you want
          * to use Camel as a proxy between different message brokers and you
          * want to route message from one system to another. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public T disableReplyTo(boolean disableReplyTo) {
             this.properties.put("disableReplyTo", disableReplyTo);
@@ -113,7 +113,7 @@ public interface AMQPEndpointBuilder {
          * handles the reply message. You can also use this option if you want
          * to use Camel as a proxy between different message brokers and you
          * want to route message from one system to another. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T disableReplyTo(String disableReplyTo) {
             this.properties.put("disableReplyTo", disableReplyTo);
@@ -122,7 +122,7 @@ public interface AMQPEndpointBuilder {
         /**
          * The durable subscriber name for specifying durable topic
          * subscriptions. The clientId option must be configured as well. The
-         * option is a java.lang.String type.
+         * option is a <code>java.lang.String</code> type.
          */
         public T durableSubscriptionName(String durableSubscriptionName) {
             this.properties.put("durableSubscriptionName", durableSubscriptionName);
@@ -134,7 +134,7 @@ public interface AMQPEndpointBuilder {
          * Map, Object, Stream, Text. By default, Camel would determine which
          * JMS message type to use from the In body type. This option allows you
          * to specify it. The option is a
-         * org.apache.camel.component.jms.JmsMessageType type.
+         * <code>org.apache.camel.component.jms.JmsMessageType</code> type.
          */
         public T jmsMessageType(JmsMessageType jmsMessageType) {
             this.properties.put("jmsMessageType", jmsMessageType);
@@ -146,7 +146,7 @@ public interface AMQPEndpointBuilder {
          * Map, Object, Stream, Text. By default, Camel would determine which
          * JMS message type to use from the In body type. This option allows you
          * to specify it. The option will be converted to a
-         * org.apache.camel.component.jms.JmsMessageType type.
+         * <code>org.apache.camel.component.jms.JmsMessageType</code> type.
          */
         public T jmsMessageType(String jmsMessageType) {
             this.properties.put("jmsMessageType", jmsMessageType);
@@ -158,7 +158,7 @@ public interface AMQPEndpointBuilder {
          * connection to the JMS broker. If a connection cannot be granted then
          * Camel throws an exception on startup. This ensures that Camel is not
          * started with failed connections. The JMS producers is tested as well.
-         * The option is a boolean type.
+         * The option is a <code>boolean</code> type.
          */
         public T testConnectionOnStartup(boolean testConnectionOnStartup) {
             this.properties.put("testConnectionOnStartup", testConnectionOnStartup);
@@ -170,7 +170,7 @@ public interface AMQPEndpointBuilder {
          * connection to the JMS broker. If a connection cannot be granted then
          * Camel throws an exception on startup. This ensures that Camel is not
          * started with failed connections. The JMS producers is tested as well.
-         * The option will be converted to a boolean type.
+         * The option will be converted to a <code>boolean</code> type.
          */
         public T testConnectionOnStartup(String testConnectionOnStartup) {
             this.properties.put("testConnectionOnStartup", testConnectionOnStartup);
@@ -180,7 +180,7 @@ public interface AMQPEndpointBuilder {
          * Controls whether or not to include serialized headers. Applies only
          * when isTransferExchange() is true. This requires that the objects are
          * serializable. Camel will exclude any non-serializable objects and log
-         * it at WARN level. The option is a boolean type.
+         * it at WARN level. The option is a <code>boolean</code> type.
          */
         public T allowSerializedHeaders(boolean allowSerializedHeaders) {
             this.properties.put("allowSerializedHeaders", allowSerializedHeaders);
@@ -190,7 +190,8 @@ public interface AMQPEndpointBuilder {
          * Controls whether or not to include serialized headers. Applies only
          * when isTransferExchange() is true. This requires that the objects are
          * serializable. Camel will exclude any non-serializable objects and log
-         * it at WARN level. The option will be converted to a boolean type.
+         * it at WARN level. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T allowSerializedHeaders(String allowSerializedHeaders) {
             this.properties.put("allowSerializedHeaders", allowSerializedHeaders);
@@ -207,7 +208,7 @@ public interface AMQPEndpointBuilder {
          * if the connection could not be established, then an exception is
          * logged at WARN level, and the consumer will not be able to receive
          * messages; You can then restart the route to retry. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public T asyncStartListener(boolean asyncStartListener) {
             this.properties.put("asyncStartListener", asyncStartListener);
@@ -224,7 +225,7 @@ public interface AMQPEndpointBuilder {
          * if the connection could not be established, then an exception is
          * logged at WARN level, and the consumer will not be able to receive
          * messages; You can then restart the route to retry. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T asyncStartListener(String asyncStartListener) {
             this.properties.put("asyncStartListener", asyncStartListener);
@@ -232,7 +233,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Whether to stop the JmsConsumer message listener asynchronously, when
-         * stopping a route. The option is a boolean type.
+         * stopping a route. The option is a <code>boolean</code> type.
          */
         public T asyncStopListener(boolean asyncStopListener) {
             this.properties.put("asyncStopListener", asyncStopListener);
@@ -240,7 +241,8 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Whether to stop the JmsConsumer message listener asynchronously, when
-         * stopping a route. The option will be converted to a boolean type.
+         * stopping a route. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T asyncStopListener(String asyncStopListener) {
             this.properties.put("asyncStopListener", asyncStopListener);
@@ -249,7 +251,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -258,7 +260,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -269,7 +271,7 @@ public interface AMQPEndpointBuilder {
          * org.springframework.jms.support.destination.DestinationResolver that
          * allows you to use your own resolver (for example, to lookup the real
          * destination in a JNDI registry). The option is a
-         * org.springframework.jms.support.destination.DestinationResolver type.
+         * <code>org.springframework.jms.support.destination.DestinationResolver</code> type.
          */
         public T destinationResolver(Object destinationResolver) {
             this.properties.put("destinationResolver", destinationResolver);
@@ -280,7 +282,7 @@ public interface AMQPEndpointBuilder {
          * org.springframework.jms.support.destination.DestinationResolver that
          * allows you to use your own resolver (for example, to lookup the real
          * destination in a JNDI registry). The option will be converted to a
-         * org.springframework.jms.support.destination.DestinationResolver type.
+         * <code>org.springframework.jms.support.destination.DestinationResolver</code> type.
          */
         public T destinationResolver(String destinationResolver) {
             this.properties.put("destinationResolver", destinationResolver);
@@ -294,7 +296,7 @@ public interface AMQPEndpointBuilder {
          * whether stack traces should be logged using errorHandlerLoggingLevel
          * and errorHandlerLogStackTrace options. This makes it much easier to
          * configure, than having to code a custom errorHandler. The option is a
-         * org.springframework.util.ErrorHandler type.
+         * <code>org.springframework.util.ErrorHandler</code> type.
          */
         public T errorHandler(Object errorHandler) {
             this.properties.put("errorHandler", errorHandler);
@@ -308,7 +310,8 @@ public interface AMQPEndpointBuilder {
          * whether stack traces should be logged using errorHandlerLoggingLevel
          * and errorHandlerLogStackTrace options. This makes it much easier to
          * configure, than having to code a custom errorHandler. The option will
-         * be converted to a org.springframework.util.ErrorHandler type.
+         * be converted to a <code>org.springframework.util.ErrorHandler</code>
+         * type.
          */
         public T errorHandler(String errorHandler) {
             this.properties.put("errorHandler", errorHandler);
@@ -317,7 +320,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Specifies the JMS Exception Listener that is to be notified of any
          * underlying JMS exceptions. The option is a
-         * javax.jms.ExceptionListener type.
+         * <code>javax.jms.ExceptionListener</code> type.
          */
         public T exceptionListener(Object exceptionListener) {
             this.properties.put("exceptionListener", exceptionListener);
@@ -326,7 +329,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Specifies the JMS Exception Listener that is to be notified of any
          * underlying JMS exceptions. The option will be converted to a
-         * javax.jms.ExceptionListener type.
+         * <code>javax.jms.ExceptionListener</code> type.
          */
         public T exceptionListener(String exceptionListener) {
             this.properties.put("exceptionListener", exceptionListener);
@@ -335,7 +338,7 @@ public interface AMQPEndpointBuilder {
         /**
          * To use a custom HeaderFilterStrategy to filter header to and from
          * Camel message. The option is a
-         * org.apache.camel.spi.HeaderFilterStrategy type.
+         * <code>org.apache.camel.spi.HeaderFilterStrategy</code> type.
          */
         public T headerFilterStrategy(HeaderFilterStrategy headerFilterStrategy) {
             this.properties.put("headerFilterStrategy", headerFilterStrategy);
@@ -344,7 +347,7 @@ public interface AMQPEndpointBuilder {
         /**
          * To use a custom HeaderFilterStrategy to filter header to and from
          * Camel message. The option will be converted to a
-         * org.apache.camel.spi.HeaderFilterStrategy type.
+         * <code>org.apache.camel.spi.HeaderFilterStrategy</code> type.
          */
         public T headerFilterStrategy(String headerFilterStrategy) {
             this.properties.put("headerFilterStrategy", headerFilterStrategy);
@@ -352,7 +355,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Specify the limit for the number of consumers that are allowed to be
-         * idle at any given time. The option is a int type.
+         * idle at any given time. The option is a <code>int</code> type.
          */
         public T idleConsumerLimit(int idleConsumerLimit) {
             this.properties.put("idleConsumerLimit", idleConsumerLimit);
@@ -360,7 +363,8 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Specify the limit for the number of consumers that are allowed to be
-         * idle at any given time. The option will be converted to a int type.
+         * idle at any given time. The option will be converted to a
+         * <code>int</code> type.
          */
         public T idleConsumerLimit(String idleConsumerLimit) {
             this.properties.put("idleConsumerLimit", idleConsumerLimit);
@@ -372,7 +376,7 @@ public interface AMQPEndpointBuilder {
          * the task will shut down and leave receiving to other executing tasks
          * (in the case of dynamic scheduling; see the maxConcurrentConsumers
          * setting). There is additional doc available from Spring. The option
-         * is a int type.
+         * is a <code>int</code> type.
          */
         public T idleTaskExecutionLimit(int idleTaskExecutionLimit) {
             this.properties.put("idleTaskExecutionLimit", idleTaskExecutionLimit);
@@ -384,7 +388,7 @@ public interface AMQPEndpointBuilder {
          * the task will shut down and leave receiving to other executing tasks
          * (in the case of dynamic scheduling; see the maxConcurrentConsumers
          * setting). There is additional doc available from Spring. The option
-         * will be converted to a int type.
+         * will be converted to a <code>int</code> type.
          */
         public T idleTaskExecutionLimit(String idleTaskExecutionLimit) {
             this.properties.put("idleTaskExecutionLimit", idleTaskExecutionLimit);
@@ -395,7 +399,7 @@ public interface AMQPEndpointBuilder {
          * Camel Message. Setting this to true will include properties such as
          * JMSXAppID, and JMSXUserID etc. Note: If you are using a custom
          * headerFilterStrategy then this option does not apply. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public T includeAllJMSXProperties(boolean includeAllJMSXProperties) {
             this.properties.put("includeAllJMSXProperties", includeAllJMSXProperties);
@@ -406,7 +410,7 @@ public interface AMQPEndpointBuilder {
          * Camel Message. Setting this to true will include properties such as
          * JMSXAppID, and JMSXUserID etc. Note: If you are using a custom
          * headerFilterStrategy then this option does not apply. The option will
-         * be converted to a boolean type.
+         * be converted to a <code>boolean</code> type.
          */
         public T includeAllJMSXProperties(String includeAllJMSXProperties) {
             this.properties.put("includeAllJMSXProperties", includeAllJMSXProperties);
@@ -421,7 +425,9 @@ public interface AMQPEndpointBuilder {
          * brokers which do not care whether JMS header keys contain illegal
          * characters. You can provide your own implementation of the
          * org.apache.camel.component.jms.JmsKeyFormatStrategy and refer to it
-         * using the # notation. The option is a java.lang.String type.
+         * using the # notation. The option is a
+         * <code>org.apache.camel.component.jms.JmsKeyFormatStrategy</code>
+         * type.
          */
         public T jmsKeyFormatStrategy(Object jmsKeyFormatStrategy) {
             this.properties.put("jmsKeyFormatStrategy", jmsKeyFormatStrategy);
@@ -437,7 +443,8 @@ public interface AMQPEndpointBuilder {
          * characters. You can provide your own implementation of the
          * org.apache.camel.component.jms.JmsKeyFormatStrategy and refer to it
          * using the # notation. The option will be converted to a
-         * java.lang.String type.
+         * <code>org.apache.camel.component.jms.JmsKeyFormatStrategy</code>
+         * type.
          */
         public T jmsKeyFormatStrategy(String jmsKeyFormatStrategy) {
             this.properties.put("jmsKeyFormatStrategy", jmsKeyFormatStrategy);
@@ -446,7 +453,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Specifies whether Camel should auto map the received JMS message to a
          * suited payload type, such as javax.jms.TextMessage to a String etc.
-         * The option is a boolean type.
+         * The option is a <code>boolean</code> type.
          */
         public T mapJmsMessage(boolean mapJmsMessage) {
             this.properties.put("mapJmsMessage", mapJmsMessage);
@@ -455,7 +462,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Specifies whether Camel should auto map the received JMS message to a
          * suited payload type, such as javax.jms.TextMessage to a String etc.
-         * The option will be converted to a boolean type.
+         * The option will be converted to a <code>boolean</code> type.
          */
         public T mapJmsMessage(String mapJmsMessage) {
             this.properties.put("mapJmsMessage", mapJmsMessage);
@@ -465,7 +472,8 @@ public interface AMQPEndpointBuilder {
          * The number of messages per task. -1 is unlimited. If you use a range
          * for concurrent consumers (eg min max), then this option can be used
          * to set a value to eg 100 to control how fast the consumers will
-         * shrink when less work is required. The option is a int type.
+         * shrink when less work is required. The option is a <code>int</code>
+         * type.
          */
         public T maxMessagesPerTask(int maxMessagesPerTask) {
             this.properties.put("maxMessagesPerTask", maxMessagesPerTask);
@@ -476,7 +484,7 @@ public interface AMQPEndpointBuilder {
          * for concurrent consumers (eg min max), then this option can be used
          * to set a value to eg 100 to control how fast the consumers will
          * shrink when less work is required. The option will be converted to a
-         * int type.
+         * <code>int</code> type.
          */
         public T maxMessagesPerTask(String maxMessagesPerTask) {
             this.properties.put("maxMessagesPerTask", maxMessagesPerTask);
@@ -486,7 +494,7 @@ public interface AMQPEndpointBuilder {
          * To use a custom Spring
          * org.springframework.jms.support.converter.MessageConverter so you can
          * be in control how to map to/from a javax.jms.Message. The option is a
-         * org.springframework.jms.support.converter.MessageConverter type.
+         * <code>org.springframework.jms.support.converter.MessageConverter</code> type.
          */
         public T messageConverter(Object messageConverter) {
             this.properties.put("messageConverter", messageConverter);
@@ -497,7 +505,7 @@ public interface AMQPEndpointBuilder {
          * org.springframework.jms.support.converter.MessageConverter so you can
          * be in control how to map to/from a javax.jms.Message. The option will
          * be converted to a
-         * org.springframework.jms.support.converter.MessageConverter type.
+         * <code>org.springframework.jms.support.converter.MessageConverter</code> type.
          */
         public T messageConverter(String messageConverter) {
             this.properties.put("messageConverter", messageConverter);
@@ -507,7 +515,8 @@ public interface AMQPEndpointBuilder {
          * To use the given MessageCreatedStrategy which are invoked when Camel
          * creates new instances of javax.jms.Message objects when Camel is
          * sending a JMS message. The option is a
-         * org.apache.camel.component.jms.MessageCreatedStrategy type.
+         * <code>org.apache.camel.component.jms.MessageCreatedStrategy</code>
+         * type.
          */
         public T messageCreatedStrategy(Object messageCreatedStrategy) {
             this.properties.put("messageCreatedStrategy", messageCreatedStrategy);
@@ -517,7 +526,8 @@ public interface AMQPEndpointBuilder {
          * To use the given MessageCreatedStrategy which are invoked when Camel
          * creates new instances of javax.jms.Message objects when Camel is
          * sending a JMS message. The option will be converted to a
-         * org.apache.camel.component.jms.MessageCreatedStrategy type.
+         * <code>org.apache.camel.component.jms.MessageCreatedStrategy</code>
+         * type.
          */
         public T messageCreatedStrategy(String messageCreatedStrategy) {
             this.properties.put("messageCreatedStrategy", messageCreatedStrategy);
@@ -528,7 +538,7 @@ public interface AMQPEndpointBuilder {
          * just an hint to the JMS Broker. If the JMS provider accepts this
          * hint, these messages must have the message ID set to null; if the
          * provider ignores the hint, the message ID must be set to its normal
-         * unique value. The option is a boolean type.
+         * unique value. The option is a <code>boolean</code> type.
          */
         public T messageIdEnabled(boolean messageIdEnabled) {
             this.properties.put("messageIdEnabled", messageIdEnabled);
@@ -539,7 +549,8 @@ public interface AMQPEndpointBuilder {
          * just an hint to the JMS Broker. If the JMS provider accepts this
          * hint, these messages must have the message ID set to null; if the
          * provider ignores the hint, the message ID must be set to its normal
-         * unique value. The option will be converted to a boolean type.
+         * unique value. The option will be converted to a <code>boolean</code>
+         * type.
          */
         public T messageIdEnabled(String messageIdEnabled) {
             this.properties.put("messageIdEnabled", messageIdEnabled);
@@ -551,7 +562,7 @@ public interface AMQPEndpointBuilder {
          * org.springframework.jms.listener.AbstractMessageListenerContainer to
          * use to consume messages. Setting this will automatically set
          * consumerType to Custom. The option is a
-         * org.apache.camel.component.jms.MessageListenerContainerFactory type.
+         * <code>org.apache.camel.component.jms.MessageListenerContainerFactory</code> type.
          */
         public T messageListenerContainerFactory(
                 Object messageListenerContainerFactory) {
@@ -564,7 +575,7 @@ public interface AMQPEndpointBuilder {
          * org.springframework.jms.listener.AbstractMessageListenerContainer to
          * use to consume messages. Setting this will automatically set
          * consumerType to Custom. The option will be converted to a
-         * org.apache.camel.component.jms.MessageListenerContainerFactory type.
+         * <code>org.apache.camel.component.jms.MessageListenerContainerFactory</code> type.
          */
         public T messageListenerContainerFactory(
                 String messageListenerContainerFactory) {
@@ -576,7 +587,7 @@ public interface AMQPEndpointBuilder {
          * messages. This is just an hint to the JMS Broker. If the JMS provider
          * accepts this hint, these messages must have the timestamp set to
          * zero; if the provider ignores the hint, the timestamp must be set to
-         * its normal value. The option is a boolean type.
+         * its normal value. The option is a <code>boolean</code> type.
          */
         public T messageTimestampEnabled(boolean messageTimestampEnabled) {
             this.properties.put("messageTimestampEnabled", messageTimestampEnabled);
@@ -587,7 +598,8 @@ public interface AMQPEndpointBuilder {
          * messages. This is just an hint to the JMS Broker. If the JMS provider
          * accepts this hint, these messages must have the timestamp set to
          * zero; if the provider ignores the hint, the timestamp must be set to
-         * its normal value. The option will be converted to a boolean type.
+         * its normal value. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T messageTimestampEnabled(String messageTimestampEnabled) {
             this.properties.put("messageTimestampEnabled", messageTimestampEnabled);
@@ -595,7 +607,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Specifies whether to inhibit the delivery of messages published by
-         * its own connection. The option is a boolean type.
+         * its own connection. The option is a <code>boolean</code> type.
          */
         public T pubSubNoLocal(boolean pubSubNoLocal) {
             this.properties.put("pubSubNoLocal", pubSubNoLocal);
@@ -603,7 +615,8 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Specifies whether to inhibit the delivery of messages published by
-         * its own connection. The option will be converted to a boolean type.
+         * its own connection. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T pubSubNoLocal(String pubSubNoLocal) {
             this.properties.put("pubSubNoLocal", pubSubNoLocal);
@@ -611,7 +624,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * The timeout for receiving messages (in milliseconds). The option is a
-         * long type.
+         * <code>long</code> type.
          */
         public T receiveTimeout(long receiveTimeout) {
             this.properties.put("receiveTimeout", receiveTimeout);
@@ -619,7 +632,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * The timeout for receiving messages (in milliseconds). The option will
-         * be converted to a long type.
+         * be converted to a <code>long</code> type.
          */
         public T receiveTimeout(String receiveTimeout) {
             this.properties.put("receiveTimeout", receiveTimeout);
@@ -628,7 +641,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Specifies the interval between recovery attempts, i.e. when a
          * connection is being refreshed, in milliseconds. The default is 5000
-         * ms, that is, 5 seconds. The option is a long type.
+         * ms, that is, 5 seconds. The option is a <code>long</code> type.
          */
         public T recoveryInterval(long recoveryInterval) {
             this.properties.put("recoveryInterval", recoveryInterval);
@@ -637,7 +650,8 @@ public interface AMQPEndpointBuilder {
         /**
          * Specifies the interval between recovery attempts, i.e. when a
          * connection is being refreshed, in milliseconds. The default is 5000
-         * ms, that is, 5 seconds. The option will be converted to a long type.
+         * ms, that is, 5 seconds. The option will be converted to a
+         * <code>long</code> type.
          */
         public T recoveryInterval(String recoveryInterval) {
             this.properties.put("recoveryInterval", recoveryInterval);
@@ -648,7 +662,8 @@ public interface AMQPEndpointBuilder {
          * doing request/reply over JMS. By default Camel checks once per
          * second. But if you must react faster when a timeout occurs, then you
          * can lower this interval, to check more frequently. The timeout is
-         * determined by the option requestTimeout. The option is a long type.
+         * determined by the option requestTimeout. The option is a
+         * <code>long</code> type.
          */
         public T requestTimeoutCheckerInterval(
                 long requestTimeoutCheckerInterval) {
@@ -661,7 +676,7 @@ public interface AMQPEndpointBuilder {
          * second. But if you must react faster when a timeout occurs, then you
          * can lower this interval, to check more frequently. The timeout is
          * determined by the option requestTimeout. The option will be converted
-         * to a long type.
+         * to a <code>long</code> type.
          */
         public T requestTimeoutCheckerInterval(
                 String requestTimeoutCheckerInterval) {
@@ -671,7 +686,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -680,7 +695,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -697,7 +712,7 @@ public interface AMQPEndpointBuilder {
          * exception is required to be serializable. The original Exception on
          * the consumer side can be wrapped in an outer exception such as
          * org.apache.camel.RuntimeCamelException when returned to the producer.
-         * The option is a boolean type.
+         * The option is a <code>boolean</code> type.
          */
         public T transferException(boolean transferException) {
             this.properties.put("transferException", transferException);
@@ -714,7 +729,7 @@ public interface AMQPEndpointBuilder {
          * exception is required to be serializable. The original Exception on
          * the consumer side can be wrapped in an outer exception such as
          * org.apache.camel.RuntimeCamelException when returned to the producer.
-         * The option will be converted to a boolean type.
+         * The option will be converted to a <code>boolean</code> type.
          */
         public T transferException(String transferException) {
             this.properties.put("transferException", transferException);
@@ -728,7 +743,7 @@ public interface AMQPEndpointBuilder {
          * serializable. Camel will exclude any non-serializable objects and log
          * it at WARN level. You must enable this option on both the producer
          * and consumer side, so Camel knows the payloads is an Exchange and not
-         * a regular payload. The option is a boolean type.
+         * a regular payload. The option is a <code>boolean</code> type.
          */
         public T transferExchange(boolean transferExchange) {
             this.properties.put("transferExchange", transferExchange);
@@ -742,7 +757,8 @@ public interface AMQPEndpointBuilder {
          * serializable. Camel will exclude any non-serializable objects and log
          * it at WARN level. You must enable this option on both the producer
          * and consumer side, so Camel knows the payloads is an Exchange and not
-         * a regular payload. The option will be converted to a boolean type.
+         * a regular payload. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T transferExchange(String transferExchange) {
             this.properties.put("transferExchange", transferExchange);
@@ -757,7 +773,8 @@ public interface AMQPEndpointBuilder {
          * fault flag will be set on the
          * org.apache.camel.Message#setFault(boolean). You may want to enable
          * this when using Camel components that support faults such as SOAP
-         * based such as cxf or spring-ws. The option is a boolean type.
+         * based such as cxf or spring-ws. The option is a <code>boolean</code>
+         * type.
          */
         public T transferFault(boolean transferFault) {
             this.properties.put("transferFault", transferFault);
@@ -773,7 +790,7 @@ public interface AMQPEndpointBuilder {
          * org.apache.camel.Message#setFault(boolean). You may want to enable
          * this when using Camel components that support faults such as SOAP
          * based such as cxf or spring-ws. The option will be converted to a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public T transferFault(String transferFault) {
             this.properties.put("transferFault", transferFault);
@@ -781,7 +798,8 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Specifies whether JMSMessageID should always be used as
-         * JMSCorrelationID for InOut messages. The option is a boolean type.
+         * JMSCorrelationID for InOut messages. The option is a
+         * <code>boolean</code> type.
          */
         public T useMessageIDAsCorrelationID(boolean useMessageIDAsCorrelationID) {
             this.properties.put("useMessageIDAsCorrelationID", useMessageIDAsCorrelationID);
@@ -790,7 +808,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Specifies whether JMSMessageID should always be used as
          * JMSCorrelationID for InOut messages. The option will be converted to
-         * a boolean type.
+         * a <code>boolean</code> type.
          */
         public T useMessageIDAsCorrelationID(String useMessageIDAsCorrelationID) {
             this.properties.put("useMessageIDAsCorrelationID", useMessageIDAsCorrelationID);
@@ -800,7 +818,7 @@ public interface AMQPEndpointBuilder {
          * Number of times to wait for provisional correlation id to be updated
          * to the actual correlation id when doing request/reply over JMS and
          * when the option useMessageIDAsCorrelationID is enabled. The option is
-         * a int type.
+         * a <code>int</code> type.
          */
         public T waitForProvisionCorrelationToBeUpdatedCounter(
                 int waitForProvisionCorrelationToBeUpdatedCounter) {
@@ -811,7 +829,7 @@ public interface AMQPEndpointBuilder {
          * Number of times to wait for provisional correlation id to be updated
          * to the actual correlation id when doing request/reply over JMS and
          * when the option useMessageIDAsCorrelationID is enabled. The option
-         * will be converted to a int type.
+         * will be converted to a <code>int</code> type.
          */
         public T waitForProvisionCorrelationToBeUpdatedCounter(
                 String waitForProvisionCorrelationToBeUpdatedCounter) {
@@ -820,7 +838,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Interval in millis to sleep each time while waiting for provisional
-         * correlation id to be updated. The option is a long type.
+         * correlation id to be updated. The option is a <code>long</code> type.
          */
         public T waitForProvisionCorrelationToBeUpdatedThreadSleepingTime(
                 long waitForProvisionCorrelationToBeUpdatedThreadSleepingTime) {
@@ -829,8 +847,8 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Interval in millis to sleep each time while waiting for provisional
-         * correlation id to be updated. The option will be converted to a long
-         * type.
+         * correlation id to be updated. The option will be converted to a
+         * <code>long</code> type.
          */
         public T waitForProvisionCorrelationToBeUpdatedThreadSleepingTime(
                 String waitForProvisionCorrelationToBeUpdatedThreadSleepingTime) {
@@ -840,7 +858,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Password to use with the ConnectionFactory. You can also configure
          * username/password directly on the ConnectionFactory. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T password(String password) {
             this.properties.put("password", password);
@@ -849,15 +867,15 @@ public interface AMQPEndpointBuilder {
         /**
          * Username to use with the ConnectionFactory. You can also configure
          * username/password directly on the ConnectionFactory. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T username(String username) {
             this.properties.put("username", username);
             return (T) this;
         }
         /**
-         * Specifies whether to use transacted mode. The option is a boolean
-         * type.
+         * Specifies whether to use transacted mode. The option is a
+         * <code>boolean</code> type.
          */
         public T transacted(boolean transacted) {
             this.properties.put("transacted", transacted);
@@ -865,7 +883,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Specifies whether to use transacted mode. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T transacted(String transacted) {
             this.properties.put("transacted", transacted);
@@ -874,7 +892,7 @@ public interface AMQPEndpointBuilder {
         /**
          * If true, Camel will create a JmsTransactionManager, if there is no
          * transactionManager injected when option transacted=true. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T lazyCreateTransactionManager(
                 boolean lazyCreateTransactionManager) {
@@ -884,7 +902,7 @@ public interface AMQPEndpointBuilder {
         /**
          * If true, Camel will create a JmsTransactionManager, if there is no
          * transactionManager injected when option transacted=true. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T lazyCreateTransactionManager(
                 String lazyCreateTransactionManager) {
@@ -893,7 +911,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * The Spring transaction manager to use. The option is a
-         * org.springframework.transaction.PlatformTransactionManager type.
+         * <code>org.springframework.transaction.PlatformTransactionManager</code> type.
          */
         public T transactionManager(Object transactionManager) {
             this.properties.put("transactionManager", transactionManager);
@@ -901,15 +919,16 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * The Spring transaction manager to use. The option will be converted
-         * to a org.springframework.transaction.PlatformTransactionManager type.
+         * to a
+         * <code>org.springframework.transaction.PlatformTransactionManager</code> type.
          */
         public T transactionManager(String transactionManager) {
             this.properties.put("transactionManager", transactionManager);
             return (T) this;
         }
         /**
-         * The name of the transaction to use. The option is a java.lang.String
-         * type.
+         * The name of the transaction to use. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T transactionName(String transactionName) {
             this.properties.put("transactionName", transactionName);
@@ -917,7 +936,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * The timeout value of the transaction (in seconds), if using
-         * transacted mode. The option is a int type.
+         * transacted mode. The option is a <code>int</code> type.
          */
         public T transactionTimeout(int transactionTimeout) {
             this.properties.put("transactionTimeout", transactionTimeout);
@@ -925,7 +944,8 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * The timeout value of the transaction (in seconds), if using
-         * transacted mode. The option will be converted to a int type.
+         * transacted mode. The option will be converted to a <code>int</code>
+         * type.
          */
         public T transactionTimeout(String transactionTimeout) {
             this.properties.put("transactionTimeout", transactionTimeout);
@@ -944,7 +964,7 @@ public interface AMQPEndpointBuilder {
         /**
          * The JMS acknowledgement name, which is one of: SESSION_TRANSACTED,
          * CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE. The option
-         * is a java.lang.String type.
+         * is a <code>java.lang.String</code> type.
          */
         public AMQPConsumerBuilder acknowledgementModeName(
                 String acknowledgementModeName) {
@@ -961,7 +981,7 @@ public interface AMQPEndpointBuilder {
          * the next message from the JMS queue. Note if transacted has been
          * enabled, then asyncConsumer=true does not run asynchronously, as
          * transaction must be executed synchronously (Camel 3.0 may support
-         * async transactions). The option is a boolean type.
+         * async transactions). The option is a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder asyncConsumer(boolean asyncConsumer) {
             this.properties.put("asyncConsumer", asyncConsumer);
@@ -977,7 +997,8 @@ public interface AMQPEndpointBuilder {
          * the next message from the JMS queue. Note if transacted has been
          * enabled, then asyncConsumer=true does not run asynchronously, as
          * transaction must be executed synchronously (Camel 3.0 may support
-         * async transactions). The option will be converted to a boolean type.
+         * async transactions). The option will be converted to a
+         * <code>boolean</code> type.
          */
         public AMQPConsumerBuilder asyncConsumer(String asyncConsumer) {
             this.properties.put("asyncConsumer", asyncConsumer);
@@ -985,7 +1006,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Specifies whether the consumer container should auto-startup. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder autoStartup(boolean autoStartup) {
             this.properties.put("autoStartup", autoStartup);
@@ -993,7 +1014,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Specifies whether the consumer container should auto-startup. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder autoStartup(String autoStartup) {
             this.properties.put("autoStartup", autoStartup);
@@ -1006,7 +1027,7 @@ public interface AMQPEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
@@ -1019,7 +1040,7 @@ public interface AMQPEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
@@ -1027,7 +1048,8 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Sets the cache level by ID for the underlying JMS resources. See
-         * cacheLevelName option for more details. The option is a int type.
+         * cacheLevelName option for more details. The option is a
+         * <code>int</code> type.
          */
         public AMQPConsumerBuilder cacheLevel(int cacheLevel) {
             this.properties.put("cacheLevel", cacheLevel);
@@ -1036,7 +1058,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Sets the cache level by ID for the underlying JMS resources. See
          * cacheLevelName option for more details. The option will be converted
-         * to a int type.
+         * to a <code>int</code> type.
          */
         public AMQPConsumerBuilder cacheLevel(String cacheLevel) {
             this.properties.put("cacheLevel", cacheLevel);
@@ -1047,7 +1069,7 @@ public interface AMQPEndpointBuilder {
          * Possible values are: CACHE_AUTO, CACHE_CONNECTION, CACHE_CONSUMER,
          * CACHE_NONE, and CACHE_SESSION. The default setting is CACHE_AUTO. See
          * the Spring documentation and Transactions Cache Levels for more
-         * information. The option is a java.lang.String type.
+         * information. The option is a <code>java.lang.String</code> type.
          */
         public AMQPConsumerBuilder cacheLevelName(String cacheLevelName) {
             this.properties.put("cacheLevelName", cacheLevelName);
@@ -1059,7 +1081,8 @@ public interface AMQPEndpointBuilder {
          * maxMessagesPerTask option to control dynamic scaling up/down of
          * threads. When doing request/reply over JMS then the option
          * replyToConcurrentConsumers is used to control number of concurrent
-         * consumers on the reply message listener. The option is a int type.
+         * consumers on the reply message listener. The option is a
+         * <code>int</code> type.
          */
         public AMQPConsumerBuilder concurrentConsumers(int concurrentConsumers) {
             this.properties.put("concurrentConsumers", concurrentConsumers);
@@ -1072,7 +1095,7 @@ public interface AMQPEndpointBuilder {
          * threads. When doing request/reply over JMS then the option
          * replyToConcurrentConsumers is used to control number of concurrent
          * consumers on the reply message listener. The option will be converted
-         * to a int type.
+         * to a <code>int</code> type.
          */
         public AMQPConsumerBuilder concurrentConsumers(
                 String concurrentConsumers) {
@@ -1085,7 +1108,8 @@ public interface AMQPEndpointBuilder {
          * maxMessagesPerTask option to control dynamic scaling up/down of
          * threads. When doing request/reply over JMS then the option
          * replyToMaxConcurrentConsumers is used to control number of concurrent
-         * consumers on the reply message listener. The option is a int type.
+         * consumers on the reply message listener. The option is a
+         * <code>int</code> type.
          */
         public AMQPConsumerBuilder maxConcurrentConsumers(
                 int maxConcurrentConsumers) {
@@ -1099,7 +1123,7 @@ public interface AMQPEndpointBuilder {
          * threads. When doing request/reply over JMS then the option
          * replyToMaxConcurrentConsumers is used to control number of concurrent
          * consumers on the reply message listener. The option will be converted
-         * to a int type.
+         * to a <code>int</code> type.
          */
         public AMQPConsumerBuilder maxConcurrentConsumers(
                 String maxConcurrentConsumers) {
@@ -1109,7 +1133,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Provides an explicit ReplyTo destination, which overrides any
          * incoming value of Message.getJMSReplyTo(). The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public AMQPConsumerBuilder replyTo(String replyTo) {
             this.properties.put("replyTo", replyTo);
@@ -1117,7 +1141,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Specifies whether to use persistent delivery by default for replies.
-         * The option is a boolean type.
+         * The option is a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder replyToDeliveryPersistent(
                 boolean replyToDeliveryPersistent) {
@@ -1126,7 +1150,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Specifies whether to use persistent delivery by default for replies.
-         * The option will be converted to a boolean type.
+         * The option will be converted to a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder replyToDeliveryPersistent(
                 String replyToDeliveryPersistent) {
@@ -1134,7 +1158,8 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
-         * Sets the JMS selector to use. The option is a java.lang.String type.
+         * Sets the JMS selector to use. The option is a
+         * <code>java.lang.String</code> type.
          */
         public AMQPConsumerBuilder selector(String selector) {
             this.properties.put("selector", selector);
@@ -1148,7 +1173,7 @@ public interface AMQPEndpointBuilder {
          * subscriptionName value (unless your message listener class name is
          * good enough as subscription name). Only makes sense when listening to
          * a topic (pub-sub domain), therefore this method switches the
-         * pubSubDomain flag as well. The option is a boolean type.
+         * pubSubDomain flag as well. The option is a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder subscriptionDurable(
                 boolean subscriptionDurable) {
@@ -1163,8 +1188,8 @@ public interface AMQPEndpointBuilder {
          * subscriptionName value (unless your message listener class name is
          * good enough as subscription name). Only makes sense when listening to
          * a topic (pub-sub domain), therefore this method switches the
-         * pubSubDomain flag as well. The option will be converted to a boolean
-         * type.
+         * pubSubDomain flag as well. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public AMQPConsumerBuilder subscriptionDurable(
                 String subscriptionDurable) {
@@ -1179,7 +1204,7 @@ public interface AMQPEndpointBuilder {
          * Note: Only 1 concurrent consumer (which is the default of this
          * message listener container) is allowed for each subscription, except
          * for a shared subscription (which requires JMS 2.0). The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public AMQPConsumerBuilder subscriptionName(String subscriptionName) {
             this.properties.put("subscriptionName", subscriptionName);
@@ -1196,7 +1221,7 @@ public interface AMQPEndpointBuilder {
          * subscriptionDurable as well. Only makes sense when listening to a
          * topic (pub-sub domain), therefore this method switches the
          * pubSubDomain flag as well. Requires a JMS 2.0 compatible message
-         * broker. The option is a boolean type.
+         * broker. The option is a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder subscriptionShared(boolean subscriptionShared) {
             this.properties.put("subscriptionShared", subscriptionShared);
@@ -1213,7 +1238,7 @@ public interface AMQPEndpointBuilder {
          * subscriptionDurable as well. Only makes sense when listening to a
          * topic (pub-sub domain), therefore this method switches the
          * pubSubDomain flag as well. Requires a JMS 2.0 compatible message
-         * broker. The option will be converted to a boolean type.
+         * broker. The option will be converted to a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder subscriptionShared(String subscriptionShared) {
             this.properties.put("subscriptionShared", subscriptionShared);
@@ -1228,7 +1253,7 @@ public interface AMQPEndpointBuilder {
          * redeliveries, which yet again may be rejected, and eventually the
          * message may be moved at a dead letter queue on the JMS broker. To
          * avoid this its recommended to enable this option. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public AMQPConsumerBuilder acceptMessagesWhileStopping(
                 boolean acceptMessagesWhileStopping) {
@@ -1244,7 +1269,7 @@ public interface AMQPEndpointBuilder {
          * redeliveries, which yet again may be rejected, and eventually the
          * message may be moved at a dead letter queue on the JMS broker. To
          * avoid this its recommended to enable this option. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder acceptMessagesWhileStopping(
                 String acceptMessagesWhileStopping) {
@@ -1259,7 +1284,7 @@ public interface AMQPEndpointBuilder {
          * and org.apache.camel.CamelContext is currently being stopped. This
          * quick stop ability is enabled by default in the regular JMS consumers
          * but to enable for reply managers you must enable this flag. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder allowReplyManagerQuickStop(
                 boolean allowReplyManagerQuickStop) {
@@ -1274,7 +1299,7 @@ public interface AMQPEndpointBuilder {
          * and org.apache.camel.CamelContext is currently being stopped. This
          * quick stop ability is enabled by default in the regular JMS consumers
          * but to enable for reply managers you must enable this flag. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder allowReplyManagerQuickStop(
                 String allowReplyManagerQuickStop) {
@@ -1291,8 +1316,8 @@ public interface AMQPEndpointBuilder {
          * Custom is specified, the MessageListenerContainerFactory defined by
          * the messageListenerContainerFactory option will determine what
          * org.springframework.jms.listener.AbstractMessageListenerContainer to
-         * use. The option is a org.apache.camel.component.jms.ConsumerType
-         * type.
+         * use. The option is a
+         * <code>org.apache.camel.component.jms.ConsumerType</code> type.
          */
         public AMQPConsumerBuilder consumerType(ConsumerType consumerType) {
             this.properties.put("consumerType", consumerType);
@@ -1309,7 +1334,7 @@ public interface AMQPEndpointBuilder {
          * the messageListenerContainerFactory option will determine what
          * org.springframework.jms.listener.AbstractMessageListenerContainer to
          * use. The option will be converted to a
-         * org.apache.camel.component.jms.ConsumerType type.
+         * <code>org.apache.camel.component.jms.ConsumerType</code> type.
          */
         public AMQPConsumerBuilder consumerType(String consumerType) {
             this.properties.put("consumerType", consumerType);
@@ -1326,7 +1351,8 @@ public interface AMQPEndpointBuilder {
          * consumers. The use of ThreadPool is recommended to reduce thread
          * trash in elastic configurations with dynamically increasing and
          * decreasing concurrent consumers. The option is a
-         * org.apache.camel.component.jms.DefaultTaskExecutorType type.
+         * <code>org.apache.camel.component.jms.DefaultTaskExecutorType</code>
+         * type.
          */
         public AMQPConsumerBuilder defaultTaskExecutorType(
                 DefaultTaskExecutorType defaultTaskExecutorType) {
@@ -1344,7 +1370,8 @@ public interface AMQPEndpointBuilder {
          * consumers. The use of ThreadPool is recommended to reduce thread
          * trash in elastic configurations with dynamically increasing and
          * decreasing concurrent consumers. The option will be converted to a
-         * org.apache.camel.component.jms.DefaultTaskExecutorType type.
+         * <code>org.apache.camel.component.jms.DefaultTaskExecutorType</code>
+         * type.
          */
         public AMQPConsumerBuilder defaultTaskExecutorType(
                 String defaultTaskExecutorType) {
@@ -1356,7 +1383,7 @@ public interface AMQPEndpointBuilder {
          * message is loaded which generally is inefficient as the JMS
          * properties may not be required but sometimes can catch early any
          * issues with the underlying JMS provider and the use of JMS
-         * properties. The option is a boolean type.
+         * properties. The option is a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder eagerLoadingOfProperties(
                 boolean eagerLoadingOfProperties) {
@@ -1368,7 +1395,8 @@ public interface AMQPEndpointBuilder {
          * message is loaded which generally is inefficient as the JMS
          * properties may not be required but sometimes can catch early any
          * issues with the underlying JMS provider and the use of JMS
-         * properties. The option will be converted to a boolean type.
+         * properties. The option will be converted to a <code>boolean</code>
+         * type.
          */
         public AMQPConsumerBuilder eagerLoadingOfProperties(
                 String eagerLoadingOfProperties) {
@@ -1380,7 +1408,7 @@ public interface AMQPEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public AMQPConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -1392,7 +1420,8 @@ public interface AMQPEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public AMQPConsumerBuilder exceptionHandler(String exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
@@ -1400,7 +1429,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AMQPConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -1409,7 +1438,8 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AMQPConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
@@ -1417,7 +1447,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Specifies whether the listener session should be exposed when
-         * consuming messages. The option is a boolean type.
+         * consuming messages. The option is a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder exposeListenerSession(
                 boolean exposeListenerSession) {
@@ -1426,7 +1456,8 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Specifies whether the listener session should be exposed when
-         * consuming messages. The option will be converted to a boolean type.
+         * consuming messages. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public AMQPConsumerBuilder exposeListenerSession(
                 String exposeListenerSession) {
@@ -1437,7 +1468,7 @@ public interface AMQPEndpointBuilder {
          * Whether a JMS consumer is allowed to send a reply message to the same
          * destination that the consumer is using to consume from. This prevents
          * an endless loop by consuming and sending back the same message to
-         * itself. The option is a boolean type.
+         * itself. The option is a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder replyToSameDestinationAllowed(
                 boolean replyToSameDestinationAllowed) {
@@ -1448,7 +1479,7 @@ public interface AMQPEndpointBuilder {
          * Whether a JMS consumer is allowed to send a reply message to the same
          * destination that the consumer is using to consume from. This prevents
          * an endless loop by consuming and sending back the same message to
-         * itself. The option will be converted to a boolean type.
+         * itself. The option will be converted to a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder replyToSameDestinationAllowed(
                 String replyToSameDestinationAllowed) {
@@ -1457,7 +1488,8 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Allows you to specify a custom task executor for consuming messages.
-         * The option is a org.springframework.core.task.TaskExecutor type.
+         * The option is a
+         * <code>org.springframework.core.task.TaskExecutor</code> type.
          */
         public AMQPConsumerBuilder taskExecutor(Object taskExecutor) {
             this.properties.put("taskExecutor", taskExecutor);
@@ -1466,7 +1498,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Allows you to specify a custom task executor for consuming messages.
          * The option will be converted to a
-         * org.springframework.core.task.TaskExecutor type.
+         * <code>org.springframework.core.task.TaskExecutor</code> type.
          */
         public AMQPConsumerBuilder taskExecutor(String taskExecutor) {
             this.properties.put("taskExecutor", taskExecutor);
@@ -1475,7 +1507,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Allows to configure the default errorHandler logging level for
          * logging uncaught exceptions. The option is a
-         * org.apache.camel.LoggingLevel type.
+         * <code>org.apache.camel.LoggingLevel</code> type.
          */
         public AMQPConsumerBuilder errorHandlerLoggingLevel(
                 LoggingLevel errorHandlerLoggingLevel) {
@@ -1485,7 +1517,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Allows to configure the default errorHandler logging level for
          * logging uncaught exceptions. The option will be converted to a
-         * org.apache.camel.LoggingLevel type.
+         * <code>org.apache.camel.LoggingLevel</code> type.
          */
         public AMQPConsumerBuilder errorHandlerLoggingLevel(
                 String errorHandlerLoggingLevel) {
@@ -1494,7 +1526,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Allows to control whether stacktraces should be logged or not, by the
-         * default errorHandler. The option is a boolean type.
+         * default errorHandler. The option is a <code>boolean</code> type.
          */
         public AMQPConsumerBuilder errorHandlerLogStackTrace(
                 boolean errorHandlerLogStackTrace) {
@@ -1503,7 +1535,8 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Allows to control whether stacktraces should be logged or not, by the
-         * default errorHandler. The option will be converted to a boolean type.
+         * default errorHandler. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public AMQPConsumerBuilder errorHandlerLogStackTrace(
                 String errorHandlerLogStackTrace) {
@@ -1523,7 +1556,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Specifies the delivery mode to be used. Possibles values are those
          * defined by javax.jms.DeliveryMode. NON_PERSISTENT = 1 and PERSISTENT
-         * = 2. The option is a java.lang.Integer type.
+         * = 2. The option is a <code>java.lang.Integer</code> type.
          */
         public AMQPProducerBuilder deliveryMode(Integer deliveryMode) {
             this.properties.put("deliveryMode", deliveryMode);
@@ -1532,7 +1565,8 @@ public interface AMQPEndpointBuilder {
         /**
          * Specifies the delivery mode to be used. Possibles values are those
          * defined by javax.jms.DeliveryMode. NON_PERSISTENT = 1 and PERSISTENT
-         * = 2. The option will be converted to a java.lang.Integer type.
+         * = 2. The option will be converted to a <code>java.lang.Integer</code>
+         * type.
          */
         public AMQPProducerBuilder deliveryMode(String deliveryMode) {
             this.properties.put("deliveryMode", deliveryMode);
@@ -1540,7 +1574,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Specifies whether persistent delivery is used by default. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public AMQPProducerBuilder deliveryPersistent(boolean deliveryPersistent) {
             this.properties.put("deliveryPersistent", deliveryPersistent);
@@ -1548,7 +1582,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Specifies whether persistent delivery is used by default. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public AMQPProducerBuilder deliveryPersistent(String deliveryPersistent) {
             this.properties.put("deliveryPersistent", deliveryPersistent);
@@ -1561,7 +1595,7 @@ public interface AMQPEndpointBuilder {
          * options are applied to the current endpoint. This contrasts with the
          * preserveMessageQos option, which operates at message granularity,
          * reading QoS properties exclusively from the Camel In message headers.
-         * The option is a java.lang.Boolean type.
+         * The option is a <code>java.lang.Boolean</code> type.
          */
         public AMQPProducerBuilder explicitQosEnabled(Boolean explicitQosEnabled) {
             this.properties.put("explicitQosEnabled", explicitQosEnabled);
@@ -1574,7 +1608,8 @@ public interface AMQPEndpointBuilder {
          * options are applied to the current endpoint. This contrasts with the
          * preserveMessageQos option, which operates at message granularity,
          * reading QoS properties exclusively from the Camel In message headers.
-         * The option will be converted to a java.lang.Boolean type.
+         * The option will be converted to a <code>java.lang.Boolean</code>
+         * type.
          */
         public AMQPProducerBuilder explicitQosEnabled(String explicitQosEnabled) {
             this.properties.put("explicitQosEnabled", explicitQosEnabled);
@@ -1582,7 +1617,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Sets whether date headers should be formatted according to the ISO
-         * 8601 standard. The option is a boolean type.
+         * 8601 standard. The option is a <code>boolean</code> type.
          */
         public AMQPProducerBuilder formatDateHeadersToIso8601(
                 boolean formatDateHeadersToIso8601) {
@@ -1591,7 +1626,8 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * Sets whether date headers should be formatted according to the ISO
-         * 8601 standard. The option will be converted to a boolean type.
+         * 8601 standard. The option will be converted to a <code>boolean</code>
+         * type.
          */
         public AMQPProducerBuilder formatDateHeadersToIso8601(
                 String formatDateHeadersToIso8601) {
@@ -1607,7 +1643,8 @@ public interface AMQPEndpointBuilder {
          * the endpoint instead. So, when using this option, the headers
          * override the values from the endpoint. The explicitQosEnabled option,
          * by contrast, will only use options set on the endpoint, and not
-         * values from the message header. The option is a boolean type.
+         * values from the message header. The option is a <code>boolean</code>
+         * type.
          */
         public AMQPProducerBuilder preserveMessageQos(boolean preserveMessageQos) {
             this.properties.put("preserveMessageQos", preserveMessageQos);
@@ -1623,7 +1660,7 @@ public interface AMQPEndpointBuilder {
          * override the values from the endpoint. The explicitQosEnabled option,
          * by contrast, will only use options set on the endpoint, and not
          * values from the message header. The option will be converted to a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public AMQPProducerBuilder preserveMessageQos(String preserveMessageQos) {
             this.properties.put("preserveMessageQos", preserveMessageQos);
@@ -1633,7 +1670,7 @@ public interface AMQPEndpointBuilder {
          * Values greater than 1 specify the message priority when sending
          * (where 0 is the lowest priority and 9 is the highest). The
          * explicitQosEnabled option must also be enabled in order for this
-         * option to have any effect. The option is a int type.
+         * option to have any effect. The option is a <code>int</code> type.
          */
         public AMQPProducerBuilder priority(int priority) {
             this.properties.put("priority", priority);
@@ -1643,8 +1680,8 @@ public interface AMQPEndpointBuilder {
          * Values greater than 1 specify the message priority when sending
          * (where 0 is the lowest priority and 9 is the highest). The
          * explicitQosEnabled option must also be enabled in order for this
-         * option to have any effect. The option will be converted to a int
-         * type.
+         * option to have any effect. The option will be converted to a
+         * <code>int</code> type.
          */
         public AMQPProducerBuilder priority(String priority) {
             this.properties.put("priority", priority);
@@ -1653,7 +1690,8 @@ public interface AMQPEndpointBuilder {
         /**
          * Specifies the default number of concurrent consumers when doing
          * request/reply over JMS. See also the maxMessagesPerTask option to
-         * control dynamic scaling up/down of threads. The option is a int type.
+         * control dynamic scaling up/down of threads. The option is a
+         * <code>int</code> type.
          */
         public AMQPProducerBuilder replyToConcurrentConsumers(
                 int replyToConcurrentConsumers) {
@@ -1664,7 +1702,7 @@ public interface AMQPEndpointBuilder {
          * Specifies the default number of concurrent consumers when doing
          * request/reply over JMS. See also the maxMessagesPerTask option to
          * control dynamic scaling up/down of threads. The option will be
-         * converted to a int type.
+         * converted to a <code>int</code> type.
          */
         public AMQPProducerBuilder replyToConcurrentConsumers(
                 String replyToConcurrentConsumers) {
@@ -1674,7 +1712,8 @@ public interface AMQPEndpointBuilder {
         /**
          * Specifies the maximum number of concurrent consumers when using
          * request/reply over JMS. See also the maxMessagesPerTask option to
-         * control dynamic scaling up/down of threads. The option is a int type.
+         * control dynamic scaling up/down of threads. The option is a
+         * <code>int</code> type.
          */
         public AMQPProducerBuilder replyToMaxConcurrentConsumers(
                 int replyToMaxConcurrentConsumers) {
@@ -1685,7 +1724,7 @@ public interface AMQPEndpointBuilder {
          * Specifies the maximum number of concurrent consumers when using
          * request/reply over JMS. See also the maxMessagesPerTask option to
          * control dynamic scaling up/down of threads. The option will be
-         * converted to a int type.
+         * converted to a <code>int</code> type.
          */
         public AMQPProducerBuilder replyToMaxConcurrentConsumers(
                 String replyToMaxConcurrentConsumers) {
@@ -1695,7 +1734,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Specifies the maximum number of concurrent consumers for continue
          * routing when timeout occurred when using request/reply over JMS. The
-         * option is a int type.
+         * option is a <code>int</code> type.
          */
         public AMQPProducerBuilder replyToOnTimeoutMaxConcurrentConsumers(
                 int replyToOnTimeoutMaxConcurrentConsumers) {
@@ -1705,7 +1744,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Specifies the maximum number of concurrent consumers for continue
          * routing when timeout occurred when using request/reply over JMS. The
-         * option will be converted to a int type.
+         * option will be converted to a <code>int</code> type.
          */
         public AMQPProducerBuilder replyToOnTimeoutMaxConcurrentConsumers(
                 String replyToOnTimeoutMaxConcurrentConsumers) {
@@ -1716,7 +1755,8 @@ public interface AMQPEndpointBuilder {
          * Provides an explicit ReplyTo destination in the JMS message, which
          * overrides the setting of replyTo. It is useful if you want to forward
          * the message to a remote Queue and receive the reply message from the
-         * ReplyTo destination. The option is a java.lang.String type.
+         * ReplyTo destination. The option is a <code>java.lang.String</code>
+         * type.
          */
         public AMQPProducerBuilder replyToOverride(String replyToOverride) {
             this.properties.put("replyToOverride", replyToOverride);
@@ -1732,7 +1772,8 @@ public interface AMQPEndpointBuilder {
          * and especially the notes about the implications if running in a
          * clustered environment, and the fact that Shared reply queues has
          * lower performance than its alternatives Temporary and Exclusive. The
-         * option is a org.apache.camel.component.jms.ReplyToType type.
+         * option is a <code>org.apache.camel.component.jms.ReplyToType</code>
+         * type.
          */
         public AMQPProducerBuilder replyToType(ReplyToType replyToType) {
             this.properties.put("replyToType", replyToType);
@@ -1749,7 +1790,7 @@ public interface AMQPEndpointBuilder {
          * clustered environment, and the fact that Shared reply queues has
          * lower performance than its alternatives Temporary and Exclusive. The
          * option will be converted to a
-         * org.apache.camel.component.jms.ReplyToType type.
+         * <code>org.apache.camel.component.jms.ReplyToType</code> type.
          */
         public AMQPProducerBuilder replyToType(String replyToType) {
             this.properties.put("replyToType", replyToType);
@@ -1761,7 +1802,7 @@ public interface AMQPEndpointBuilder {
          * the header CamelJmsRequestTimeout to override this endpoint
          * configured timeout value, and thus have per message individual
          * timeout values. See also the requestTimeoutCheckerInterval option.
-         * The option is a long type.
+         * The option is a <code>long</code> type.
          */
         public AMQPProducerBuilder requestTimeout(long requestTimeout) {
             this.properties.put("requestTimeout", requestTimeout);
@@ -1773,7 +1814,7 @@ public interface AMQPEndpointBuilder {
          * the header CamelJmsRequestTimeout to override this endpoint
          * configured timeout value, and thus have per message individual
          * timeout values. See also the requestTimeoutCheckerInterval option.
-         * The option will be converted to a long type.
+         * The option will be converted to a <code>long</code> type.
          */
         public AMQPProducerBuilder requestTimeout(String requestTimeout) {
             this.properties.put("requestTimeout", requestTimeout);
@@ -1781,7 +1822,7 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * When sending messages, specifies the time-to-live of the message (in
-         * milliseconds). The option is a long type.
+         * milliseconds). The option is a <code>long</code> type.
          */
         public AMQPProducerBuilder timeToLive(long timeToLive) {
             this.properties.put("timeToLive", timeToLive);
@@ -1789,7 +1830,8 @@ public interface AMQPEndpointBuilder {
         }
         /**
          * When sending messages, specifies the time-to-live of the message (in
-         * milliseconds). The option will be converted to a long type.
+         * milliseconds). The option will be converted to a <code>long</code>
+         * type.
          */
         public AMQPProducerBuilder timeToLive(String timeToLive) {
             this.properties.put("timeToLive", timeToLive);
@@ -1801,8 +1843,8 @@ public interface AMQPEndpointBuilder {
          * message systems such as WMQ do this with header names using prefix
          * JMS_IBM_MQMD_ containing values with byte array or other invalid
          * types. You can specify multiple header names separated by comma, and
-         * use as suffix for wildcard matching. The option is a java.lang.String
-         * type.
+         * use as suffix for wildcard matching. The option is a
+         * <code>java.lang.String</code> type.
          */
         public AMQPProducerBuilder allowAdditionalHeaders(
                 String allowAdditionalHeaders) {
@@ -1812,7 +1854,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Whether to allow sending messages with no body. If this option is
          * false and the message body is null, then an JMSException is thrown.
-         * The option is a boolean type.
+         * The option is a <code>boolean</code> type.
          */
         public AMQPProducerBuilder allowNullBody(boolean allowNullBody) {
             this.properties.put("allowNullBody", allowNullBody);
@@ -1821,7 +1863,7 @@ public interface AMQPEndpointBuilder {
         /**
          * Whether to allow sending messages with no body. If this option is
          * false and the message body is null, then an JMSException is thrown.
-         * The option will be converted to a boolean type.
+         * The option will be converted to a <code>boolean</code> type.
          */
         public AMQPProducerBuilder allowNullBody(String allowNullBody) {
             this.properties.put("allowNullBody", allowNullBody);
@@ -1833,7 +1875,8 @@ public interface AMQPEndpointBuilder {
          * needed in some situations, such as when a
          * replyToDestinationSelectorName is set (incidentally, Camel will set
          * the alwaysCopyMessage option to true, if a
-         * replyToDestinationSelectorName is set). The option is a boolean type.
+         * replyToDestinationSelectorName is set). The option is a
+         * <code>boolean</code> type.
          */
         public AMQPProducerBuilder alwaysCopyMessage(boolean alwaysCopyMessage) {
             this.properties.put("alwaysCopyMessage", alwaysCopyMessage);
@@ -1846,7 +1889,7 @@ public interface AMQPEndpointBuilder {
          * replyToDestinationSelectorName is set (incidentally, Camel will set
          * the alwaysCopyMessage option to true, if a
          * replyToDestinationSelectorName is set). The option will be converted
-         * to a boolean type.
+         * to a <code>boolean</code> type.
          */
         public AMQPProducerBuilder alwaysCopyMessage(String alwaysCopyMessage) {
             this.properties.put("alwaysCopyMessage", alwaysCopyMessage);
@@ -1859,7 +1902,7 @@ public interface AMQPEndpointBuilder {
          * using JMSCorrelationID JMS property. If used JMSCorrelationID will
          * not be used or set by Camel. The value of here named property will be
          * generated if not supplied in the header of the message under the same
-         * name. The option is a java.lang.String type.
+         * name. The option is a <code>java.lang.String</code> type.
          */
         public AMQPProducerBuilder correlationProperty(
                 String correlationProperty) {
@@ -1875,7 +1918,7 @@ public interface AMQPEndpointBuilder {
          * to archive. So you can use disableTimeToLive=true to not set a time
          * to live value on the sent message. Then the message will not expire
          * on the receiver system. See below in section About time to live for
-         * more details. The option is a boolean type.
+         * more details. The option is a <code>boolean</code> type.
          */
         public AMQPProducerBuilder disableTimeToLive(boolean disableTimeToLive) {
             this.properties.put("disableTimeToLive", disableTimeToLive);
@@ -1890,7 +1933,8 @@ public interface AMQPEndpointBuilder {
          * to archive. So you can use disableTimeToLive=true to not set a time
          * to live value on the sent message. Then the message will not expire
          * on the receiver system. See below in section About time to live for
-         * more details. The option will be converted to a boolean type.
+         * more details. The option will be converted to a <code>boolean</code>
+         * type.
          */
         public AMQPProducerBuilder disableTimeToLive(String disableTimeToLive) {
             this.properties.put("disableTimeToLive", disableTimeToLive);
@@ -1900,7 +1944,8 @@ public interface AMQPEndpointBuilder {
          * When using mapJmsMessage=false Camel will create a new JMS message to
          * send to a new JMS destination if you touch the headers (get or set)
          * during the route. Set this option to true to force Camel to send the
-         * original JMS message that was received. The option is a boolean type.
+         * original JMS message that was received. The option is a
+         * <code>boolean</code> type.
          */
         public AMQPProducerBuilder forceSendOriginalMessage(
                 boolean forceSendOriginalMessage) {
@@ -1912,7 +1957,7 @@ public interface AMQPEndpointBuilder {
          * send to a new JMS destination if you touch the headers (get or set)
          * during the route. Set this option to true to force Camel to send the
          * original JMS message that was received. The option will be converted
-         * to a boolean type.
+         * to a <code>boolean</code> type.
          */
         public AMQPProducerBuilder forceSendOriginalMessage(
                 String forceSendOriginalMessage) {
@@ -1923,8 +1968,8 @@ public interface AMQPEndpointBuilder {
          * Only applicable when sending to JMS destination using InOnly (eg fire
          * and forget). Enabling this option will enrich the Camel Exchange with
          * the actual JMSMessageID that was used by the JMS client when the
-         * message was sent to the JMS destination. The option is a boolean
-         * type.
+         * message was sent to the JMS destination. The option is a
+         * <code>boolean</code> type.
          */
         public AMQPProducerBuilder includeSentJMSMessageID(
                 boolean includeSentJMSMessageID) {
@@ -1936,7 +1981,7 @@ public interface AMQPEndpointBuilder {
          * and forget). Enabling this option will enrich the Camel Exchange with
          * the actual JMSMessageID that was used by the JMS client when the
          * message was sent to the JMS destination. The option will be converted
-         * to a boolean type.
+         * to a <code>boolean</code> type.
          */
         public AMQPProducerBuilder includeSentJMSMessageID(
                 String includeSentJMSMessageID) {
@@ -1953,7 +1998,7 @@ public interface AMQPEndpointBuilder {
          * replyToCacheLevelName=CACHE_NONE to work. Note: If using temporary
          * queues then CACHE_NONE is not allowed, and you must use a higher
          * value such as CACHE_CONSUMER or CACHE_SESSION. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public AMQPProducerBuilder replyToCacheLevelName(
                 String replyToCacheLevelName) {
@@ -1964,7 +2009,7 @@ public interface AMQPEndpointBuilder {
          * Sets the JMS Selector using the fixed name to be used so you can
          * filter out your own replies from the others when using a shared queue
          * (that is, if you are not using a temporary reply queue). The option
-         * is a java.lang.String type.
+         * is a <code>java.lang.String</code> type.
          */
         public AMQPProducerBuilder replyToDestinationSelectorName(
                 String replyToDestinationSelectorName) {
@@ -1979,7 +2024,7 @@ public interface AMQPEndpointBuilder {
          * entire message payload to be read into memory. By enabling this
          * option the message payload is read into memory in chunks and each
          * chunk is then written to the StreamMessage until no more data. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public AMQPProducerBuilder streamMessageTypeEnabled(
                 boolean streamMessageTypeEnabled) {
@@ -1994,7 +2039,7 @@ public interface AMQPEndpointBuilder {
          * entire message payload to be read into memory. By enabling this
          * option the message payload is read into memory in chunks and each
          * chunk is then written to the StreamMessage until no more data. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public AMQPProducerBuilder streamMessageTypeEnabled(
                 String streamMessageTypeEnabled) {
@@ -2004,7 +2049,7 @@ public interface AMQPEndpointBuilder {
     }
 
     public static enum JmsMessageType {
-        Bytes, Map, Object, Stream, Text;
+        Bytes, Map, Object, Stream, Text, Blob;
     }
 
     public static enum ConsumerType {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AS2EndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AS2EndpointBuilder.java
index 0e2e3c1..ab33526 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AS2EndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AS2EndpointBuilder.java
@@ -43,7 +43,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * What kind of operation to perform. The option is a
-         * org.apache.camel.component.as2.internal.AS2ApiName type.
+         * <code>org.apache.camel.component.as2.internal.AS2ApiName</code> type.
          */
         public T apiName(AS2ApiName apiName) {
             this.properties.put("apiName", apiName);
@@ -51,7 +51,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * What kind of operation to perform. The option will be converted to a
-         * org.apache.camel.component.as2.internal.AS2ApiName type.
+         * <code>org.apache.camel.component.as2.internal.AS2ApiName</code> type.
          */
         public T apiName(String apiName) {
             this.properties.put("apiName", apiName);
@@ -59,7 +59,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * What sub operation to use for the selected operation. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T methodName(String methodName) {
             this.properties.put("methodName", methodName);
@@ -67,7 +67,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The value of the AS2From header of AS2 message. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T as2From(String as2From) {
             this.properties.put("as2From", as2From);
@@ -77,7 +77,8 @@ public interface AS2EndpointBuilder {
          * The structure of AS2 Message. One of: PLAIN - No encryption, no
          * signature, SIGNED - No encryption, signature, ENCRYPTED - Encryption,
          * no signature, ENCRYPTED_SIGNED - Encryption, signature. The option is
-         * a org.apache.camel.component.as2.api.AS2MessageStructure type.
+         * a <code>org.apache.camel.component.as2.api.AS2MessageStructure</code>
+         * type.
          */
         public T as2MessageStructure(AS2MessageStructure as2MessageStructure) {
             this.properties.put("as2MessageStructure", as2MessageStructure);
@@ -88,7 +89,8 @@ public interface AS2EndpointBuilder {
          * signature, SIGNED - No encryption, signature, ENCRYPTED - Encryption,
          * no signature, ENCRYPTED_SIGNED - Encryption, signature. The option
          * will be converted to a
-         * org.apache.camel.component.as2.api.AS2MessageStructure type.
+         * <code>org.apache.camel.component.as2.api.AS2MessageStructure</code>
+         * type.
          */
         public T as2MessageStructure(String as2MessageStructure) {
             this.properties.put("as2MessageStructure", as2MessageStructure);
@@ -96,15 +98,15 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The value of the AS2To header of AS2 message. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T as2To(String as2To) {
             this.properties.put("as2To", as2To);
             return (T) this;
         }
         /**
-         * The version of the AS2 protocol. The option is a java.lang.String
-         * type.
+         * The version of the AS2 protocol. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T as2Version(String as2Version) {
             this.properties.put("as2Version", as2Version);
@@ -112,7 +114,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The Client Fully Qualified Domain Name (FQDN). Used in message ids
-         * sent by endpoint. The option is a java.lang.String type.
+         * sent by endpoint. The option is a <code>java.lang.String</code> type.
          */
         public T clientFqdn(String clientFqdn) {
             this.properties.put("clientFqdn", clientFqdn);
@@ -120,7 +122,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The algorithm used to compress EDI message. The option is a
-         * org.apache.camel.component.as2.api.AS2CompressionAlgorithm type.
+         * <code>org.apache.camel.component.as2.api.AS2CompressionAlgorithm</code> type.
          */
         public T compressionAlgorithm(
                 AS2CompressionAlgorithm compressionAlgorithm) {
@@ -130,7 +132,7 @@ public interface AS2EndpointBuilder {
         /**
          * The algorithm used to compress EDI message. The option will be
          * converted to a
-         * org.apache.camel.component.as2.api.AS2CompressionAlgorithm type.
+         * <code>org.apache.camel.component.as2.api.AS2CompressionAlgorithm</code> type.
          */
         public T compressionAlgorithm(String compressionAlgorithm) {
             this.properties.put("compressionAlgorithm", compressionAlgorithm);
@@ -138,7 +140,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The key used to encrypt the EDI message. The option is a
-         * java.security.PrivateKey type.
+         * <code>java.security.PrivateKey</code> type.
          */
         public T decryptingPrivateKey(PrivateKey decryptingPrivateKey) {
             this.properties.put("decryptingPrivateKey", decryptingPrivateKey);
@@ -146,7 +148,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The key used to encrypt the EDI message. The option will be converted
-         * to a java.security.PrivateKey type.
+         * to a <code>java.security.PrivateKey</code> type.
          */
         public T decryptingPrivateKey(String decryptingPrivateKey) {
             this.properties.put("decryptingPrivateKey", decryptingPrivateKey);
@@ -155,7 +157,8 @@ public interface AS2EndpointBuilder {
         /**
          * The value of the Disposition-Notification-To header. Assigning a
          * value to this parameter requests a message disposition notification
-         * (MDN) for the AS2 message. The option is a java.lang.String type.
+         * (MDN) for the AS2 message. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T dispositionNotificationTo(String dispositionNotificationTo) {
             this.properties.put("dispositionNotificationTo", dispositionNotificationTo);
@@ -163,7 +166,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The transfer encoding of EDI message. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T ediMessageTransferEncoding(String ediMessageTransferEncoding) {
             this.properties.put("ediMessageTransferEncoding", ediMessageTransferEncoding);
@@ -172,7 +175,7 @@ public interface AS2EndpointBuilder {
         /**
          * The content type of EDI message. One of application/edifact,
          * application/edi-x12, application/edi-consent. The option is a
-         * org.apache.http.entity.ContentType type.
+         * <code>org.apache.http.entity.ContentType</code> type.
          */
         public T ediMessageType(Object ediMessageType) {
             this.properties.put("ediMessageType", ediMessageType);
@@ -181,7 +184,7 @@ public interface AS2EndpointBuilder {
         /**
          * The content type of EDI message. One of application/edifact,
          * application/edi-x12, application/edi-consent. The option will be
-         * converted to a org.apache.http.entity.ContentType type.
+         * converted to a <code>org.apache.http.entity.ContentType</code> type.
          */
         public T ediMessageType(String ediMessageType) {
             this.properties.put("ediMessageType", ediMessageType);
@@ -189,7 +192,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The algorithm used to encrypt EDI message. The option is a
-         * org.apache.camel.component.as2.api.AS2EncryptionAlgorithm type.
+         * <code>org.apache.camel.component.as2.api.AS2EncryptionAlgorithm</code> type.
          */
         public T encryptingAlgorithm(AS2EncryptionAlgorithm encryptingAlgorithm) {
             this.properties.put("encryptingAlgorithm", encryptingAlgorithm);
@@ -198,7 +201,7 @@ public interface AS2EndpointBuilder {
         /**
          * The algorithm used to encrypt EDI message. The option will be
          * converted to a
-         * org.apache.camel.component.as2.api.AS2EncryptionAlgorithm type.
+         * <code>org.apache.camel.component.as2.api.AS2EncryptionAlgorithm</code> type.
          */
         public T encryptingAlgorithm(String encryptingAlgorithm) {
             this.properties.put("encryptingAlgorithm", encryptingAlgorithm);
@@ -206,7 +209,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The chain of certificates used to encrypt EDI message. The option is
-         * a java.security.cert.Certificate[] type.
+         * a <code>java.security.cert.Certificate[]</code> type.
          */
         public T encryptingCertificateChain(
                 Certificate[] encryptingCertificateChain) {
@@ -215,7 +218,8 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The chain of certificates used to encrypt EDI message. The option
-         * will be converted to a java.security.cert.Certificate[] type.
+         * will be converted to a <code>java.security.cert.Certificate[]</code>
+         * type.
          */
         public T encryptingCertificateChain(String encryptingCertificateChain) {
             this.properties.put("encryptingCertificateChain", encryptingCertificateChain);
@@ -223,7 +227,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The value of the From header of AS2 message. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T from(String from) {
             this.properties.put("from", from);
@@ -231,7 +235,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * Sets the name of a parameter to be passed in the exchange In Body.
-         * The option is a java.lang.String type.
+         * The option is a <code>java.lang.String</code> type.
          */
         public T inBody(String inBody) {
             this.properties.put("inBody", inBody);
@@ -239,15 +243,15 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The template used to format MDN message. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T mdnMessageTemplate(String mdnMessageTemplate) {
             this.properties.put("mdnMessageTemplate", mdnMessageTemplate);
             return (T) this;
         }
         /**
-         * The request URI of EDI message. The option is a java.lang.String
-         * type.
+         * The request URI of EDI message. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T requestUri(String requestUri) {
             this.properties.put("requestUri", requestUri);
@@ -255,7 +259,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The value included in the Server message header identifying the AS2
-         * Server. The option is a java.lang.String type.
+         * Server. The option is a <code>java.lang.String</code> type.
          */
         public T server(String server) {
             this.properties.put("server", server);
@@ -263,14 +267,15 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The Server Fully Qualified Domain Name (FQDN). Used in message ids
-         * sent by endpoint. The option is a java.lang.String type.
+         * sent by endpoint. The option is a <code>java.lang.String</code> type.
          */
         public T serverFqdn(String serverFqdn) {
             this.properties.put("serverFqdn", serverFqdn);
             return (T) this;
         }
         /**
-         * The port number of server. The option is a java.lang.Integer type.
+         * The port number of server. The option is a
+         * <code>java.lang.Integer</code> type.
          */
         public T serverPortNumber(Integer serverPortNumber) {
             this.properties.put("serverPortNumber", serverPortNumber);
@@ -278,7 +283,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The port number of server. The option will be converted to a
-         * java.lang.Integer type.
+         * <code>java.lang.Integer</code> type.
          */
         public T serverPortNumber(String serverPortNumber) {
             this.properties.put("serverPortNumber", serverPortNumber);
@@ -287,7 +292,8 @@ public interface AS2EndpointBuilder {
         /**
          * The list of algorithms, in order of preference, requested to generate
          * a message integrity check (MIC) returned in message dispostion
-         * notification (MDN). The option is a java.lang.String[] type.
+         * notification (MDN). The option is a <code>java.lang.String[]</code>
+         * type.
          */
         public T signedReceiptMicAlgorithms(String[] signedReceiptMicAlgorithms) {
             this.properties.put("signedReceiptMicAlgorithms", signedReceiptMicAlgorithms);
@@ -297,7 +303,7 @@ public interface AS2EndpointBuilder {
          * The list of algorithms, in order of preference, requested to generate
          * a message integrity check (MIC) returned in message dispostion
          * notification (MDN). The option will be converted to a
-         * java.lang.String[] type.
+         * <code>java.lang.String[]</code> type.
          */
         public T signedReceiptMicAlgorithms(String signedReceiptMicAlgorithms) {
             this.properties.put("signedReceiptMicAlgorithms", signedReceiptMicAlgorithms);
@@ -305,7 +311,8 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The algorithm used to sign EDI message. The option is a
-         * org.apache.camel.component.as2.api.AS2SignatureAlgorithm type.
+         * <code>org.apache.camel.component.as2.api.AS2SignatureAlgorithm</code>
+         * type.
          */
         public T signingAlgorithm(AS2SignatureAlgorithm signingAlgorithm) {
             this.properties.put("signingAlgorithm", signingAlgorithm);
@@ -313,7 +320,9 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The algorithm used to sign EDI message. The option will be converted
-         * to a org.apache.camel.component.as2.api.AS2SignatureAlgorithm type.
+         * to a
+         * <code>org.apache.camel.component.as2.api.AS2SignatureAlgorithm</code>
+         * type.
          */
         public T signingAlgorithm(String signingAlgorithm) {
             this.properties.put("signingAlgorithm", signingAlgorithm);
@@ -321,7 +330,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The chain of certificates used to sign EDI message. The option is a
-         * java.security.cert.Certificate[] type.
+         * <code>java.security.cert.Certificate[]</code> type.
          */
         public T signingCertificateChain(Certificate[] signingCertificateChain) {
             this.properties.put("signingCertificateChain", signingCertificateChain);
@@ -329,7 +338,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The chain of certificates used to sign EDI message. The option will
-         * be converted to a java.security.cert.Certificate[] type.
+         * be converted to a <code>java.security.cert.Certificate[]</code> type.
          */
         public T signingCertificateChain(String signingCertificateChain) {
             this.properties.put("signingCertificateChain", signingCertificateChain);
@@ -337,7 +346,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The key used to sign the EDI message. The option is a
-         * java.security.PrivateKey type.
+         * <code>java.security.PrivateKey</code> type.
          */
         public T signingPrivateKey(PrivateKey signingPrivateKey) {
             this.properties.put("signingPrivateKey", signingPrivateKey);
@@ -345,7 +354,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The key used to sign the EDI message. The option will be converted to
-         * a java.security.PrivateKey type.
+         * a <code>java.security.PrivateKey</code> type.
          */
         public T signingPrivateKey(String signingPrivateKey) {
             this.properties.put("signingPrivateKey", signingPrivateKey);
@@ -353,7 +362,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The value of Subject header of AS2 message. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T subject(String subject) {
             this.properties.put("subject", subject);
@@ -361,7 +370,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The host name (IP or DNS name) of target host. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T targetHostname(String targetHostname) {
             this.properties.put("targetHostname", targetHostname);
@@ -369,7 +378,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The port number of target host. -1 indicates the scheme default port.
-         * The option is a java.lang.Integer type.
+         * The option is a <code>java.lang.Integer</code> type.
          */
         public T targetPortNumber(Integer targetPortNumber) {
             this.properties.put("targetPortNumber", targetPortNumber);
@@ -377,7 +386,8 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The port number of target host. -1 indicates the scheme default port.
-         * The option will be converted to a java.lang.Integer type.
+         * The option will be converted to a <code>java.lang.Integer</code>
+         * type.
          */
         public T targetPortNumber(String targetPortNumber) {
             this.properties.put("targetPortNumber", targetPortNumber);
@@ -385,7 +395,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * The value included in the User-Agent message header identifying the
-         * AS2 user agent. The option is a java.lang.String type.
+         * AS2 user agent. The option is a <code>java.lang.String</code> type.
          */
         public T userAgent(String userAgent) {
             this.properties.put("userAgent", userAgent);
@@ -394,7 +404,7 @@ public interface AS2EndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -403,7 +413,7 @@ public interface AS2EndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -412,7 +422,7 @@ public interface AS2EndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -421,7 +431,7 @@ public interface AS2EndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -444,7 +454,7 @@ public interface AS2EndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public AS2ConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
@@ -457,7 +467,7 @@ public interface AS2EndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public AS2ConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
@@ -468,7 +478,7 @@ public interface AS2EndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public AS2ConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -480,7 +490,8 @@ public interface AS2EndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public AS2ConsumerBuilder exceptionHandler(String exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
@@ -488,7 +499,7 @@ public interface AS2EndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AS2ConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -497,7 +508,8 @@ public interface AS2EndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AS2ConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ActiveMQEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ActiveMQEndpointBuilder.java
index e3a3f5a..69ababa 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ActiveMQEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ActiveMQEndpointBuilder.java
@@ -42,8 +42,8 @@ public interface ActiveMQEndpointBuilder {
             super("activemq", path);
         }
         /**
-         * The kind of destination to use. The option is a java.lang.String
-         * type.
+         * The kind of destination to use. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T destinationType(String destinationType) {
             this.properties.put("destinationType", destinationType);
@@ -51,7 +51,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Name of the queue or topic to use as destination. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T destinationName(String destinationName) {
             this.properties.put("destinationName", destinationName);
@@ -62,7 +62,7 @@ public interface ActiveMQEndpointBuilder {
          * must be unique and can only be used by a single JMS connection
          * instance. It is typically only required for durable topic
          * subscriptions. If using Apache ActiveMQ you may prefer to use Virtual
-         * Topics instead. The option is a java.lang.String type.
+         * Topics instead. The option is a <code>java.lang.String</code> type.
          */
         public T clientId(String clientId) {
             this.properties.put("clientId", clientId);
@@ -73,7 +73,7 @@ public interface ActiveMQEndpointBuilder {
          * factory is not specified for either
          * setTemplateConnectionFactory(ConnectionFactory) or
          * setListenerConnectionFactory(ConnectionFactory). The option is a
-         * javax.jms.ConnectionFactory type.
+         * <code>javax.jms.ConnectionFactory</code> type.
          */
         public T connectionFactory(Object connectionFactory) {
             this.properties.put("connectionFactory", connectionFactory);
@@ -84,7 +84,7 @@ public interface ActiveMQEndpointBuilder {
          * factory is not specified for either
          * setTemplateConnectionFactory(ConnectionFactory) or
          * setListenerConnectionFactory(ConnectionFactory). The option will be
-         * converted to a javax.jms.ConnectionFactory type.
+         * converted to a <code>javax.jms.ConnectionFactory</code> type.
          */
         public T connectionFactory(String connectionFactory) {
             this.properties.put("connectionFactory", connectionFactory);
@@ -99,7 +99,7 @@ public interface ActiveMQEndpointBuilder {
          * handles the reply message. You can also use this option if you want
          * to use Camel as a proxy between different message brokers and you
          * want to route message from one system to another. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public T disableReplyTo(boolean disableReplyTo) {
             this.properties.put("disableReplyTo", disableReplyTo);
@@ -114,7 +114,7 @@ public interface ActiveMQEndpointBuilder {
          * handles the reply message. You can also use this option if you want
          * to use Camel as a proxy between different message brokers and you
          * want to route message from one system to another. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T disableReplyTo(String disableReplyTo) {
             this.properties.put("disableReplyTo", disableReplyTo);
@@ -123,7 +123,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * The durable subscriber name for specifying durable topic
          * subscriptions. The clientId option must be configured as well. The
-         * option is a java.lang.String type.
+         * option is a <code>java.lang.String</code> type.
          */
         public T durableSubscriptionName(String durableSubscriptionName) {
             this.properties.put("durableSubscriptionName", durableSubscriptionName);
@@ -135,7 +135,7 @@ public interface ActiveMQEndpointBuilder {
          * Map, Object, Stream, Text. By default, Camel would determine which
          * JMS message type to use from the In body type. This option allows you
          * to specify it. The option is a
-         * org.apache.camel.component.jms.JmsMessageType type.
+         * <code>org.apache.camel.component.jms.JmsMessageType</code> type.
          */
         public T jmsMessageType(JmsMessageType jmsMessageType) {
             this.properties.put("jmsMessageType", jmsMessageType);
@@ -147,7 +147,7 @@ public interface ActiveMQEndpointBuilder {
          * Map, Object, Stream, Text. By default, Camel would determine which
          * JMS message type to use from the In body type. This option allows you
          * to specify it. The option will be converted to a
-         * org.apache.camel.component.jms.JmsMessageType type.
+         * <code>org.apache.camel.component.jms.JmsMessageType</code> type.
          */
         public T jmsMessageType(String jmsMessageType) {
             this.properties.put("jmsMessageType", jmsMessageType);
@@ -159,7 +159,7 @@ public interface ActiveMQEndpointBuilder {
          * connection to the JMS broker. If a connection cannot be granted then
          * Camel throws an exception on startup. This ensures that Camel is not
          * started with failed connections. The JMS producers is tested as well.
-         * The option is a boolean type.
+         * The option is a <code>boolean</code> type.
          */
         public T testConnectionOnStartup(boolean testConnectionOnStartup) {
             this.properties.put("testConnectionOnStartup", testConnectionOnStartup);
@@ -171,7 +171,7 @@ public interface ActiveMQEndpointBuilder {
          * connection to the JMS broker. If a connection cannot be granted then
          * Camel throws an exception on startup. This ensures that Camel is not
          * started with failed connections. The JMS producers is tested as well.
-         * The option will be converted to a boolean type.
+         * The option will be converted to a <code>boolean</code> type.
          */
         public T testConnectionOnStartup(String testConnectionOnStartup) {
             this.properties.put("testConnectionOnStartup", testConnectionOnStartup);
@@ -181,7 +181,7 @@ public interface ActiveMQEndpointBuilder {
          * Controls whether or not to include serialized headers. Applies only
          * when isTransferExchange() is true. This requires that the objects are
          * serializable. Camel will exclude any non-serializable objects and log
-         * it at WARN level. The option is a boolean type.
+         * it at WARN level. The option is a <code>boolean</code> type.
          */
         public T allowSerializedHeaders(boolean allowSerializedHeaders) {
             this.properties.put("allowSerializedHeaders", allowSerializedHeaders);
@@ -191,7 +191,8 @@ public interface ActiveMQEndpointBuilder {
          * Controls whether or not to include serialized headers. Applies only
          * when isTransferExchange() is true. This requires that the objects are
          * serializable. Camel will exclude any non-serializable objects and log
-         * it at WARN level. The option will be converted to a boolean type.
+         * it at WARN level. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T allowSerializedHeaders(String allowSerializedHeaders) {
             this.properties.put("allowSerializedHeaders", allowSerializedHeaders);
@@ -208,7 +209,7 @@ public interface ActiveMQEndpointBuilder {
          * if the connection could not be established, then an exception is
          * logged at WARN level, and the consumer will not be able to receive
          * messages; You can then restart the route to retry. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public T asyncStartListener(boolean asyncStartListener) {
             this.properties.put("asyncStartListener", asyncStartListener);
@@ -225,7 +226,7 @@ public interface ActiveMQEndpointBuilder {
          * if the connection could not be established, then an exception is
          * logged at WARN level, and the consumer will not be able to receive
          * messages; You can then restart the route to retry. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T asyncStartListener(String asyncStartListener) {
             this.properties.put("asyncStartListener", asyncStartListener);
@@ -233,7 +234,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Whether to stop the JmsConsumer message listener asynchronously, when
-         * stopping a route. The option is a boolean type.
+         * stopping a route. The option is a <code>boolean</code> type.
          */
         public T asyncStopListener(boolean asyncStopListener) {
             this.properties.put("asyncStopListener", asyncStopListener);
@@ -241,7 +242,8 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Whether to stop the JmsConsumer message listener asynchronously, when
-         * stopping a route. The option will be converted to a boolean type.
+         * stopping a route. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T asyncStopListener(String asyncStopListener) {
             this.properties.put("asyncStopListener", asyncStopListener);
@@ -250,7 +252,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -259,7 +261,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -270,7 +272,7 @@ public interface ActiveMQEndpointBuilder {
          * org.springframework.jms.support.destination.DestinationResolver that
          * allows you to use your own resolver (for example, to lookup the real
          * destination in a JNDI registry). The option is a
-         * org.springframework.jms.support.destination.DestinationResolver type.
+         * <code>org.springframework.jms.support.destination.DestinationResolver</code> type.
          */
         public T destinationResolver(Object destinationResolver) {
             this.properties.put("destinationResolver", destinationResolver);
@@ -281,7 +283,7 @@ public interface ActiveMQEndpointBuilder {
          * org.springframework.jms.support.destination.DestinationResolver that
          * allows you to use your own resolver (for example, to lookup the real
          * destination in a JNDI registry). The option will be converted to a
-         * org.springframework.jms.support.destination.DestinationResolver type.
+         * <code>org.springframework.jms.support.destination.DestinationResolver</code> type.
          */
         public T destinationResolver(String destinationResolver) {
             this.properties.put("destinationResolver", destinationResolver);
@@ -295,7 +297,7 @@ public interface ActiveMQEndpointBuilder {
          * whether stack traces should be logged using errorHandlerLoggingLevel
          * and errorHandlerLogStackTrace options. This makes it much easier to
          * configure, than having to code a custom errorHandler. The option is a
-         * org.springframework.util.ErrorHandler type.
+         * <code>org.springframework.util.ErrorHandler</code> type.
          */
         public T errorHandler(Object errorHandler) {
             this.properties.put("errorHandler", errorHandler);
@@ -309,7 +311,8 @@ public interface ActiveMQEndpointBuilder {
          * whether stack traces should be logged using errorHandlerLoggingLevel
          * and errorHandlerLogStackTrace options. This makes it much easier to
          * configure, than having to code a custom errorHandler. The option will
-         * be converted to a org.springframework.util.ErrorHandler type.
+         * be converted to a <code>org.springframework.util.ErrorHandler</code>
+         * type.
          */
         public T errorHandler(String errorHandler) {
             this.properties.put("errorHandler", errorHandler);
@@ -318,7 +321,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Specifies the JMS Exception Listener that is to be notified of any
          * underlying JMS exceptions. The option is a
-         * javax.jms.ExceptionListener type.
+         * <code>javax.jms.ExceptionListener</code> type.
          */
         public T exceptionListener(Object exceptionListener) {
             this.properties.put("exceptionListener", exceptionListener);
@@ -327,7 +330,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Specifies the JMS Exception Listener that is to be notified of any
          * underlying JMS exceptions. The option will be converted to a
-         * javax.jms.ExceptionListener type.
+         * <code>javax.jms.ExceptionListener</code> type.
          */
         public T exceptionListener(String exceptionListener) {
             this.properties.put("exceptionListener", exceptionListener);
@@ -336,7 +339,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * To use a custom HeaderFilterStrategy to filter header to and from
          * Camel message. The option is a
-         * org.apache.camel.spi.HeaderFilterStrategy type.
+         * <code>org.apache.camel.spi.HeaderFilterStrategy</code> type.
          */
         public T headerFilterStrategy(HeaderFilterStrategy headerFilterStrategy) {
             this.properties.put("headerFilterStrategy", headerFilterStrategy);
@@ -345,7 +348,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * To use a custom HeaderFilterStrategy to filter header to and from
          * Camel message. The option will be converted to a
-         * org.apache.camel.spi.HeaderFilterStrategy type.
+         * <code>org.apache.camel.spi.HeaderFilterStrategy</code> type.
          */
         public T headerFilterStrategy(String headerFilterStrategy) {
             this.properties.put("headerFilterStrategy", headerFilterStrategy);
@@ -353,7 +356,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Specify the limit for the number of consumers that are allowed to be
-         * idle at any given time. The option is a int type.
+         * idle at any given time. The option is a <code>int</code> type.
          */
         public T idleConsumerLimit(int idleConsumerLimit) {
             this.properties.put("idleConsumerLimit", idleConsumerLimit);
@@ -361,7 +364,8 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Specify the limit for the number of consumers that are allowed to be
-         * idle at any given time. The option will be converted to a int type.
+         * idle at any given time. The option will be converted to a
+         * <code>int</code> type.
          */
         public T idleConsumerLimit(String idleConsumerLimit) {
             this.properties.put("idleConsumerLimit", idleConsumerLimit);
@@ -373,7 +377,7 @@ public interface ActiveMQEndpointBuilder {
          * the task will shut down and leave receiving to other executing tasks
          * (in the case of dynamic scheduling; see the maxConcurrentConsumers
          * setting). There is additional doc available from Spring. The option
-         * is a int type.
+         * is a <code>int</code> type.
          */
         public T idleTaskExecutionLimit(int idleTaskExecutionLimit) {
             this.properties.put("idleTaskExecutionLimit", idleTaskExecutionLimit);
@@ -385,7 +389,7 @@ public interface ActiveMQEndpointBuilder {
          * the task will shut down and leave receiving to other executing tasks
          * (in the case of dynamic scheduling; see the maxConcurrentConsumers
          * setting). There is additional doc available from Spring. The option
-         * will be converted to a int type.
+         * will be converted to a <code>int</code> type.
          */
         public T idleTaskExecutionLimit(String idleTaskExecutionLimit) {
             this.properties.put("idleTaskExecutionLimit", idleTaskExecutionLimit);
@@ -396,7 +400,7 @@ public interface ActiveMQEndpointBuilder {
          * Camel Message. Setting this to true will include properties such as
          * JMSXAppID, and JMSXUserID etc. Note: If you are using a custom
          * headerFilterStrategy then this option does not apply. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public T includeAllJMSXProperties(boolean includeAllJMSXProperties) {
             this.properties.put("includeAllJMSXProperties", includeAllJMSXProperties);
@@ -407,7 +411,7 @@ public interface ActiveMQEndpointBuilder {
          * Camel Message. Setting this to true will include properties such as
          * JMSXAppID, and JMSXUserID etc. Note: If you are using a custom
          * headerFilterStrategy then this option does not apply. The option will
-         * be converted to a boolean type.
+         * be converted to a <code>boolean</code> type.
          */
         public T includeAllJMSXProperties(String includeAllJMSXProperties) {
             this.properties.put("includeAllJMSXProperties", includeAllJMSXProperties);
@@ -422,7 +426,9 @@ public interface ActiveMQEndpointBuilder {
          * brokers which do not care whether JMS header keys contain illegal
          * characters. You can provide your own implementation of the
          * org.apache.camel.component.jms.JmsKeyFormatStrategy and refer to it
-         * using the # notation. The option is a java.lang.String type.
+         * using the # notation. The option is a
+         * <code>org.apache.camel.component.jms.JmsKeyFormatStrategy</code>
+         * type.
          */
         public T jmsKeyFormatStrategy(Object jmsKeyFormatStrategy) {
             this.properties.put("jmsKeyFormatStrategy", jmsKeyFormatStrategy);
@@ -438,7 +444,8 @@ public interface ActiveMQEndpointBuilder {
          * characters. You can provide your own implementation of the
          * org.apache.camel.component.jms.JmsKeyFormatStrategy and refer to it
          * using the # notation. The option will be converted to a
-         * java.lang.String type.
+         * <code>org.apache.camel.component.jms.JmsKeyFormatStrategy</code>
+         * type.
          */
         public T jmsKeyFormatStrategy(String jmsKeyFormatStrategy) {
             this.properties.put("jmsKeyFormatStrategy", jmsKeyFormatStrategy);
@@ -447,7 +454,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Specifies whether Camel should auto map the received JMS message to a
          * suited payload type, such as javax.jms.TextMessage to a String etc.
-         * The option is a boolean type.
+         * The option is a <code>boolean</code> type.
          */
         public T mapJmsMessage(boolean mapJmsMessage) {
             this.properties.put("mapJmsMessage", mapJmsMessage);
@@ -456,7 +463,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Specifies whether Camel should auto map the received JMS message to a
          * suited payload type, such as javax.jms.TextMessage to a String etc.
-         * The option will be converted to a boolean type.
+         * The option will be converted to a <code>boolean</code> type.
          */
         public T mapJmsMessage(String mapJmsMessage) {
             this.properties.put("mapJmsMessage", mapJmsMessage);
@@ -466,7 +473,8 @@ public interface ActiveMQEndpointBuilder {
          * The number of messages per task. -1 is unlimited. If you use a range
          * for concurrent consumers (eg min max), then this option can be used
          * to set a value to eg 100 to control how fast the consumers will
-         * shrink when less work is required. The option is a int type.
+         * shrink when less work is required. The option is a <code>int</code>
+         * type.
          */
         public T maxMessagesPerTask(int maxMessagesPerTask) {
             this.properties.put("maxMessagesPerTask", maxMessagesPerTask);
@@ -477,7 +485,7 @@ public interface ActiveMQEndpointBuilder {
          * for concurrent consumers (eg min max), then this option can be used
          * to set a value to eg 100 to control how fast the consumers will
          * shrink when less work is required. The option will be converted to a
-         * int type.
+         * <code>int</code> type.
          */
         public T maxMessagesPerTask(String maxMessagesPerTask) {
             this.properties.put("maxMessagesPerTask", maxMessagesPerTask);
@@ -487,7 +495,7 @@ public interface ActiveMQEndpointBuilder {
          * To use a custom Spring
          * org.springframework.jms.support.converter.MessageConverter so you can
          * be in control how to map to/from a javax.jms.Message. The option is a
-         * org.springframework.jms.support.converter.MessageConverter type.
+         * <code>org.springframework.jms.support.converter.MessageConverter</code> type.
          */
         public T messageConverter(Object messageConverter) {
             this.properties.put("messageConverter", messageConverter);
@@ -498,7 +506,7 @@ public interface ActiveMQEndpointBuilder {
          * org.springframework.jms.support.converter.MessageConverter so you can
          * be in control how to map to/from a javax.jms.Message. The option will
          * be converted to a
-         * org.springframework.jms.support.converter.MessageConverter type.
+         * <code>org.springframework.jms.support.converter.MessageConverter</code> type.
          */
         public T messageConverter(String messageConverter) {
             this.properties.put("messageConverter", messageConverter);
@@ -508,7 +516,8 @@ public interface ActiveMQEndpointBuilder {
          * To use the given MessageCreatedStrategy which are invoked when Camel
          * creates new instances of javax.jms.Message objects when Camel is
          * sending a JMS message. The option is a
-         * org.apache.camel.component.jms.MessageCreatedStrategy type.
+         * <code>org.apache.camel.component.jms.MessageCreatedStrategy</code>
+         * type.
          */
         public T messageCreatedStrategy(Object messageCreatedStrategy) {
             this.properties.put("messageCreatedStrategy", messageCreatedStrategy);
@@ -518,7 +527,8 @@ public interface ActiveMQEndpointBuilder {
          * To use the given MessageCreatedStrategy which are invoked when Camel
          * creates new instances of javax.jms.Message objects when Camel is
          * sending a JMS message. The option will be converted to a
-         * org.apache.camel.component.jms.MessageCreatedStrategy type.
+         * <code>org.apache.camel.component.jms.MessageCreatedStrategy</code>
+         * type.
          */
         public T messageCreatedStrategy(String messageCreatedStrategy) {
             this.properties.put("messageCreatedStrategy", messageCreatedStrategy);
@@ -529,7 +539,7 @@ public interface ActiveMQEndpointBuilder {
          * just an hint to the JMS Broker. If the JMS provider accepts this
          * hint, these messages must have the message ID set to null; if the
          * provider ignores the hint, the message ID must be set to its normal
-         * unique value. The option is a boolean type.
+         * unique value. The option is a <code>boolean</code> type.
          */
         public T messageIdEnabled(boolean messageIdEnabled) {
             this.properties.put("messageIdEnabled", messageIdEnabled);
@@ -540,7 +550,8 @@ public interface ActiveMQEndpointBuilder {
          * just an hint to the JMS Broker. If the JMS provider accepts this
          * hint, these messages must have the message ID set to null; if the
          * provider ignores the hint, the message ID must be set to its normal
-         * unique value. The option will be converted to a boolean type.
+         * unique value. The option will be converted to a <code>boolean</code>
+         * type.
          */
         public T messageIdEnabled(String messageIdEnabled) {
             this.properties.put("messageIdEnabled", messageIdEnabled);
@@ -552,7 +563,7 @@ public interface ActiveMQEndpointBuilder {
          * org.springframework.jms.listener.AbstractMessageListenerContainer to
          * use to consume messages. Setting this will automatically set
          * consumerType to Custom. The option is a
-         * org.apache.camel.component.jms.MessageListenerContainerFactory type.
+         * <code>org.apache.camel.component.jms.MessageListenerContainerFactory</code> type.
          */
         public T messageListenerContainerFactory(
                 Object messageListenerContainerFactory) {
@@ -565,7 +576,7 @@ public interface ActiveMQEndpointBuilder {
          * org.springframework.jms.listener.AbstractMessageListenerContainer to
          * use to consume messages. Setting this will automatically set
          * consumerType to Custom. The option will be converted to a
-         * org.apache.camel.component.jms.MessageListenerContainerFactory type.
+         * <code>org.apache.camel.component.jms.MessageListenerContainerFactory</code> type.
          */
         public T messageListenerContainerFactory(
                 String messageListenerContainerFactory) {
@@ -577,7 +588,7 @@ public interface ActiveMQEndpointBuilder {
          * messages. This is just an hint to the JMS Broker. If the JMS provider
          * accepts this hint, these messages must have the timestamp set to
          * zero; if the provider ignores the hint, the timestamp must be set to
-         * its normal value. The option is a boolean type.
+         * its normal value. The option is a <code>boolean</code> type.
          */
         public T messageTimestampEnabled(boolean messageTimestampEnabled) {
             this.properties.put("messageTimestampEnabled", messageTimestampEnabled);
@@ -588,7 +599,8 @@ public interface ActiveMQEndpointBuilder {
          * messages. This is just an hint to the JMS Broker. If the JMS provider
          * accepts this hint, these messages must have the timestamp set to
          * zero; if the provider ignores the hint, the timestamp must be set to
-         * its normal value. The option will be converted to a boolean type.
+         * its normal value. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T messageTimestampEnabled(String messageTimestampEnabled) {
             this.properties.put("messageTimestampEnabled", messageTimestampEnabled);
@@ -596,7 +608,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Specifies whether to inhibit the delivery of messages published by
-         * its own connection. The option is a boolean type.
+         * its own connection. The option is a <code>boolean</code> type.
          */
         public T pubSubNoLocal(boolean pubSubNoLocal) {
             this.properties.put("pubSubNoLocal", pubSubNoLocal);
@@ -604,7 +616,8 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Specifies whether to inhibit the delivery of messages published by
-         * its own connection. The option will be converted to a boolean type.
+         * its own connection. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T pubSubNoLocal(String pubSubNoLocal) {
             this.properties.put("pubSubNoLocal", pubSubNoLocal);
@@ -612,7 +625,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * The timeout for receiving messages (in milliseconds). The option is a
-         * long type.
+         * <code>long</code> type.
          */
         public T receiveTimeout(long receiveTimeout) {
             this.properties.put("receiveTimeout", receiveTimeout);
@@ -620,7 +633,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * The timeout for receiving messages (in milliseconds). The option will
-         * be converted to a long type.
+         * be converted to a <code>long</code> type.
          */
         public T receiveTimeout(String receiveTimeout) {
             this.properties.put("receiveTimeout", receiveTimeout);
@@ -629,7 +642,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Specifies the interval between recovery attempts, i.e. when a
          * connection is being refreshed, in milliseconds. The default is 5000
-         * ms, that is, 5 seconds. The option is a long type.
+         * ms, that is, 5 seconds. The option is a <code>long</code> type.
          */
         public T recoveryInterval(long recoveryInterval) {
             this.properties.put("recoveryInterval", recoveryInterval);
@@ -638,7 +651,8 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Specifies the interval between recovery attempts, i.e. when a
          * connection is being refreshed, in milliseconds. The default is 5000
-         * ms, that is, 5 seconds. The option will be converted to a long type.
+         * ms, that is, 5 seconds. The option will be converted to a
+         * <code>long</code> type.
          */
         public T recoveryInterval(String recoveryInterval) {
             this.properties.put("recoveryInterval", recoveryInterval);
@@ -649,7 +663,8 @@ public interface ActiveMQEndpointBuilder {
          * doing request/reply over JMS. By default Camel checks once per
          * second. But if you must react faster when a timeout occurs, then you
          * can lower this interval, to check more frequently. The timeout is
-         * determined by the option requestTimeout. The option is a long type.
+         * determined by the option requestTimeout. The option is a
+         * <code>long</code> type.
          */
         public T requestTimeoutCheckerInterval(
                 long requestTimeoutCheckerInterval) {
@@ -662,7 +677,7 @@ public interface ActiveMQEndpointBuilder {
          * second. But if you must react faster when a timeout occurs, then you
          * can lower this interval, to check more frequently. The timeout is
          * determined by the option requestTimeout. The option will be converted
-         * to a long type.
+         * to a <code>long</code> type.
          */
         public T requestTimeoutCheckerInterval(
                 String requestTimeoutCheckerInterval) {
@@ -672,7 +687,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -681,7 +696,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -698,7 +713,7 @@ public interface ActiveMQEndpointBuilder {
          * exception is required to be serializable. The original Exception on
          * the consumer side can be wrapped in an outer exception such as
          * org.apache.camel.RuntimeCamelException when returned to the producer.
-         * The option is a boolean type.
+         * The option is a <code>boolean</code> type.
          */
         public T transferException(boolean transferException) {
             this.properties.put("transferException", transferException);
@@ -715,7 +730,7 @@ public interface ActiveMQEndpointBuilder {
          * exception is required to be serializable. The original Exception on
          * the consumer side can be wrapped in an outer exception such as
          * org.apache.camel.RuntimeCamelException when returned to the producer.
-         * The option will be converted to a boolean type.
+         * The option will be converted to a <code>boolean</code> type.
          */
         public T transferException(String transferException) {
             this.properties.put("transferException", transferException);
@@ -729,7 +744,7 @@ public interface ActiveMQEndpointBuilder {
          * serializable. Camel will exclude any non-serializable objects and log
          * it at WARN level. You must enable this option on both the producer
          * and consumer side, so Camel knows the payloads is an Exchange and not
-         * a regular payload. The option is a boolean type.
+         * a regular payload. The option is a <code>boolean</code> type.
          */
         public T transferExchange(boolean transferExchange) {
             this.properties.put("transferExchange", transferExchange);
@@ -743,7 +758,8 @@ public interface ActiveMQEndpointBuilder {
          * serializable. Camel will exclude any non-serializable objects and log
          * it at WARN level. You must enable this option on both the producer
          * and consumer side, so Camel knows the payloads is an Exchange and not
-         * a regular payload. The option will be converted to a boolean type.
+         * a regular payload. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T transferExchange(String transferExchange) {
             this.properties.put("transferExchange", transferExchange);
@@ -758,7 +774,8 @@ public interface ActiveMQEndpointBuilder {
          * fault flag will be set on the
          * org.apache.camel.Message#setFault(boolean). You may want to enable
          * this when using Camel components that support faults such as SOAP
-         * based such as cxf or spring-ws. The option is a boolean type.
+         * based such as cxf or spring-ws. The option is a <code>boolean</code>
+         * type.
          */
         public T transferFault(boolean transferFault) {
             this.properties.put("transferFault", transferFault);
@@ -774,7 +791,7 @@ public interface ActiveMQEndpointBuilder {
          * org.apache.camel.Message#setFault(boolean). You may want to enable
          * this when using Camel components that support faults such as SOAP
          * based such as cxf or spring-ws. The option will be converted to a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public T transferFault(String transferFault) {
             this.properties.put("transferFault", transferFault);
@@ -782,7 +799,8 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Specifies whether JMSMessageID should always be used as
-         * JMSCorrelationID for InOut messages. The option is a boolean type.
+         * JMSCorrelationID for InOut messages. The option is a
+         * <code>boolean</code> type.
          */
         public T useMessageIDAsCorrelationID(boolean useMessageIDAsCorrelationID) {
             this.properties.put("useMessageIDAsCorrelationID", useMessageIDAsCorrelationID);
@@ -791,7 +809,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Specifies whether JMSMessageID should always be used as
          * JMSCorrelationID for InOut messages. The option will be converted to
-         * a boolean type.
+         * a <code>boolean</code> type.
          */
         public T useMessageIDAsCorrelationID(String useMessageIDAsCorrelationID) {
             this.properties.put("useMessageIDAsCorrelationID", useMessageIDAsCorrelationID);
@@ -801,7 +819,7 @@ public interface ActiveMQEndpointBuilder {
          * Number of times to wait for provisional correlation id to be updated
          * to the actual correlation id when doing request/reply over JMS and
          * when the option useMessageIDAsCorrelationID is enabled. The option is
-         * a int type.
+         * a <code>int</code> type.
          */
         public T waitForProvisionCorrelationToBeUpdatedCounter(
                 int waitForProvisionCorrelationToBeUpdatedCounter) {
@@ -812,7 +830,7 @@ public interface ActiveMQEndpointBuilder {
          * Number of times to wait for provisional correlation id to be updated
          * to the actual correlation id when doing request/reply over JMS and
          * when the option useMessageIDAsCorrelationID is enabled. The option
-         * will be converted to a int type.
+         * will be converted to a <code>int</code> type.
          */
         public T waitForProvisionCorrelationToBeUpdatedCounter(
                 String waitForProvisionCorrelationToBeUpdatedCounter) {
@@ -821,7 +839,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Interval in millis to sleep each time while waiting for provisional
-         * correlation id to be updated. The option is a long type.
+         * correlation id to be updated. The option is a <code>long</code> type.
          */
         public T waitForProvisionCorrelationToBeUpdatedThreadSleepingTime(
                 long waitForProvisionCorrelationToBeUpdatedThreadSleepingTime) {
@@ -830,8 +848,8 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Interval in millis to sleep each time while waiting for provisional
-         * correlation id to be updated. The option will be converted to a long
-         * type.
+         * correlation id to be updated. The option will be converted to a
+         * <code>long</code> type.
          */
         public T waitForProvisionCorrelationToBeUpdatedThreadSleepingTime(
                 String waitForProvisionCorrelationToBeUpdatedThreadSleepingTime) {
@@ -841,7 +859,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Password to use with the ConnectionFactory. You can also configure
          * username/password directly on the ConnectionFactory. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T password(String password) {
             this.properties.put("password", password);
@@ -850,15 +868,15 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Username to use with the ConnectionFactory. You can also configure
          * username/password directly on the ConnectionFactory. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T username(String username) {
             this.properties.put("username", username);
             return (T) this;
         }
         /**
-         * Specifies whether to use transacted mode. The option is a boolean
-         * type.
+         * Specifies whether to use transacted mode. The option is a
+         * <code>boolean</code> type.
          */
         public T transacted(boolean transacted) {
             this.properties.put("transacted", transacted);
@@ -866,7 +884,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Specifies whether to use transacted mode. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T transacted(String transacted) {
             this.properties.put("transacted", transacted);
@@ -875,7 +893,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * If true, Camel will create a JmsTransactionManager, if there is no
          * transactionManager injected when option transacted=true. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T lazyCreateTransactionManager(
                 boolean lazyCreateTransactionManager) {
@@ -885,7 +903,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * If true, Camel will create a JmsTransactionManager, if there is no
          * transactionManager injected when option transacted=true. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T lazyCreateTransactionManager(
                 String lazyCreateTransactionManager) {
@@ -894,7 +912,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * The Spring transaction manager to use. The option is a
-         * org.springframework.transaction.PlatformTransactionManager type.
+         * <code>org.springframework.transaction.PlatformTransactionManager</code> type.
          */
         public T transactionManager(Object transactionManager) {
             this.properties.put("transactionManager", transactionManager);
@@ -902,15 +920,16 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * The Spring transaction manager to use. The option will be converted
-         * to a org.springframework.transaction.PlatformTransactionManager type.
+         * to a
+         * <code>org.springframework.transaction.PlatformTransactionManager</code> type.
          */
         public T transactionManager(String transactionManager) {
             this.properties.put("transactionManager", transactionManager);
             return (T) this;
         }
         /**
-         * The name of the transaction to use. The option is a java.lang.String
-         * type.
+         * The name of the transaction to use. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T transactionName(String transactionName) {
             this.properties.put("transactionName", transactionName);
@@ -918,7 +937,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * The timeout value of the transaction (in seconds), if using
-         * transacted mode. The option is a int type.
+         * transacted mode. The option is a <code>int</code> type.
          */
         public T transactionTimeout(int transactionTimeout) {
             this.properties.put("transactionTimeout", transactionTimeout);
@@ -926,7 +945,8 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * The timeout value of the transaction (in seconds), if using
-         * transacted mode. The option will be converted to a int type.
+         * transacted mode. The option will be converted to a <code>int</code>
+         * type.
          */
         public T transactionTimeout(String transactionTimeout) {
             this.properties.put("transactionTimeout", transactionTimeout);
@@ -945,7 +965,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * The JMS acknowledgement name, which is one of: SESSION_TRANSACTED,
          * CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE. The option
-         * is a java.lang.String type.
+         * is a <code>java.lang.String</code> type.
          */
         public ActiveMQConsumerBuilder acknowledgementModeName(
                 String acknowledgementModeName) {
@@ -962,7 +982,7 @@ public interface ActiveMQEndpointBuilder {
          * the next message from the JMS queue. Note if transacted has been
          * enabled, then asyncConsumer=true does not run asynchronously, as
          * transaction must be executed synchronously (Camel 3.0 may support
-         * async transactions). The option is a boolean type.
+         * async transactions). The option is a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder asyncConsumer(boolean asyncConsumer) {
             this.properties.put("asyncConsumer", asyncConsumer);
@@ -978,7 +998,8 @@ public interface ActiveMQEndpointBuilder {
          * the next message from the JMS queue. Note if transacted has been
          * enabled, then asyncConsumer=true does not run asynchronously, as
          * transaction must be executed synchronously (Camel 3.0 may support
-         * async transactions). The option will be converted to a boolean type.
+         * async transactions). The option will be converted to a
+         * <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder asyncConsumer(String asyncConsumer) {
             this.properties.put("asyncConsumer", asyncConsumer);
@@ -986,7 +1007,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Specifies whether the consumer container should auto-startup. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder autoStartup(boolean autoStartup) {
             this.properties.put("autoStartup", autoStartup);
@@ -994,7 +1015,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Specifies whether the consumer container should auto-startup. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder autoStartup(String autoStartup) {
             this.properties.put("autoStartup", autoStartup);
@@ -1007,7 +1028,7 @@ public interface ActiveMQEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
@@ -1021,7 +1042,7 @@ public interface ActiveMQEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder bridgeErrorHandler(
                 String bridgeErrorHandler) {
@@ -1030,7 +1051,8 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Sets the cache level by ID for the underlying JMS resources. See
-         * cacheLevelName option for more details. The option is a int type.
+         * cacheLevelName option for more details. The option is a
+         * <code>int</code> type.
          */
         public ActiveMQConsumerBuilder cacheLevel(int cacheLevel) {
             this.properties.put("cacheLevel", cacheLevel);
@@ -1039,7 +1061,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Sets the cache level by ID for the underlying JMS resources. See
          * cacheLevelName option for more details. The option will be converted
-         * to a int type.
+         * to a <code>int</code> type.
          */
         public ActiveMQConsumerBuilder cacheLevel(String cacheLevel) {
             this.properties.put("cacheLevel", cacheLevel);
@@ -1050,7 +1072,7 @@ public interface ActiveMQEndpointBuilder {
          * Possible values are: CACHE_AUTO, CACHE_CONNECTION, CACHE_CONSUMER,
          * CACHE_NONE, and CACHE_SESSION. The default setting is CACHE_AUTO. See
          * the Spring documentation and Transactions Cache Levels for more
-         * information. The option is a java.lang.String type.
+         * information. The option is a <code>java.lang.String</code> type.
          */
         public ActiveMQConsumerBuilder cacheLevelName(String cacheLevelName) {
             this.properties.put("cacheLevelName", cacheLevelName);
@@ -1062,7 +1084,8 @@ public interface ActiveMQEndpointBuilder {
          * maxMessagesPerTask option to control dynamic scaling up/down of
          * threads. When doing request/reply over JMS then the option
          * replyToConcurrentConsumers is used to control number of concurrent
-         * consumers on the reply message listener. The option is a int type.
+         * consumers on the reply message listener. The option is a
+         * <code>int</code> type.
          */
         public ActiveMQConsumerBuilder concurrentConsumers(
                 int concurrentConsumers) {
@@ -1076,7 +1099,7 @@ public interface ActiveMQEndpointBuilder {
          * threads. When doing request/reply over JMS then the option
          * replyToConcurrentConsumers is used to control number of concurrent
          * consumers on the reply message listener. The option will be converted
-         * to a int type.
+         * to a <code>int</code> type.
          */
         public ActiveMQConsumerBuilder concurrentConsumers(
                 String concurrentConsumers) {
@@ -1089,7 +1112,8 @@ public interface ActiveMQEndpointBuilder {
          * maxMessagesPerTask option to control dynamic scaling up/down of
          * threads. When doing request/reply over JMS then the option
          * replyToMaxConcurrentConsumers is used to control number of concurrent
-         * consumers on the reply message listener. The option is a int type.
+         * consumers on the reply message listener. The option is a
+         * <code>int</code> type.
          */
         public ActiveMQConsumerBuilder maxConcurrentConsumers(
                 int maxConcurrentConsumers) {
@@ -1103,7 +1127,7 @@ public interface ActiveMQEndpointBuilder {
          * threads. When doing request/reply over JMS then the option
          * replyToMaxConcurrentConsumers is used to control number of concurrent
          * consumers on the reply message listener. The option will be converted
-         * to a int type.
+         * to a <code>int</code> type.
          */
         public ActiveMQConsumerBuilder maxConcurrentConsumers(
                 String maxConcurrentConsumers) {
@@ -1113,7 +1137,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Provides an explicit ReplyTo destination, which overrides any
          * incoming value of Message.getJMSReplyTo(). The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public ActiveMQConsumerBuilder replyTo(String replyTo) {
             this.properties.put("replyTo", replyTo);
@@ -1121,7 +1145,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Specifies whether to use persistent delivery by default for replies.
-         * The option is a boolean type.
+         * The option is a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder replyToDeliveryPersistent(
                 boolean replyToDeliveryPersistent) {
@@ -1130,7 +1154,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Specifies whether to use persistent delivery by default for replies.
-         * The option will be converted to a boolean type.
+         * The option will be converted to a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder replyToDeliveryPersistent(
                 String replyToDeliveryPersistent) {
@@ -1138,7 +1162,8 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
-         * Sets the JMS selector to use. The option is a java.lang.String type.
+         * Sets the JMS selector to use. The option is a
+         * <code>java.lang.String</code> type.
          */
         public ActiveMQConsumerBuilder selector(String selector) {
             this.properties.put("selector", selector);
@@ -1152,7 +1177,7 @@ public interface ActiveMQEndpointBuilder {
          * subscriptionName value (unless your message listener class name is
          * good enough as subscription name). Only makes sense when listening to
          * a topic (pub-sub domain), therefore this method switches the
-         * pubSubDomain flag as well. The option is a boolean type.
+         * pubSubDomain flag as well. The option is a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder subscriptionDurable(
                 boolean subscriptionDurable) {
@@ -1167,8 +1192,8 @@ public interface ActiveMQEndpointBuilder {
          * subscriptionName value (unless your message listener class name is
          * good enough as subscription name). Only makes sense when listening to
          * a topic (pub-sub domain), therefore this method switches the
-         * pubSubDomain flag as well. The option will be converted to a boolean
-         * type.
+         * pubSubDomain flag as well. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder subscriptionDurable(
                 String subscriptionDurable) {
@@ -1183,7 +1208,7 @@ public interface ActiveMQEndpointBuilder {
          * Note: Only 1 concurrent consumer (which is the default of this
          * message listener container) is allowed for each subscription, except
          * for a shared subscription (which requires JMS 2.0). The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public ActiveMQConsumerBuilder subscriptionName(String subscriptionName) {
             this.properties.put("subscriptionName", subscriptionName);
@@ -1200,7 +1225,7 @@ public interface ActiveMQEndpointBuilder {
          * subscriptionDurable as well. Only makes sense when listening to a
          * topic (pub-sub domain), therefore this method switches the
          * pubSubDomain flag as well. Requires a JMS 2.0 compatible message
-         * broker. The option is a boolean type.
+         * broker. The option is a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder subscriptionShared(
                 boolean subscriptionShared) {
@@ -1218,7 +1243,7 @@ public interface ActiveMQEndpointBuilder {
          * subscriptionDurable as well. Only makes sense when listening to a
          * topic (pub-sub domain), therefore this method switches the
          * pubSubDomain flag as well. Requires a JMS 2.0 compatible message
-         * broker. The option will be converted to a boolean type.
+         * broker. The option will be converted to a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder subscriptionShared(
                 String subscriptionShared) {
@@ -1234,7 +1259,7 @@ public interface ActiveMQEndpointBuilder {
          * redeliveries, which yet again may be rejected, and eventually the
          * message may be moved at a dead letter queue on the JMS broker. To
          * avoid this its recommended to enable this option. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder acceptMessagesWhileStopping(
                 boolean acceptMessagesWhileStopping) {
@@ -1250,7 +1275,7 @@ public interface ActiveMQEndpointBuilder {
          * redeliveries, which yet again may be rejected, and eventually the
          * message may be moved at a dead letter queue on the JMS broker. To
          * avoid this its recommended to enable this option. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder acceptMessagesWhileStopping(
                 String acceptMessagesWhileStopping) {
@@ -1265,7 +1290,7 @@ public interface ActiveMQEndpointBuilder {
          * and org.apache.camel.CamelContext is currently being stopped. This
          * quick stop ability is enabled by default in the regular JMS consumers
          * but to enable for reply managers you must enable this flag. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder allowReplyManagerQuickStop(
                 boolean allowReplyManagerQuickStop) {
@@ -1280,7 +1305,7 @@ public interface ActiveMQEndpointBuilder {
          * and org.apache.camel.CamelContext is currently being stopped. This
          * quick stop ability is enabled by default in the regular JMS consumers
          * but to enable for reply managers you must enable this flag. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder allowReplyManagerQuickStop(
                 String allowReplyManagerQuickStop) {
@@ -1297,8 +1322,8 @@ public interface ActiveMQEndpointBuilder {
          * Custom is specified, the MessageListenerContainerFactory defined by
          * the messageListenerContainerFactory option will determine what
          * org.springframework.jms.listener.AbstractMessageListenerContainer to
-         * use. The option is a org.apache.camel.component.jms.ConsumerType
-         * type.
+         * use. The option is a
+         * <code>org.apache.camel.component.jms.ConsumerType</code> type.
          */
         public ActiveMQConsumerBuilder consumerType(ConsumerType consumerType) {
             this.properties.put("consumerType", consumerType);
@@ -1315,7 +1340,7 @@ public interface ActiveMQEndpointBuilder {
          * the messageListenerContainerFactory option will determine what
          * org.springframework.jms.listener.AbstractMessageListenerContainer to
          * use. The option will be converted to a
-         * org.apache.camel.component.jms.ConsumerType type.
+         * <code>org.apache.camel.component.jms.ConsumerType</code> type.
          */
         public ActiveMQConsumerBuilder consumerType(String consumerType) {
             this.properties.put("consumerType", consumerType);
@@ -1332,7 +1357,8 @@ public interface ActiveMQEndpointBuilder {
          * consumers. The use of ThreadPool is recommended to reduce thread
          * trash in elastic configurations with dynamically increasing and
          * decreasing concurrent consumers. The option is a
-         * org.apache.camel.component.jms.DefaultTaskExecutorType type.
+         * <code>org.apache.camel.component.jms.DefaultTaskExecutorType</code>
+         * type.
          */
         public ActiveMQConsumerBuilder defaultTaskExecutorType(
                 DefaultTaskExecutorType defaultTaskExecutorType) {
@@ -1350,7 +1376,8 @@ public interface ActiveMQEndpointBuilder {
          * consumers. The use of ThreadPool is recommended to reduce thread
          * trash in elastic configurations with dynamically increasing and
          * decreasing concurrent consumers. The option will be converted to a
-         * org.apache.camel.component.jms.DefaultTaskExecutorType type.
+         * <code>org.apache.camel.component.jms.DefaultTaskExecutorType</code>
+         * type.
          */
         public ActiveMQConsumerBuilder defaultTaskExecutorType(
                 String defaultTaskExecutorType) {
@@ -1362,7 +1389,7 @@ public interface ActiveMQEndpointBuilder {
          * message is loaded which generally is inefficient as the JMS
          * properties may not be required but sometimes can catch early any
          * issues with the underlying JMS provider and the use of JMS
-         * properties. The option is a boolean type.
+         * properties. The option is a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder eagerLoadingOfProperties(
                 boolean eagerLoadingOfProperties) {
@@ -1374,7 +1401,8 @@ public interface ActiveMQEndpointBuilder {
          * message is loaded which generally is inefficient as the JMS
          * properties may not be required but sometimes can catch early any
          * issues with the underlying JMS provider and the use of JMS
-         * properties. The option will be converted to a boolean type.
+         * properties. The option will be converted to a <code>boolean</code>
+         * type.
          */
         public ActiveMQConsumerBuilder eagerLoadingOfProperties(
                 String eagerLoadingOfProperties) {
@@ -1386,7 +1414,7 @@ public interface ActiveMQEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public ActiveMQConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -1398,7 +1426,8 @@ public interface ActiveMQEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public ActiveMQConsumerBuilder exceptionHandler(String exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
@@ -1406,7 +1435,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public ActiveMQConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -1415,7 +1444,8 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public ActiveMQConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
@@ -1423,7 +1453,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Specifies whether the listener session should be exposed when
-         * consuming messages. The option is a boolean type.
+         * consuming messages. The option is a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder exposeListenerSession(
                 boolean exposeListenerSession) {
@@ -1432,7 +1462,8 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Specifies whether the listener session should be exposed when
-         * consuming messages. The option will be converted to a boolean type.
+         * consuming messages. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder exposeListenerSession(
                 String exposeListenerSession) {
@@ -1443,7 +1474,7 @@ public interface ActiveMQEndpointBuilder {
          * Whether a JMS consumer is allowed to send a reply message to the same
          * destination that the consumer is using to consume from. This prevents
          * an endless loop by consuming and sending back the same message to
-         * itself. The option is a boolean type.
+         * itself. The option is a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder replyToSameDestinationAllowed(
                 boolean replyToSameDestinationAllowed) {
@@ -1454,7 +1485,7 @@ public interface ActiveMQEndpointBuilder {
          * Whether a JMS consumer is allowed to send a reply message to the same
          * destination that the consumer is using to consume from. This prevents
          * an endless loop by consuming and sending back the same message to
-         * itself. The option will be converted to a boolean type.
+         * itself. The option will be converted to a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder replyToSameDestinationAllowed(
                 String replyToSameDestinationAllowed) {
@@ -1463,7 +1494,8 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Allows you to specify a custom task executor for consuming messages.
-         * The option is a org.springframework.core.task.TaskExecutor type.
+         * The option is a
+         * <code>org.springframework.core.task.TaskExecutor</code> type.
          */
         public ActiveMQConsumerBuilder taskExecutor(Object taskExecutor) {
             this.properties.put("taskExecutor", taskExecutor);
@@ -1472,7 +1504,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Allows you to specify a custom task executor for consuming messages.
          * The option will be converted to a
-         * org.springframework.core.task.TaskExecutor type.
+         * <code>org.springframework.core.task.TaskExecutor</code> type.
          */
         public ActiveMQConsumerBuilder taskExecutor(String taskExecutor) {
             this.properties.put("taskExecutor", taskExecutor);
@@ -1481,7 +1513,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Allows to configure the default errorHandler logging level for
          * logging uncaught exceptions. The option is a
-         * org.apache.camel.LoggingLevel type.
+         * <code>org.apache.camel.LoggingLevel</code> type.
          */
         public ActiveMQConsumerBuilder errorHandlerLoggingLevel(
                 LoggingLevel errorHandlerLoggingLevel) {
@@ -1491,7 +1523,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Allows to configure the default errorHandler logging level for
          * logging uncaught exceptions. The option will be converted to a
-         * org.apache.camel.LoggingLevel type.
+         * <code>org.apache.camel.LoggingLevel</code> type.
          */
         public ActiveMQConsumerBuilder errorHandlerLoggingLevel(
                 String errorHandlerLoggingLevel) {
@@ -1500,7 +1532,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Allows to control whether stacktraces should be logged or not, by the
-         * default errorHandler. The option is a boolean type.
+         * default errorHandler. The option is a <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder errorHandlerLogStackTrace(
                 boolean errorHandlerLogStackTrace) {
@@ -1509,7 +1541,8 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Allows to control whether stacktraces should be logged or not, by the
-         * default errorHandler. The option will be converted to a boolean type.
+         * default errorHandler. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public ActiveMQConsumerBuilder errorHandlerLogStackTrace(
                 String errorHandlerLogStackTrace) {
@@ -1529,7 +1562,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Specifies the delivery mode to be used. Possibles values are those
          * defined by javax.jms.DeliveryMode. NON_PERSISTENT = 1 and PERSISTENT
-         * = 2. The option is a java.lang.Integer type.
+         * = 2. The option is a <code>java.lang.Integer</code> type.
          */
         public ActiveMQProducerBuilder deliveryMode(Integer deliveryMode) {
             this.properties.put("deliveryMode", deliveryMode);
@@ -1538,7 +1571,8 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Specifies the delivery mode to be used. Possibles values are those
          * defined by javax.jms.DeliveryMode. NON_PERSISTENT = 1 and PERSISTENT
-         * = 2. The option will be converted to a java.lang.Integer type.
+         * = 2. The option will be converted to a <code>java.lang.Integer</code>
+         * type.
          */
         public ActiveMQProducerBuilder deliveryMode(String deliveryMode) {
             this.properties.put("deliveryMode", deliveryMode);
@@ -1546,7 +1580,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Specifies whether persistent delivery is used by default. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder deliveryPersistent(
                 boolean deliveryPersistent) {
@@ -1555,7 +1589,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Specifies whether persistent delivery is used by default. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder deliveryPersistent(
                 String deliveryPersistent) {
@@ -1569,7 +1603,7 @@ public interface ActiveMQEndpointBuilder {
          * options are applied to the current endpoint. This contrasts with the
          * preserveMessageQos option, which operates at message granularity,
          * reading QoS properties exclusively from the Camel In message headers.
-         * The option is a java.lang.Boolean type.
+         * The option is a <code>java.lang.Boolean</code> type.
          */
         public ActiveMQProducerBuilder explicitQosEnabled(
                 Boolean explicitQosEnabled) {
@@ -1583,7 +1617,8 @@ public interface ActiveMQEndpointBuilder {
          * options are applied to the current endpoint. This contrasts with the
          * preserveMessageQos option, which operates at message granularity,
          * reading QoS properties exclusively from the Camel In message headers.
-         * The option will be converted to a java.lang.Boolean type.
+         * The option will be converted to a <code>java.lang.Boolean</code>
+         * type.
          */
         public ActiveMQProducerBuilder explicitQosEnabled(
                 String explicitQosEnabled) {
@@ -1592,7 +1627,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Sets whether date headers should be formatted according to the ISO
-         * 8601 standard. The option is a boolean type.
+         * 8601 standard. The option is a <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder formatDateHeadersToIso8601(
                 boolean formatDateHeadersToIso8601) {
@@ -1601,7 +1636,8 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * Sets whether date headers should be formatted according to the ISO
-         * 8601 standard. The option will be converted to a boolean type.
+         * 8601 standard. The option will be converted to a <code>boolean</code>
+         * type.
          */
         public ActiveMQProducerBuilder formatDateHeadersToIso8601(
                 String formatDateHeadersToIso8601) {
@@ -1617,7 +1653,8 @@ public interface ActiveMQEndpointBuilder {
          * the endpoint instead. So, when using this option, the headers
          * override the values from the endpoint. The explicitQosEnabled option,
          * by contrast, will only use options set on the endpoint, and not
-         * values from the message header. The option is a boolean type.
+         * values from the message header. The option is a <code>boolean</code>
+         * type.
          */
         public ActiveMQProducerBuilder preserveMessageQos(
                 boolean preserveMessageQos) {
@@ -1634,7 +1671,7 @@ public interface ActiveMQEndpointBuilder {
          * override the values from the endpoint. The explicitQosEnabled option,
          * by contrast, will only use options set on the endpoint, and not
          * values from the message header. The option will be converted to a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder preserveMessageQos(
                 String preserveMessageQos) {
@@ -1645,7 +1682,7 @@ public interface ActiveMQEndpointBuilder {
          * Values greater than 1 specify the message priority when sending
          * (where 0 is the lowest priority and 9 is the highest). The
          * explicitQosEnabled option must also be enabled in order for this
-         * option to have any effect. The option is a int type.
+         * option to have any effect. The option is a <code>int</code> type.
          */
         public ActiveMQProducerBuilder priority(int priority) {
             this.properties.put("priority", priority);
@@ -1655,8 +1692,8 @@ public interface ActiveMQEndpointBuilder {
          * Values greater than 1 specify the message priority when sending
          * (where 0 is the lowest priority and 9 is the highest). The
          * explicitQosEnabled option must also be enabled in order for this
-         * option to have any effect. The option will be converted to a int
-         * type.
+         * option to have any effect. The option will be converted to a
+         * <code>int</code> type.
          */
         public ActiveMQProducerBuilder priority(String priority) {
             this.properties.put("priority", priority);
@@ -1665,7 +1702,8 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Specifies the default number of concurrent consumers when doing
          * request/reply over JMS. See also the maxMessagesPerTask option to
-         * control dynamic scaling up/down of threads. The option is a int type.
+         * control dynamic scaling up/down of threads. The option is a
+         * <code>int</code> type.
          */
         public ActiveMQProducerBuilder replyToConcurrentConsumers(
                 int replyToConcurrentConsumers) {
@@ -1676,7 +1714,7 @@ public interface ActiveMQEndpointBuilder {
          * Specifies the default number of concurrent consumers when doing
          * request/reply over JMS. See also the maxMessagesPerTask option to
          * control dynamic scaling up/down of threads. The option will be
-         * converted to a int type.
+         * converted to a <code>int</code> type.
          */
         public ActiveMQProducerBuilder replyToConcurrentConsumers(
                 String replyToConcurrentConsumers) {
@@ -1686,7 +1724,8 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Specifies the maximum number of concurrent consumers when using
          * request/reply over JMS. See also the maxMessagesPerTask option to
-         * control dynamic scaling up/down of threads. The option is a int type.
+         * control dynamic scaling up/down of threads. The option is a
+         * <code>int</code> type.
          */
         public ActiveMQProducerBuilder replyToMaxConcurrentConsumers(
                 int replyToMaxConcurrentConsumers) {
@@ -1697,7 +1736,7 @@ public interface ActiveMQEndpointBuilder {
          * Specifies the maximum number of concurrent consumers when using
          * request/reply over JMS. See also the maxMessagesPerTask option to
          * control dynamic scaling up/down of threads. The option will be
-         * converted to a int type.
+         * converted to a <code>int</code> type.
          */
         public ActiveMQProducerBuilder replyToMaxConcurrentConsumers(
                 String replyToMaxConcurrentConsumers) {
@@ -1707,7 +1746,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Specifies the maximum number of concurrent consumers for continue
          * routing when timeout occurred when using request/reply over JMS. The
-         * option is a int type.
+         * option is a <code>int</code> type.
          */
         public ActiveMQProducerBuilder replyToOnTimeoutMaxConcurrentConsumers(
                 int replyToOnTimeoutMaxConcurrentConsumers) {
@@ -1717,7 +1756,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Specifies the maximum number of concurrent consumers for continue
          * routing when timeout occurred when using request/reply over JMS. The
-         * option will be converted to a int type.
+         * option will be converted to a <code>int</code> type.
          */
         public ActiveMQProducerBuilder replyToOnTimeoutMaxConcurrentConsumers(
                 String replyToOnTimeoutMaxConcurrentConsumers) {
@@ -1728,7 +1767,8 @@ public interface ActiveMQEndpointBuilder {
          * Provides an explicit ReplyTo destination in the JMS message, which
          * overrides the setting of replyTo. It is useful if you want to forward
          * the message to a remote Queue and receive the reply message from the
-         * ReplyTo destination. The option is a java.lang.String type.
+         * ReplyTo destination. The option is a <code>java.lang.String</code>
+         * type.
          */
         public ActiveMQProducerBuilder replyToOverride(String replyToOverride) {
             this.properties.put("replyToOverride", replyToOverride);
@@ -1744,7 +1784,8 @@ public interface ActiveMQEndpointBuilder {
          * and especially the notes about the implications if running in a
          * clustered environment, and the fact that Shared reply queues has
          * lower performance than its alternatives Temporary and Exclusive. The
-         * option is a org.apache.camel.component.jms.ReplyToType type.
+         * option is a <code>org.apache.camel.component.jms.ReplyToType</code>
+         * type.
          */
         public ActiveMQProducerBuilder replyToType(ReplyToType replyToType) {
             this.properties.put("replyToType", replyToType);
@@ -1761,7 +1802,7 @@ public interface ActiveMQEndpointBuilder {
          * clustered environment, and the fact that Shared reply queues has
          * lower performance than its alternatives Temporary and Exclusive. The
          * option will be converted to a
-         * org.apache.camel.component.jms.ReplyToType type.
+         * <code>org.apache.camel.component.jms.ReplyToType</code> type.
          */
         public ActiveMQProducerBuilder replyToType(String replyToType) {
             this.properties.put("replyToType", replyToType);
@@ -1773,7 +1814,7 @@ public interface ActiveMQEndpointBuilder {
          * the header CamelJmsRequestTimeout to override this endpoint
          * configured timeout value, and thus have per message individual
          * timeout values. See also the requestTimeoutCheckerInterval option.
-         * The option is a long type.
+         * The option is a <code>long</code> type.
          */
         public ActiveMQProducerBuilder requestTimeout(long requestTimeout) {
             this.properties.put("requestTimeout", requestTimeout);
@@ -1785,7 +1826,7 @@ public interface ActiveMQEndpointBuilder {
          * the header CamelJmsRequestTimeout to override this endpoint
          * configured timeout value, and thus have per message individual
          * timeout values. See also the requestTimeoutCheckerInterval option.
-         * The option will be converted to a long type.
+         * The option will be converted to a <code>long</code> type.
          */
         public ActiveMQProducerBuilder requestTimeout(String requestTimeout) {
             this.properties.put("requestTimeout", requestTimeout);
@@ -1793,7 +1834,7 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * When sending messages, specifies the time-to-live of the message (in
-         * milliseconds). The option is a long type.
+         * milliseconds). The option is a <code>long</code> type.
          */
         public ActiveMQProducerBuilder timeToLive(long timeToLive) {
             this.properties.put("timeToLive", timeToLive);
@@ -1801,7 +1842,8 @@ public interface ActiveMQEndpointBuilder {
         }
         /**
          * When sending messages, specifies the time-to-live of the message (in
-         * milliseconds). The option will be converted to a long type.
+         * milliseconds). The option will be converted to a <code>long</code>
+         * type.
          */
         public ActiveMQProducerBuilder timeToLive(String timeToLive) {
             this.properties.put("timeToLive", timeToLive);
@@ -1813,8 +1855,8 @@ public interface ActiveMQEndpointBuilder {
          * message systems such as WMQ do this with header names using prefix
          * JMS_IBM_MQMD_ containing values with byte array or other invalid
          * types. You can specify multiple header names separated by comma, and
-         * use as suffix for wildcard matching. The option is a java.lang.String
-         * type.
+         * use as suffix for wildcard matching. The option is a
+         * <code>java.lang.String</code> type.
          */
         public ActiveMQProducerBuilder allowAdditionalHeaders(
                 String allowAdditionalHeaders) {
@@ -1824,7 +1866,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Whether to allow sending messages with no body. If this option is
          * false and the message body is null, then an JMSException is thrown.
-         * The option is a boolean type.
+         * The option is a <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder allowNullBody(boolean allowNullBody) {
             this.properties.put("allowNullBody", allowNullBody);
@@ -1833,7 +1875,7 @@ public interface ActiveMQEndpointBuilder {
         /**
          * Whether to allow sending messages with no body. If this option is
          * false and the message body is null, then an JMSException is thrown.
-         * The option will be converted to a boolean type.
+         * The option will be converted to a <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder allowNullBody(String allowNullBody) {
             this.properties.put("allowNullBody", allowNullBody);
@@ -1845,7 +1887,8 @@ public interface ActiveMQEndpointBuilder {
          * needed in some situations, such as when a
          * replyToDestinationSelectorName is set (incidentally, Camel will set
          * the alwaysCopyMessage option to true, if a
-         * replyToDestinationSelectorName is set). The option is a boolean type.
+         * replyToDestinationSelectorName is set). The option is a
+         * <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder alwaysCopyMessage(
                 boolean alwaysCopyMessage) {
@@ -1859,7 +1902,7 @@ public interface ActiveMQEndpointBuilder {
          * replyToDestinationSelectorName is set (incidentally, Camel will set
          * the alwaysCopyMessage option to true, if a
          * replyToDestinationSelectorName is set). The option will be converted
-         * to a boolean type.
+         * to a <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder alwaysCopyMessage(
                 String alwaysCopyMessage) {
@@ -1873,7 +1916,7 @@ public interface ActiveMQEndpointBuilder {
          * using JMSCorrelationID JMS property. If used JMSCorrelationID will
          * not be used or set by Camel. The value of here named property will be
          * generated if not supplied in the header of the message under the same
-         * name. The option is a java.lang.String type.
+         * name. The option is a <code>java.lang.String</code> type.
          */
         public ActiveMQProducerBuilder correlationProperty(
                 String correlationProperty) {
@@ -1889,7 +1932,7 @@ public interface ActiveMQEndpointBuilder {
          * to archive. So you can use disableTimeToLive=true to not set a time
          * to live value on the sent message. Then the message will not expire
          * on the receiver system. See below in section About time to live for
-         * more details. The option is a boolean type.
+         * more details. The option is a <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder disableTimeToLive(
                 boolean disableTimeToLive) {
@@ -1905,7 +1948,8 @@ public interface ActiveMQEndpointBuilder {
          * to archive. So you can use disableTimeToLive=true to not set a time
          * to live value on the sent message. Then the message will not expire
          * on the receiver system. See below in section About time to live for
-         * more details. The option will be converted to a boolean type.
+         * more details. The option will be converted to a <code>boolean</code>
+         * type.
          */
         public ActiveMQProducerBuilder disableTimeToLive(
                 String disableTimeToLive) {
@@ -1916,7 +1960,8 @@ public interface ActiveMQEndpointBuilder {
          * When using mapJmsMessage=false Camel will create a new JMS message to
          * send to a new JMS destination if you touch the headers (get or set)
          * during the route. Set this option to true to force Camel to send the
-         * original JMS message that was received. The option is a boolean type.
+         * original JMS message that was received. The option is a
+         * <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder forceSendOriginalMessage(
                 boolean forceSendOriginalMessage) {
@@ -1928,7 +1973,7 @@ public interface ActiveMQEndpointBuilder {
          * send to a new JMS destination if you touch the headers (get or set)
          * during the route. Set this option to true to force Camel to send the
          * original JMS message that was received. The option will be converted
-         * to a boolean type.
+         * to a <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder forceSendOriginalMessage(
                 String forceSendOriginalMessage) {
@@ -1939,8 +1984,8 @@ public interface ActiveMQEndpointBuilder {
          * Only applicable when sending to JMS destination using InOnly (eg fire
          * and forget). Enabling this option will enrich the Camel Exchange with
          * the actual JMSMessageID that was used by the JMS client when the
-         * message was sent to the JMS destination. The option is a boolean
-         * type.
+         * message was sent to the JMS destination. The option is a
+         * <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder includeSentJMSMessageID(
                 boolean includeSentJMSMessageID) {
@@ -1952,7 +1997,7 @@ public interface ActiveMQEndpointBuilder {
          * and forget). Enabling this option will enrich the Camel Exchange with
          * the actual JMSMessageID that was used by the JMS client when the
          * message was sent to the JMS destination. The option will be converted
-         * to a boolean type.
+         * to a <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder includeSentJMSMessageID(
                 String includeSentJMSMessageID) {
@@ -1969,7 +2014,7 @@ public interface ActiveMQEndpointBuilder {
          * replyToCacheLevelName=CACHE_NONE to work. Note: If using temporary
          * queues then CACHE_NONE is not allowed, and you must use a higher
          * value such as CACHE_CONSUMER or CACHE_SESSION. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public ActiveMQProducerBuilder replyToCacheLevelName(
                 String replyToCacheLevelName) {
@@ -1980,7 +2025,7 @@ public interface ActiveMQEndpointBuilder {
          * Sets the JMS Selector using the fixed name to be used so you can
          * filter out your own replies from the others when using a shared queue
          * (that is, if you are not using a temporary reply queue). The option
-         * is a java.lang.String type.
+         * is a <code>java.lang.String</code> type.
          */
         public ActiveMQProducerBuilder replyToDestinationSelectorName(
                 String replyToDestinationSelectorName) {
@@ -1995,7 +2040,7 @@ public interface ActiveMQEndpointBuilder {
          * entire message payload to be read into memory. By enabling this
          * option the message payload is read into memory in chunks and each
          * chunk is then written to the StreamMessage until no more data. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder streamMessageTypeEnabled(
                 boolean streamMessageTypeEnabled) {
@@ -2010,7 +2055,7 @@ public interface ActiveMQEndpointBuilder {
          * entire message payload to be read into memory. By enabling this
          * option the message payload is read into memory in chunks and each
          * chunk is then written to the StreamMessage until no more data. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public ActiveMQProducerBuilder streamMessageTypeEnabled(
                 String streamMessageTypeEnabled) {
@@ -2020,7 +2065,7 @@ public interface ActiveMQEndpointBuilder {
     }
 
     public static enum JmsMessageType {
-        Bytes, Map, Object, Stream, Text;
+        Bytes, Map, Object, Stream, Text, Blob;
     }
 
     public static enum ConsumerType {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java
index e0264c4..3b1c6f5 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java
@@ -41,7 +41,7 @@ public interface AhcEndpointBuilder {
         }
         /**
          * The URI to use such as http://hostname:port/path. The option is a
-         * java.net.URI type.
+         * <code>java.net.URI</code> type.
          */
         public T httpUri(URI httpUri) {
             this.properties.put("httpUri", httpUri);
@@ -49,7 +49,7 @@ public interface AhcEndpointBuilder {
         }
         /**
          * The URI to use such as http://hostname:port/path. The option will be
-         * converted to a java.net.URI type.
+         * converted to a <code>java.net.URI</code> type.
          */
         public T httpUri(String httpUri) {
             this.properties.put("httpUri", httpUri);
@@ -59,7 +59,7 @@ public interface AhcEndpointBuilder {
          * If the option is true, then the Exchange.HTTP_URI header is ignored,
          * and use the endpoint's URI for request. You may also set the
          * throwExceptionOnFailure to be false to let the AhcProducer send all
-         * the fault response back. The option is a boolean type.
+         * the fault response back. The option is a <code>boolean</code> type.
          */
         public T bridgeEndpoint(boolean bridgeEndpoint) {
             this.properties.put("bridgeEndpoint", bridgeEndpoint);
@@ -69,8 +69,8 @@ public interface AhcEndpointBuilder {
          * If the option is true, then the Exchange.HTTP_URI header is ignored,
          * and use the endpoint's URI for request. You may also set the
          * throwExceptionOnFailure to be false to let the AhcProducer send all
-         * the fault response back. The option will be converted to a boolean
-         * type.
+         * the fault response back. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T bridgeEndpoint(String bridgeEndpoint) {
             this.properties.put("bridgeEndpoint", bridgeEndpoint);
@@ -78,7 +78,7 @@ public interface AhcEndpointBuilder {
         }
         /**
          * The initial in-memory buffer size used when transferring data between
-         * Camel and AHC Client. The option is a int type.
+         * Camel and AHC Client. The option is a <code>int</code> type.
          */
         public T bufferSize(int bufferSize) {
             this.properties.put("bufferSize", bufferSize);
@@ -86,7 +86,8 @@ public interface AhcEndpointBuilder {
         }
         /**
          * The initial in-memory buffer size used when transferring data between
-         * Camel and AHC Client. The option will be converted to a int type.
+         * Camel and AHC Client. The option will be converted to a
+         * <code>int</code> type.
          */
         public T bufferSize(String bufferSize) {
             this.properties.put("bufferSize", bufferSize);
@@ -95,7 +96,7 @@ public interface AhcEndpointBuilder {
         /**
          * To use a custom HeaderFilterStrategy to filter header to and from
          * Camel message. The option is a
-         * org.apache.camel.spi.HeaderFilterStrategy type.
+         * <code>org.apache.camel.spi.HeaderFilterStrategy</code> type.
          */
         public T headerFilterStrategy(HeaderFilterStrategy headerFilterStrategy) {
             this.properties.put("headerFilterStrategy", headerFilterStrategy);
@@ -104,7 +105,7 @@ public interface AhcEndpointBuilder {
         /**
          * To use a custom HeaderFilterStrategy to filter header to and from
          * Camel message. The option will be converted to a
-         * org.apache.camel.spi.HeaderFilterStrategy type.
+         * <code>org.apache.camel.spi.HeaderFilterStrategy</code> type.
          */
         public T headerFilterStrategy(String headerFilterStrategy) {
             this.properties.put("headerFilterStrategy", headerFilterStrategy);
@@ -113,8 +114,8 @@ public interface AhcEndpointBuilder {
         /**
          * Option to disable throwing the AhcOperationFailedException in case of
          * failed responses from the remote server. This allows you to get all
-         * responses regardless of the HTTP status code. The option is a boolean
-         * type.
+         * responses regardless of the HTTP status code. The option is a
+         * <code>boolean</code> type.
          */
         public T throwExceptionOnFailure(boolean throwExceptionOnFailure) {
             this.properties.put("throwExceptionOnFailure", throwExceptionOnFailure);
@@ -124,7 +125,7 @@ public interface AhcEndpointBuilder {
          * Option to disable throwing the AhcOperationFailedException in case of
          * failed responses from the remote server. This allows you to get all
          * responses regardless of the HTTP status code. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T throwExceptionOnFailure(String throwExceptionOnFailure) {
             this.properties.put("throwExceptionOnFailure", throwExceptionOnFailure);
@@ -140,7 +141,7 @@ public interface AhcEndpointBuilder {
          * serialized. 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. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public T transferException(boolean transferException) {
             this.properties.put("transferException", transferException);
@@ -156,7 +157,7 @@ public interface AhcEndpointBuilder {
          * serialized. 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. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T transferException(String transferException) {
             this.properties.put("transferException", transferException);
@@ -165,7 +166,7 @@ public interface AhcEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -174,7 +175,7 @@ public interface AhcEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -183,7 +184,7 @@ public interface AhcEndpointBuilder {
         /**
          * To use a custom AhcBinding which allows to control how to bind
          * between AHC and Camel. The option is a
-         * org.apache.camel.component.ahc.AhcBinding type.
+         * <code>org.apache.camel.component.ahc.AhcBinding</code> type.
          */
         public T binding(Object binding) {
             this.properties.put("binding", binding);
@@ -192,7 +193,7 @@ public interface AhcEndpointBuilder {
         /**
          * To use a custom AhcBinding which allows to control how to bind
          * between AHC and Camel. The option will be converted to a
-         * org.apache.camel.component.ahc.AhcBinding type.
+         * <code>org.apache.camel.component.ahc.AhcBinding</code> type.
          */
         public T binding(String binding) {
             this.properties.put("binding", binding);
@@ -201,7 +202,7 @@ public interface AhcEndpointBuilder {
         /**
          * To configure the AsyncHttpClient to use a custom
          * com.ning.http.client.AsyncHttpClientConfig instance. The option is a
-         * org.asynchttpclient.AsyncHttpClientConfig type.
+         * <code>org.asynchttpclient.AsyncHttpClientConfig</code> type.
          */
         public T clientConfig(Object clientConfig) {
             this.properties.put("clientConfig", clientConfig);
@@ -210,7 +211,8 @@ public interface AhcEndpointBuilder {
         /**
          * To configure the AsyncHttpClient to use a custom
          * com.ning.http.client.AsyncHttpClientConfig instance. The option will
-         * be converted to a org.asynchttpclient.AsyncHttpClientConfig type.
+         * be converted to a
+         * <code>org.asynchttpclient.AsyncHttpClientConfig</code> type.
          */
         public T clientConfig(String clientConfig) {
             this.properties.put("clientConfig", clientConfig);
@@ -218,8 +220,8 @@ public interface AhcEndpointBuilder {
         }
         /**
          * To configure the AsyncHttpClientConfig using the key/values from the
-         * Map. The option is a java.util.Map<java.lang.String,java.lang.Object>
-         * type.
+         * Map. The option is a <code>java.util.Map<java.lang.String,
+         * java.lang.Object></code> type.
          */
         public T clientConfigOptions(Map<String, Object> clientConfigOptions) {
             this.properties.put("clientConfigOptions", clientConfigOptions);
@@ -228,7 +230,7 @@ public interface AhcEndpointBuilder {
         /**
          * To configure the AsyncHttpClientConfig using the key/values from the
          * Map. The option will be converted to a
-         * java.util.Map<java.lang.String,java.lang.Object> type.
+         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
          */
         public T clientConfigOptions(String clientConfigOptions) {
             this.properties.put("clientConfigOptions", clientConfigOptions);
@@ -237,7 +239,7 @@ public interface AhcEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -246,7 +248,7 @@ public interface AhcEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -254,8 +256,8 @@ public interface AhcEndpointBuilder {
         }
         /**
          * To configure the AsyncHttpClientConfig Realm using the key/values
-         * from the Map. The option is a
-         * java.util.Map<java.lang.String,java.lang.Object> type.
+         * from the Map. The option is a <code>java.util.Map<java.lang.String,
+         * java.lang.Object></code> type.
          */
         public T clientConfigRealmOptions(
                 Map<String, Object> clientConfigRealmOptions) {
@@ -265,7 +267,7 @@ public interface AhcEndpointBuilder {
         /**
          * To configure the AsyncHttpClientConfig Realm using the key/values
          * from the Map. The option will be converted to a
-         * java.util.Map<java.lang.String,java.lang.Object> type.
+         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
          */
         public T clientConfigRealmOptions(String clientConfigRealmOptions) {
             this.properties.put("clientConfigRealmOptions", clientConfigRealmOptions);
@@ -278,7 +280,8 @@ public interface AhcEndpointBuilder {
          * Configuration Utility. Note that configuring this option will
          * override any SSL/TLS configuration options provided through the
          * clientConfig option at the endpoint or component level. The option is
-         * a org.apache.camel.support.jsse.SSLContextParameters type.
+         * a <code>org.apache.camel.support.jsse.SSLContextParameters</code>
+         * type.
          */
         public T sslContextParameters(Object sslContextParameters) {
             this.properties.put("sslContextParameters", sslContextParameters);
@@ -292,7 +295,7 @@ public interface AhcEndpointBuilder {
          * override any SSL/TLS configuration options provided through the
          * clientConfig option at the endpoint or component level. The option
          * will be converted to a
-         * org.apache.camel.support.jsse.SSLContextParameters type.
+         * <code>org.apache.camel.support.jsse.SSLContextParameters</code> type.
          */
         public T sslContextParameters(String sslContextParameters) {
             this.properties.put("sslContextParameters", sslContextParameters);
@@ -310,8 +313,8 @@ public interface AhcEndpointBuilder {
         }
         /**
          * Define if the Connection Close header has to be added to HTTP
-         * Request. This parameter is false by default. The option is a boolean
-         * type.
+         * Request. This parameter is false by default. The option is a
+         * <code>boolean</code> type.
          */
         public AhcProducerBuilder connectionClose(boolean connectionClose) {
             this.properties.put("connectionClose", connectionClose);
@@ -320,7 +323,7 @@ public interface AhcEndpointBuilder {
         /**
          * Define if the Connection Close header has to be added to HTTP
          * Request. This parameter is false by default. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public AhcProducerBuilder connectionClose(String connectionClose) {
             this.properties.put("connectionClose", connectionClose);
@@ -328,7 +331,8 @@ public interface AhcEndpointBuilder {
         }
         /**
          * Configure a cookie handler to maintain a HTTP session. The option is
-         * a org.apache.camel.http.common.cookie.CookieHandler type.
+         * a <code>org.apache.camel.http.common.cookie.CookieHandler</code>
+         * type.
          */
         public AhcProducerBuilder cookieHandler(Object cookieHandler) {
             this.properties.put("cookieHandler", cookieHandler);
@@ -337,7 +341,7 @@ public interface AhcEndpointBuilder {
         /**
          * Configure a cookie handler to maintain a HTTP session. The option
          * will be converted to a
-         * org.apache.camel.http.common.cookie.CookieHandler type.
+         * <code>org.apache.camel.http.common.cookie.CookieHandler</code> type.
          */
         public AhcProducerBuilder cookieHandler(String cookieHandler) {
             this.properties.put("cookieHandler", cookieHandler);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java
index c3ce8de..aa3612c 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java
@@ -45,7 +45,8 @@ public interface ApnsEndpointBuilder {
             super("apns", path);
         }
         /**
-         * Name of the endpoint. The option is a java.lang.String type.
+         * Name of the endpoint. The option is a <code>java.lang.String</code>
+         * type.
          */
         public T name(String name) {
             this.properties.put("name", name);
@@ -54,7 +55,7 @@ public interface ApnsEndpointBuilder {
         /**
          * Configure this property in case you want to statically declare tokens
          * related to devices you want to notify. Tokens are separated by comma.
-         * The option is a java.lang.String type.
+         * The option is a <code>java.lang.String</code> type.
          */
         public T tokens(String tokens) {
             this.properties.put("tokens", tokens);
@@ -63,7 +64,7 @@ public interface ApnsEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -72,7 +73,7 @@ public interface ApnsEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -81,7 +82,7 @@ public interface ApnsEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -90,7 +91,7 @@ public interface ApnsEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -113,7 +114,7 @@ public interface ApnsEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public ApnsConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
@@ -126,7 +127,7 @@ public interface ApnsEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public ApnsConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
@@ -135,7 +136,7 @@ public interface ApnsEndpointBuilder {
         /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public ApnsConsumerBuilder sendEmptyMessageWhenIdle(
                 boolean sendEmptyMessageWhenIdle) {
@@ -145,7 +146,7 @@ public interface ApnsEndpointBuilder {
         /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public ApnsConsumerBuilder sendEmptyMessageWhenIdle(
                 String sendEmptyMessageWhenIdle) {
@@ -157,7 +158,7 @@ public interface ApnsEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public ApnsConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -169,7 +170,8 @@ public interface ApnsEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public ApnsConsumerBuilder exceptionHandler(String exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
@@ -177,7 +179,7 @@ public interface ApnsEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public ApnsConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -186,7 +188,8 @@ public interface ApnsEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public ApnsConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
@@ -197,7 +200,7 @@ public interface ApnsEndpointBuilder {
          * you to provide your custom implementation to control error handling
          * usually occurred during the poll operation before an Exchange have
          * been created and being routed in Camel. The option is a
-         * org.apache.camel.spi.PollingConsumerPollStrategy type.
+         * <code>org.apache.camel.spi.PollingConsumerPollStrategy</code> type.
          */
         public ApnsConsumerBuilder pollStrategy(
                 PollingConsumerPollStrategy pollStrategy) {
@@ -209,7 +212,8 @@ public interface ApnsEndpointBuilder {
          * you to provide your custom implementation to control error handling
          * usually occurred during the poll operation before an Exchange have
          * been created and being routed in Camel. The option will be converted
-         * to a org.apache.camel.spi.PollingConsumerPollStrategy type.
+         * to a <code>org.apache.camel.spi.PollingConsumerPollStrategy</code>
+         * type.
          */
         public ApnsConsumerBuilder pollStrategy(String pollStrategy) {
             this.properties.put("pollStrategy", pollStrategy);
@@ -218,7 +222,7 @@ public interface ApnsEndpointBuilder {
         /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
-         * is a int type.
+         * is a <code>int</code> type.
          */
         public ApnsConsumerBuilder backoffErrorThreshold(
                 int backoffErrorThreshold) {
@@ -228,7 +232,7 @@ public interface ApnsEndpointBuilder {
         /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
-         * will be converted to a int type.
+         * will be converted to a <code>int</code> type.
          */
         public ApnsConsumerBuilder backoffErrorThreshold(
                 String backoffErrorThreshold) {
@@ -237,7 +241,8 @@ public interface ApnsEndpointBuilder {
         }
         /**
          * The number of subsequent idle polls that should happen before the
-         * backoffMultipler should kick-in. The option is a int type.
+         * backoffMultipler should kick-in. The option is a <code>int</code>
+         * type.
          */
         public ApnsConsumerBuilder backoffIdleThreshold(int backoffIdleThreshold) {
             this.properties.put("backoffIdleThreshold", backoffIdleThreshold);
@@ -246,7 +251,7 @@ public interface ApnsEndpointBuilder {
         /**
          * The number of subsequent idle polls that should happen before the
          * backoffMultipler should kick-in. The option will be converted to a
-         * int type.
+         * <code>int</code> type.
          */
         public ApnsConsumerBuilder backoffIdleThreshold(
                 String backoffIdleThreshold) {
@@ -259,7 +264,7 @@ public interface ApnsEndpointBuilder {
          * the number of polls that will be skipped before the next actual
          * attempt is happening again. When this option is in use then
          * backoffIdleThreshold and/or backoffErrorThreshold must also be
-         * configured. The option is a int type.
+         * configured. The option is a <code>int</code> type.
          */
         public ApnsConsumerBuilder backoffMultiplier(int backoffMultiplier) {
             this.properties.put("backoffMultiplier", backoffMultiplier);
@@ -271,7 +276,7 @@ public interface ApnsEndpointBuilder {
          * the number of polls that will be skipped before the next actual
          * attempt is happening again. When this option is in use then
          * backoffIdleThreshold and/or backoffErrorThreshold must also be
-         * configured. The option will be converted to a int type.
+         * configured. The option will be converted to a <code>int</code> type.
          */
         public ApnsConsumerBuilder backoffMultiplier(String backoffMultiplier) {
             this.properties.put("backoffMultiplier", backoffMultiplier);
@@ -280,7 +285,7 @@ public interface ApnsEndpointBuilder {
         /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
-         * seconds), and 1h (1 hour). The option is a long type.
+         * seconds), and 1h (1 hour). The option is a <code>long</code> type.
          */
         public ApnsConsumerBuilder delay(long delay) {
             this.properties.put("delay", delay);
@@ -289,8 +294,8 @@ public interface ApnsEndpointBuilder {
         /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
-         * seconds), and 1h (1 hour). The option will be converted to a long
-         * type.
+         * seconds), and 1h (1 hour). The option will be converted to a
+         * <code>long</code> type.
          */
         public ApnsConsumerBuilder delay(String delay) {
             this.properties.put("delay", delay);
@@ -299,7 +304,7 @@ public interface ApnsEndpointBuilder {
         /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public ApnsConsumerBuilder greedy(boolean greedy) {
             this.properties.put("greedy", greedy);
@@ -308,7 +313,7 @@ public interface ApnsEndpointBuilder {
         /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public ApnsConsumerBuilder greedy(String greedy) {
             this.properties.put("greedy", greedy);
@@ -317,7 +322,7 @@ public interface ApnsEndpointBuilder {
         /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
-         * seconds), and 1h (1 hour). The option is a long type.
+         * seconds), and 1h (1 hour). The option is a <code>long</code> type.
          */
         public ApnsConsumerBuilder initialDelay(long initialDelay) {
             this.properties.put("initialDelay", initialDelay);
@@ -326,8 +331,8 @@ public interface ApnsEndpointBuilder {
         /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
-         * seconds), and 1h (1 hour). The option will be converted to a long
-         * type.
+         * seconds), and 1h (1 hour). The option will be converted to a
+         * <code>long</code> type.
          */
         public ApnsConsumerBuilder initialDelay(String initialDelay) {
             this.properties.put("initialDelay", initialDelay);
@@ -336,7 +341,7 @@ public interface ApnsEndpointBuilder {
         /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
-         * is a org.apache.camel.LoggingLevel type.
+         * is a <code>org.apache.camel.LoggingLevel</code> type.
          */
         public ApnsConsumerBuilder runLoggingLevel(LoggingLevel runLoggingLevel) {
             this.properties.put("runLoggingLevel", runLoggingLevel);
@@ -345,7 +350,8 @@ public interface ApnsEndpointBuilder {
         /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
-         * will be converted to a org.apache.camel.LoggingLevel type.
+         * will be converted to a <code>org.apache.camel.LoggingLevel</code>
+         * type.
          */
         public ApnsConsumerBuilder runLoggingLevel(String runLoggingLevel) {
             this.properties.put("runLoggingLevel", runLoggingLevel);
@@ -354,8 +360,8 @@ public interface ApnsEndpointBuilder {
         /**
          * Allows for configuring a custom/shared thread pool to use for the
          * consumer. By default each consumer has its own single threaded thread
-         * pool. The option is a java.util.concurrent.ScheduledExecutorService
-         * type.
+         * pool. The option is a
+         * <code>java.util.concurrent.ScheduledExecutorService</code> type.
          */
         public ApnsConsumerBuilder scheduledExecutorService(
                 ScheduledExecutorService scheduledExecutorService) {
@@ -366,7 +372,7 @@ public interface ApnsEndpointBuilder {
          * Allows for configuring a custom/shared thread pool to use for the
          * consumer. By default each consumer has its own single threaded thread
          * pool. The option will be converted to a
-         * java.util.concurrent.ScheduledExecutorService type.
+         * <code>java.util.concurrent.ScheduledExecutorService</code> type.
          */
         public ApnsConsumerBuilder scheduledExecutorService(
                 String scheduledExecutorService) {
@@ -376,7 +382,8 @@ public interface ApnsEndpointBuilder {
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option is a
-         * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
+         * <code>org.apache.camel.spi.ScheduledPollConsumerScheduler</code>
+         * type.
          */
         public ApnsConsumerBuilder scheduler(
                 ScheduledPollConsumerScheduler scheduler) {
@@ -386,7 +393,8 @@ public interface ApnsEndpointBuilder {
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option will be converted to a
-         * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
+         * <code>org.apache.camel.spi.ScheduledPollConsumerScheduler</code>
+         * type.
          */
         public ApnsConsumerBuilder scheduler(String scheduler) {
             this.properties.put("scheduler", scheduler);
@@ -395,7 +403,7 @@ public interface ApnsEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * java.util.Map<java.lang.String,java.lang.Object> type.
+         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
          */
         public ApnsConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -405,7 +413,8 @@ public interface ApnsEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a java.util.Map<java.lang.String,java.lang.Object> type.
+         * converted to a <code>java.util.Map<java.lang.String,
+         * java.lang.Object></code> type.
          */
         public ApnsConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
@@ -413,8 +422,8 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
-         * Whether the scheduler should be auto started. The option is a boolean
-         * type.
+         * Whether the scheduler should be auto started. The option is a
+         * <code>boolean</code> type.
          */
         public ApnsConsumerBuilder startScheduler(boolean startScheduler) {
             this.properties.put("startScheduler", startScheduler);
@@ -422,7 +431,7 @@ public interface ApnsEndpointBuilder {
         }
         /**
          * Whether the scheduler should be auto started. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public ApnsConsumerBuilder startScheduler(String startScheduler) {
             this.properties.put("startScheduler", startScheduler);
@@ -430,7 +439,7 @@ public interface ApnsEndpointBuilder {
         }
         /**
          * Time unit for initialDelay and delay options. The option is a
-         * java.util.concurrent.TimeUnit type.
+         * <code>java.util.concurrent.TimeUnit</code> type.
          */
         public ApnsConsumerBuilder timeUnit(TimeUnit timeUnit) {
             this.properties.put("timeUnit", timeUnit);
@@ -438,7 +447,7 @@ public interface ApnsEndpointBuilder {
         }
         /**
          * Time unit for initialDelay and delay options. The option will be
-         * converted to a java.util.concurrent.TimeUnit type.
+         * converted to a <code>java.util.concurrent.TimeUnit</code> type.
          */
         public ApnsConsumerBuilder timeUnit(String timeUnit) {
             this.properties.put("timeUnit", timeUnit);
@@ -446,8 +455,8 @@ public interface ApnsEndpointBuilder {
         }
         /**
          * Controls if fixed delay or fixed rate is used. See
-         * ScheduledExecutorService in JDK for details. The option is a boolean
-         * type.
+         * ScheduledExecutorService in JDK for details. The option is a
+         * <code>boolean</code> type.
          */
         public ApnsConsumerBuilder useFixedDelay(boolean useFixedDelay) {
             this.properties.put("useFixedDelay", useFixedDelay);
@@ -456,7 +465,7 @@ public interface ApnsEndpointBuilder {
         /**
          * Controls if fixed delay or fixed rate is used. See
          * ScheduledExecutorService in JDK for details. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public ApnsConsumerBuilder useFixedDelay(String useFixedDelay) {
             this.properties.put("useFixedDelay", useFixedDelay);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpointBuilder.java
index 900e48d..1eb276d 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpointBuilder.java
@@ -39,29 +39,29 @@ public interface AsteriskEndpointBuilder {
             super("asterisk", path);
         }
         /**
-         * Logical name. The option is a java.lang.String type.
+         * Logical name. The option is a <code>java.lang.String</code> type.
          */
         public T name(String name) {
             this.properties.put("name", name);
             return (T) this;
         }
         /**
-         * The hostname of the asterisk server. The option is a java.lang.String
-         * type.
+         * The hostname of the asterisk server. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T hostname(String hostname) {
             this.properties.put("hostname", hostname);
             return (T) this;
         }
         /**
-         * Login password. The option is a java.lang.String type.
+         * Login password. The option is a <code>java.lang.String</code> type.
          */
         public T password(String password) {
             this.properties.put("password", password);
             return (T) this;
         }
         /**
-         * Login username. The option is a java.lang.String type.
+         * Login username. The option is a <code>java.lang.String</code> type.
          */
         public T username(String username) {
             this.properties.put("username", username);
@@ -70,7 +70,7 @@ public interface AsteriskEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -79,7 +79,7 @@ public interface AsteriskEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -88,7 +88,7 @@ public interface AsteriskEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -97,7 +97,7 @@ public interface AsteriskEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -120,7 +120,7 @@ public interface AsteriskEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public AsteriskConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
@@ -134,7 +134,7 @@ public interface AsteriskEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public AsteriskConsumerBuilder bridgeErrorHandler(
                 String bridgeErrorHandler) {
@@ -146,7 +146,7 @@ public interface AsteriskEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public AsteriskConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -158,7 +158,8 @@ public interface AsteriskEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public AsteriskConsumerBuilder exceptionHandler(String exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
@@ -166,7 +167,7 @@ public interface AsteriskEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AsteriskConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -175,7 +176,8 @@ public interface AsteriskEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AsteriskConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
@@ -194,7 +196,7 @@ public interface AsteriskEndpointBuilder {
         /**
          * What action to perform such as getting queue status, sip peers or
          * extension state. The option is a
-         * org.apache.camel.component.asterisk.AsteriskAction type.
+         * <code>org.apache.camel.component.asterisk.AsteriskAction</code> type.
          */
         public AsteriskProducerBuilder action(AsteriskAction action) {
             this.properties.put("action", action);
@@ -203,7 +205,7 @@ public interface AsteriskEndpointBuilder {
         /**
          * What action to perform such as getting queue status, sip peers or
          * extension state. The option will be converted to a
-         * org.apache.camel.component.asterisk.AsteriskAction type.
+         * <code>org.apache.camel.component.asterisk.AsteriskAction</code> type.
          */
         public AsteriskProducerBuilder action(String action) {
             this.properties.put("action", action);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpointBuilder.java
index 5a887eb..03938f0 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpointBuilder.java
@@ -39,7 +39,7 @@ public interface AtmosEndpointBuilder {
             super("atmos", path);
         }
         /**
-         * Atmos name. The option is a java.lang.String type.
+         * Atmos name. The option is a <code>java.lang.String</code> type.
          */
         public T name(String name) {
             this.properties.put("name", name);
@@ -47,7 +47,8 @@ public interface AtmosEndpointBuilder {
         }
         /**
          * Operation to perform. The option is a
-         * org.apache.camel.component.atmos.util.AtmosOperation type.
+         * <code>org.apache.camel.component.atmos.util.AtmosOperation</code>
+         * type.
          */
         public T operation(AtmosOperation operation) {
             this.properties.put("operation", operation);
@@ -55,71 +56,79 @@ public interface AtmosEndpointBuilder {
         }
         /**
          * Operation to perform. The option will be converted to a
-         * org.apache.camel.component.atmos.util.AtmosOperation type.
+         * <code>org.apache.camel.component.atmos.util.AtmosOperation</code>
+         * type.
          */
         public T operation(String operation) {
             this.properties.put("operation", operation);
             return (T) this;
         }
         /**
-         * Atmos SSL validation. The option is a boolean type.
+         * Atmos SSL validation. The option is a <code>boolean</code> type.
          */
         public T enableSslValidation(boolean enableSslValidation) {
             this.properties.put("enableSslValidation", enableSslValidation);
             return (T) this;
         }
         /**
-         * Atmos SSL validation. The option will be converted to a boolean type.
+         * Atmos SSL validation. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T enableSslValidation(String enableSslValidation) {
             this.properties.put("enableSslValidation", enableSslValidation);
             return (T) this;
         }
         /**
-         * Atmos client fullTokenId. The option is a java.lang.String type.
+         * Atmos client fullTokenId. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T fullTokenId(String fullTokenId) {
             this.properties.put("fullTokenId", fullTokenId);
             return (T) this;
         }
         /**
-         * Local path to put files. The option is a java.lang.String type.
+         * Local path to put files. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T localPath(String localPath) {
             this.properties.put("localPath", localPath);
             return (T) this;
         }
         /**
-         * New path on Atmos when moving files. The option is a java.lang.String
-         * type.
+         * New path on Atmos when moving files. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T newRemotePath(String newRemotePath) {
             this.properties.put("newRemotePath", newRemotePath);
             return (T) this;
         }
         /**
-         * Search query on Atmos. The option is a java.lang.String type.
+         * Search query on Atmos. The option is a <code>java.lang.String</code>
+         * type.
          */
         public T query(String query) {
             this.properties.put("query", query);
             return (T) this;
         }
         /**
-         * Where to put files on Atmos. The option is a java.lang.String type.
+         * Where to put files on Atmos. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T remotePath(String remotePath) {
             this.properties.put("remotePath", remotePath);
             return (T) this;
         }
         /**
-         * Atmos shared secret. The option is a java.lang.String type.
+         * Atmos shared secret. The option is a <code>java.lang.String</code>
+         * type.
          */
         public T secretKey(String secretKey) {
             this.properties.put("secretKey", secretKey);
             return (T) this;
         }
         /**
-         * Atomos server uri. The option is a java.lang.String type.
+         * Atomos server uri. The option is a <code>java.lang.String</code>
+         * type.
          */
         public T uri(String uri) {
             this.properties.put("uri", uri);
@@ -128,7 +137,7 @@ public interface AtmosEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -137,7 +146,7 @@ public interface AtmosEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -146,7 +155,7 @@ public interface AtmosEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -155,7 +164,7 @@ public interface AtmosEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -178,7 +187,7 @@ public interface AtmosEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public AtmosConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
@@ -192,7 +201,7 @@ public interface AtmosEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public AtmosConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
@@ -203,7 +212,7 @@ public interface AtmosEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public AtmosConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -215,7 +224,8 @@ public interface AtmosEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public AtmosConsumerBuilder exceptionHandler(String exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
@@ -223,7 +233,7 @@ public interface AtmosEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtmosConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -232,7 +242,8 @@ public interface AtmosEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtmosConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpointBuilder.java
index 0905667..39e2334 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpointBuilder.java
@@ -40,7 +40,8 @@ public interface AtmosphereWebsocketEndpointBuilder {
             super("atmosphere-websocket", path);
         }
         /**
-         * Name of websocket endpoint. The option is a java.lang.String type.
+         * Name of websocket endpoint. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T servicePath(String servicePath) {
             this.properties.put("servicePath", servicePath);
@@ -48,7 +49,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         }
         /**
          * Whether to send to all (broadcast) or send to a single receiver. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public T sendToAll(boolean sendToAll) {
             this.properties.put("sendToAll", sendToAll);
@@ -56,7 +57,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         }
         /**
          * Whether to send to all (broadcast) or send to a single receiver. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public T sendToAll(String sendToAll) {
             this.properties.put("sendToAll", sendToAll);
@@ -64,7 +65,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         }
         /**
          * To enable streaming to send data as multiple text fragments. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public T useStreaming(boolean useStreaming) {
             this.properties.put("useStreaming", useStreaming);
@@ -72,7 +73,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         }
         /**
          * To enable streaming to send data as multiple text fragments. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public T useStreaming(String useStreaming) {
             this.properties.put("useStreaming", useStreaming);
@@ -94,8 +95,8 @@ public interface AtmosphereWebsocketEndpointBuilder {
          * multiple times. The http/http4 producer will by default cache the
          * response body stream. If setting this option to true, then the
          * producers will not cache the response body stream but use the
-         * response stream as-is as the message body. The option is a boolean
-         * type.
+         * response stream as-is as the message body. The option is a
+         * <code>boolean</code> type.
          */
         public T disableStreamCache(boolean disableStreamCache) {
             this.properties.put("disableStreamCache", disableStreamCache);
@@ -118,7 +119,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
          * response body stream. If setting this option to true, then the
          * producers will not cache the response body stream but use the
          * response stream as-is as the message body. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T disableStreamCache(String disableStreamCache) {
             this.properties.put("disableStreamCache", disableStreamCache);
@@ -127,7 +128,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * To use a custom HeaderFilterStrategy to filter header to and from
          * Camel message. The option is a
-         * org.apache.camel.spi.HeaderFilterStrategy type.
+         * <code>org.apache.camel.spi.HeaderFilterStrategy</code> type.
          */
         public T headerFilterStrategy(HeaderFilterStrategy headerFilterStrategy) {
             this.properties.put("headerFilterStrategy", headerFilterStrategy);
@@ -136,7 +137,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * To use a custom HeaderFilterStrategy to filter header to and from
          * Camel message. The option will be converted to a
-         * org.apache.camel.spi.HeaderFilterStrategy type.
+         * <code>org.apache.camel.spi.HeaderFilterStrategy</code> type.
          */
         public T headerFilterStrategy(String headerFilterStrategy) {
             this.properties.put("headerFilterStrategy", headerFilterStrategy);
@@ -145,7 +146,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * To use a custom HttpBinding to control the mapping between Camel
          * message and HttpClient. The option is a
-         * org.apache.camel.http.common.HttpBinding type.
+         * <code>org.apache.camel.http.common.HttpBinding</code> type.
          */
         public T httpBinding(Object httpBinding) {
             this.properties.put("httpBinding", httpBinding);
@@ -154,7 +155,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * To use a custom HttpBinding to control the mapping between Camel
          * message and HttpClient. The option will be converted to a
-         * org.apache.camel.http.common.HttpBinding type.
+         * <code>org.apache.camel.http.common.HttpBinding</code> type.
          */
         public T httpBinding(String httpBinding) {
             this.properties.put("httpBinding", httpBinding);
@@ -163,7 +164,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * If this option is false the Servlet will disable the HTTP streaming
          * and set the content-length header on the response. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public T chunked(boolean chunked) {
             this.properties.put("chunked", chunked);
@@ -172,7 +173,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * If this option is false the Servlet will disable the HTTP streaming
          * and set the content-length header on the response. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T chunked(String chunked) {
             this.properties.put("chunked", chunked);
@@ -187,7 +188,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
          * required to be serialized. 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. The option is a boolean type.
+         * risk. The option is a <code>boolean</code> type.
          */
         public T transferException(boolean transferException) {
             this.properties.put("transferException", transferException);
@@ -202,7 +203,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
          * required to be serialized. 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. The option will be converted to a boolean type.
+         * risk. The option will be converted to a <code>boolean</code> type.
          */
         public T transferException(String transferException) {
             this.properties.put("transferException", transferException);
@@ -211,7 +212,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -220,7 +221,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -229,7 +230,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * If this option is true then IN exchange Body of the exchange will be
          * mapped to HTTP body. Setting this to false will avoid the HTTP
-         * mapping. The option is a boolean type.
+         * mapping. The option is a <code>boolean</code> type.
          */
         public T mapHttpMessageBody(boolean mapHttpMessageBody) {
             this.properties.put("mapHttpMessageBody", mapHttpMessageBody);
@@ -238,7 +239,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * If this option is true then IN exchange Body of the exchange will be
          * mapped to HTTP body. Setting this to false will avoid the HTTP
-         * mapping. The option will be converted to a boolean type.
+         * mapping. The option will be converted to a <code>boolean</code> type.
          */
         public T mapHttpMessageBody(String mapHttpMessageBody) {
             this.properties.put("mapHttpMessageBody", mapHttpMessageBody);
@@ -247,7 +248,8 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * If this option is true then IN exchange Form Encoded body of the
          * exchange will be mapped to HTTP. Setting this to false will avoid the
-         * HTTP Form Encoded body mapping. The option is a boolean type.
+         * HTTP Form Encoded body mapping. The option is a <code>boolean</code>
+         * type.
          */
         public T mapHttpMessageFormUrlEncodedBody(
                 boolean mapHttpMessageFormUrlEncodedBody) {
@@ -258,7 +260,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
          * If this option is true then IN exchange Form Encoded body of the
          * exchange will be mapped to HTTP. Setting this to false will avoid the
          * HTTP Form Encoded body mapping. The option will be converted to a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public T mapHttpMessageFormUrlEncodedBody(
                 String mapHttpMessageFormUrlEncodedBody) {
@@ -268,7 +270,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * If this option is true then IN exchange Headers of the exchange will
          * be mapped to HTTP headers. Setting this to false will avoid the HTTP
-         * Headers mapping. The option is a boolean type.
+         * Headers mapping. The option is a <code>boolean</code> type.
          */
         public T mapHttpMessageHeaders(boolean mapHttpMessageHeaders) {
             this.properties.put("mapHttpMessageHeaders", mapHttpMessageHeaders);
@@ -277,7 +279,8 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * If this option is true then IN exchange Headers of the exchange will
          * be mapped to HTTP headers. Setting this to false will avoid the HTTP
-         * Headers mapping. The option will be converted to a boolean type.
+         * Headers mapping. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T mapHttpMessageHeaders(String mapHttpMessageHeaders) {
             this.properties.put("mapHttpMessageHeaders", mapHttpMessageHeaders);
@@ -286,7 +289,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -295,7 +298,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -312,8 +315,8 @@ public interface AtmosphereWebsocketEndpointBuilder {
             super(path);
         }
         /**
-         * Configure the consumer to work in async mode. The option is a boolean
-         * type.
+         * Configure the consumer to work in async mode. The option is a
+         * <code>boolean</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder async(boolean async) {
             this.properties.put("async", async);
@@ -321,7 +324,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         }
         /**
          * Configure the consumer to work in async mode. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder async(String async) {
             this.properties.put("async", async);
@@ -334,7 +337,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
@@ -348,7 +351,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder bridgeErrorHandler(
                 String bridgeErrorHandler) {
@@ -358,7 +361,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * Used to only allow consuming if the HttpMethod matches, such as
          * GET/POST/PUT etc. Multiple methods can be specified separated by
-         * comma. The option is a java.lang.String type.
+         * comma. The option is a <code>java.lang.String</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder httpMethodRestrict(
                 String httpMethodRestrict) {
@@ -368,7 +371,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * Whether or not the consumer should try to find a target consumer by
          * matching the URI prefix if no exact match is found. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder matchOnUriPrefix(
                 boolean matchOnUriPrefix) {
@@ -378,7 +381,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * Whether or not the consumer should try to find a target consumer by
          * matching the URI prefix if no exact match is found. The option will
-         * be converted to a boolean type.
+         * be converted to a <code>boolean</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder matchOnUriPrefix(
                 String matchOnUriPrefix) {
@@ -387,7 +390,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         }
         /**
          * To use a custom buffer size on the javax.servlet.ServletResponse. The
-         * option is a java.lang.Integer type.
+         * option is a <code>java.lang.Integer</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder responseBufferSize(
                 Integer responseBufferSize) {
@@ -396,7 +399,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         }
         /**
          * To use a custom buffer size on the javax.servlet.ServletResponse. The
-         * option will be converted to a java.lang.Integer type.
+         * option will be converted to a <code>java.lang.Integer</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder responseBufferSize(
                 String responseBufferSize) {
@@ -404,7 +407,8 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
-         * Name of the servlet to use. The option is a java.lang.String type.
+         * Name of the servlet to use. The option is a
+         * <code>java.lang.String</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder servletName(String servletName) {
             this.properties.put("servletName", servletName);
@@ -416,7 +420,8 @@ public interface AtmosphereWebsocketEndpointBuilder {
          * disableStreamCache=false cannot work together. Remove
          * disableStreamCache to use AttachmentMultipartBinding. This is turn
          * off by default as this may require servlet specific configuration to
-         * enable this when using Servlet's. The option is a boolean type.
+         * enable this when using Servlet's. The option is a
+         * <code>boolean</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder attachmentMultipartBinding(
                 boolean attachmentMultipartBinding) {
@@ -430,7 +435,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
          * disableStreamCache to use AttachmentMultipartBinding. This is turn
          * off by default as this may require servlet specific configuration to
          * enable this when using Servlet's. The option will be converted to a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder attachmentMultipartBinding(
                 String attachmentMultipartBinding) {
@@ -440,8 +445,8 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * Whether to eager check whether the HTTP requests has content if the
          * content-length header is 0 or not present. This can be turned on in
-         * case HTTP clients do not send streamed data. The option is a boolean
-         * type.
+         * case HTTP clients do not send streamed data. The option is a
+         * <code>boolean</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder eagerCheckContentAvailable(
                 boolean eagerCheckContentAvailable) {
@@ -452,7 +457,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
          * Whether to eager check whether the HTTP requests has content if the
          * content-length header is 0 or not present. This can be turned on in
          * case HTTP clients do not send streamed data. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder eagerCheckContentAvailable(
                 String eagerCheckContentAvailable) {
@@ -464,7 +469,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -476,7 +481,8 @@ public interface AtmosphereWebsocketEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public AtmosphereWebsocketConsumerBuilder exceptionHandler(
                 String exceptionHandler) {
@@ -485,7 +491,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -494,7 +500,8 @@ public interface AtmosphereWebsocketEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder exchangePattern(
                 String exchangePattern) {
@@ -504,7 +511,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * Whitelist of accepted filename extensions for accepting uploaded
          * files. Multiple extensions can be separated by comma, such as
-         * txt,xml. The option is a java.lang.String type.
+         * txt,xml. The option is a <code>java.lang.String</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder fileNameExtWhitelist(
                 String fileNameExtWhitelist) {
@@ -513,7 +520,8 @@ public interface AtmosphereWebsocketEndpointBuilder {
         }
         /**
          * Specifies whether to enable HTTP OPTIONS for this Servlet consumer.
-         * By default OPTIONS is turned off. The option is a boolean type.
+         * By default OPTIONS is turned off. The option is a
+         * <code>boolean</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder optionsEnabled(
                 boolean optionsEnabled) {
@@ -523,7 +531,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * Specifies whether to enable HTTP OPTIONS for this Servlet consumer.
          * By default OPTIONS is turned off. The option will be converted to a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder optionsEnabled(
                 String optionsEnabled) {
@@ -532,7 +540,8 @@ public interface AtmosphereWebsocketEndpointBuilder {
         }
         /**
          * Specifies whether to enable HTTP TRACE for this Servlet consumer. By
-         * default TRACE is turned off. The option is a boolean type.
+         * default TRACE is turned off. The option is a <code>boolean</code>
+         * type.
          */
         public AtmosphereWebsocketConsumerBuilder traceEnabled(
                 boolean traceEnabled) {
@@ -542,7 +551,7 @@ public interface AtmosphereWebsocketEndpointBuilder {
         /**
          * Specifies whether to enable HTTP TRACE for this Servlet consumer. By
          * default TRACE is turned off. The option will be converted to a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public AtmosphereWebsocketConsumerBuilder traceEnabled(
                 String traceEnabled) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java
index 6777707..a84fd8c 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java
@@ -46,7 +46,8 @@ public interface AtomEndpointBuilder {
             super("atom", path);
         }
         /**
-         * The URI to the feed to poll. The option is a java.lang.String type.
+         * The URI to the feed to poll. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T feedUri(String feedUri) {
             this.properties.put("feedUri", feedUri);
@@ -54,7 +55,7 @@ public interface AtomEndpointBuilder {
         }
         /**
          * Sets whether to add the feed object as a header. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public T feedHeader(boolean feedHeader) {
             this.properties.put("feedHeader", feedHeader);
@@ -62,7 +63,7 @@ public interface AtomEndpointBuilder {
         }
         /**
          * Sets whether to add the feed object as a header. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T feedHeader(String feedHeader) {
             this.properties.put("feedHeader", feedHeader);
@@ -70,7 +71,7 @@ public interface AtomEndpointBuilder {
         }
         /**
          * Sets whether to use filtering or not of the entries. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public T filter(boolean filter) {
             this.properties.put("filter", filter);
@@ -78,7 +79,7 @@ public interface AtomEndpointBuilder {
         }
         /**
          * Sets whether to use filtering or not of the entries. The option will
-         * be converted to a boolean type.
+         * be converted to a <code>boolean</code> type.
          */
         public T filter(String filter) {
             this.properties.put("filter", filter);
@@ -87,7 +88,7 @@ public interface AtomEndpointBuilder {
         /**
          * Sets the timestamp to be used for filtering entries from the atom
          * feeds. This options is only in conjunction with the splitEntries. The
-         * option is a java.util.Date type.
+         * option is a <code>java.util.Date</code> type.
          */
         public T lastUpdate(Date lastUpdate) {
             this.properties.put("lastUpdate", lastUpdate);
@@ -96,7 +97,7 @@ public interface AtomEndpointBuilder {
         /**
          * Sets the timestamp to be used for filtering entries from the atom
          * feeds. This options is only in conjunction with the splitEntries. The
-         * option will be converted to a java.util.Date type.
+         * option will be converted to a <code>java.util.Date</code> type.
          */
         public T lastUpdate(String lastUpdate) {
             this.properties.put("lastUpdate", lastUpdate);
@@ -104,7 +105,7 @@ public interface AtomEndpointBuilder {
         }
         /**
          * Sets the password to be used for basic authentication when polling
-         * from a HTTP feed. The option is a java.lang.String type.
+         * from a HTTP feed. The option is a <code>java.lang.String</code> type.
          */
         public T password(String password) {
             this.properties.put("password", password);
@@ -112,7 +113,7 @@ public interface AtomEndpointBuilder {
         }
         /**
          * Sets whether to sort entries by published date. Only works when
-         * splitEntries = true. The option is a boolean type.
+         * splitEntries = true. The option is a <code>boolean</code> type.
          */
         public T sortEntries(boolean sortEntries) {
             this.properties.put("sortEntries", sortEntries);
@@ -120,7 +121,8 @@ public interface AtomEndpointBuilder {
         }
         /**
          * Sets whether to sort entries by published date. Only works when
-         * splitEntries = true. The option will be converted to a boolean type.
+         * splitEntries = true. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T sortEntries(String sortEntries) {
             this.properties.put("sortEntries", sortEntries);
@@ -129,7 +131,7 @@ public interface AtomEndpointBuilder {
         /**
          * Sets whether or not entries should be sent individually or whether
          * the entire feed should be sent as a single message. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public T splitEntries(boolean splitEntries) {
             this.properties.put("splitEntries", splitEntries);
@@ -138,7 +140,7 @@ public interface AtomEndpointBuilder {
         /**
          * Sets whether or not entries should be sent individually or whether
          * the entire feed should be sent as a single message. The option will
-         * be converted to a boolean type.
+         * be converted to a <code>boolean</code> type.
          */
         public T splitEntries(String splitEntries) {
             this.properties.put("splitEntries", splitEntries);
@@ -148,7 +150,7 @@ public interface AtomEndpointBuilder {
          * Sets whether all entries identified in a single feed poll should be
          * delivered immediately. If true, only one entry is processed per
          * consumer.delay. Only applicable when splitEntries = true. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T throttleEntries(boolean throttleEntries) {
             this.properties.put("throttleEntries", throttleEntries);
@@ -158,7 +160,7 @@ public interface AtomEndpointBuilder {
          * Sets whether all entries identified in a single feed poll should be
          * delivered immediately. If true, only one entry is processed per
          * consumer.delay. Only applicable when splitEntries = true. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T throttleEntries(String throttleEntries) {
             this.properties.put("throttleEntries", throttleEntries);
@@ -166,7 +168,7 @@ public interface AtomEndpointBuilder {
         }
         /**
          * Sets the username to be used for basic authentication when polling
-         * from a HTTP feed. The option is a java.lang.String type.
+         * from a HTTP feed. The option is a <code>java.lang.String</code> type.
          */
         public T username(String username) {
             this.properties.put("username", username);
@@ -175,7 +177,7 @@ public interface AtomEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -184,7 +186,7 @@ public interface AtomEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -193,7 +195,7 @@ public interface AtomEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -202,7 +204,7 @@ public interface AtomEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -225,7 +227,7 @@ public interface AtomEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public AtomConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
@@ -238,7 +240,7 @@ public interface AtomEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public AtomConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
@@ -247,7 +249,7 @@ public interface AtomEndpointBuilder {
         /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public AtomConsumerBuilder sendEmptyMessageWhenIdle(
                 boolean sendEmptyMessageWhenIdle) {
@@ -257,7 +259,7 @@ public interface AtomEndpointBuilder {
         /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public AtomConsumerBuilder sendEmptyMessageWhenIdle(
                 String sendEmptyMessageWhenIdle) {
@@ -269,7 +271,7 @@ public interface AtomEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public AtomConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -281,7 +283,8 @@ public interface AtomEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public AtomConsumerBuilder exceptionHandler(String exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
@@ -289,7 +292,7 @@ public interface AtomEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtomConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -298,7 +301,8 @@ public interface AtomEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtomConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
@@ -309,7 +313,7 @@ public interface AtomEndpointBuilder {
          * you to provide your custom implementation to control error handling
          * usually occurred during the poll operation before an Exchange have
          * been created and being routed in Camel. The option is a
-         * org.apache.camel.spi.PollingConsumerPollStrategy type.
+         * <code>org.apache.camel.spi.PollingConsumerPollStrategy</code> type.
          */
         public AtomConsumerBuilder pollStrategy(
                 PollingConsumerPollStrategy pollStrategy) {
@@ -321,7 +325,8 @@ public interface AtomEndpointBuilder {
          * you to provide your custom implementation to control error handling
          * usually occurred during the poll operation before an Exchange have
          * been created and being routed in Camel. The option will be converted
-         * to a org.apache.camel.spi.PollingConsumerPollStrategy type.
+         * to a <code>org.apache.camel.spi.PollingConsumerPollStrategy</code>
+         * type.
          */
         public AtomConsumerBuilder pollStrategy(String pollStrategy) {
             this.properties.put("pollStrategy", pollStrategy);
@@ -330,7 +335,7 @@ public interface AtomEndpointBuilder {
         /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
-         * is a int type.
+         * is a <code>int</code> type.
          */
         public AtomConsumerBuilder backoffErrorThreshold(
                 int backoffErrorThreshold) {
@@ -340,7 +345,7 @@ public interface AtomEndpointBuilder {
         /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
-         * will be converted to a int type.
+         * will be converted to a <code>int</code> type.
          */
         public AtomConsumerBuilder backoffErrorThreshold(
                 String backoffErrorThreshold) {
@@ -349,7 +354,8 @@ public interface AtomEndpointBuilder {
         }
         /**
          * The number of subsequent idle polls that should happen before the
-         * backoffMultipler should kick-in. The option is a int type.
+         * backoffMultipler should kick-in. The option is a <code>int</code>
+         * type.
          */
         public AtomConsumerBuilder backoffIdleThreshold(int backoffIdleThreshold) {
             this.properties.put("backoffIdleThreshold", backoffIdleThreshold);
@@ -358,7 +364,7 @@ public interface AtomEndpointBuilder {
         /**
          * The number of subsequent idle polls that should happen before the
          * backoffMultipler should kick-in. The option will be converted to a
-         * int type.
+         * <code>int</code> type.
          */
         public AtomConsumerBuilder backoffIdleThreshold(
                 String backoffIdleThreshold) {
@@ -371,7 +377,7 @@ public interface AtomEndpointBuilder {
          * the number of polls that will be skipped before the next actual
          * attempt is happening again. When this option is in use then
          * backoffIdleThreshold and/or backoffErrorThreshold must also be
-         * configured. The option is a int type.
+         * configured. The option is a <code>int</code> type.
          */
         public AtomConsumerBuilder backoffMultiplier(int backoffMultiplier) {
             this.properties.put("backoffMultiplier", backoffMultiplier);
@@ -383,7 +389,7 @@ public interface AtomEndpointBuilder {
          * the number of polls that will be skipped before the next actual
          * attempt is happening again. When this option is in use then
          * backoffIdleThreshold and/or backoffErrorThreshold must also be
-         * configured. The option will be converted to a int type.
+         * configured. The option will be converted to a <code>int</code> type.
          */
         public AtomConsumerBuilder backoffMultiplier(String backoffMultiplier) {
             this.properties.put("backoffMultiplier", backoffMultiplier);
@@ -392,7 +398,7 @@ public interface AtomEndpointBuilder {
         /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
-         * seconds), and 1h (1 hour). The option is a long type.
+         * seconds), and 1h (1 hour). The option is a <code>long</code> type.
          */
         public AtomConsumerBuilder delay(long delay) {
             this.properties.put("delay", delay);
@@ -401,8 +407,8 @@ public interface AtomEndpointBuilder {
         /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
-         * seconds), and 1h (1 hour). The option will be converted to a long
-         * type.
+         * seconds), and 1h (1 hour). The option will be converted to a
+         * <code>long</code> type.
          */
         public AtomConsumerBuilder delay(String delay) {
             this.properties.put("delay", delay);
@@ -411,7 +417,7 @@ public interface AtomEndpointBuilder {
         /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public AtomConsumerBuilder greedy(boolean greedy) {
             this.properties.put("greedy", greedy);
@@ -420,7 +426,7 @@ public interface AtomEndpointBuilder {
         /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public AtomConsumerBuilder greedy(String greedy) {
             this.properties.put("greedy", greedy);
@@ -429,7 +435,7 @@ public interface AtomEndpointBuilder {
         /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
-         * seconds), and 1h (1 hour). The option is a long type.
+         * seconds), and 1h (1 hour). The option is a <code>long</code> type.
          */
         public AtomConsumerBuilder initialDelay(long initialDelay) {
             this.properties.put("initialDelay", initialDelay);
@@ -438,8 +444,8 @@ public interface AtomEndpointBuilder {
         /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
-         * seconds), and 1h (1 hour). The option will be converted to a long
-         * type.
+         * seconds), and 1h (1 hour). The option will be converted to a
+         * <code>long</code> type.
          */
         public AtomConsumerBuilder initialDelay(String initialDelay) {
             this.properties.put("initialDelay", initialDelay);
@@ -448,7 +454,7 @@ public interface AtomEndpointBuilder {
         /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
-         * is a org.apache.camel.LoggingLevel type.
+         * is a <code>org.apache.camel.LoggingLevel</code> type.
          */
         public AtomConsumerBuilder runLoggingLevel(LoggingLevel runLoggingLevel) {
             this.properties.put("runLoggingLevel", runLoggingLevel);
@@ -457,7 +463,8 @@ public interface AtomEndpointBuilder {
         /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
-         * will be converted to a org.apache.camel.LoggingLevel type.
+         * will be converted to a <code>org.apache.camel.LoggingLevel</code>
+         * type.
          */
         public AtomConsumerBuilder runLoggingLevel(String runLoggingLevel) {
             this.properties.put("runLoggingLevel", runLoggingLevel);
@@ -466,8 +473,8 @@ public interface AtomEndpointBuilder {
         /**
          * Allows for configuring a custom/shared thread pool to use for the
          * consumer. By default each consumer has its own single threaded thread
-         * pool. The option is a java.util.concurrent.ScheduledExecutorService
-         * type.
+         * pool. The option is a
+         * <code>java.util.concurrent.ScheduledExecutorService</code> type.
          */
         public AtomConsumerBuilder scheduledExecutorService(
                 ScheduledExecutorService scheduledExecutorService) {
@@ -478,7 +485,7 @@ public interface AtomEndpointBuilder {
          * Allows for configuring a custom/shared thread pool to use for the
          * consumer. By default each consumer has its own single threaded thread
          * pool. The option will be converted to a
-         * java.util.concurrent.ScheduledExecutorService type.
+         * <code>java.util.concurrent.ScheduledExecutorService</code> type.
          */
         public AtomConsumerBuilder scheduledExecutorService(
                 String scheduledExecutorService) {
@@ -488,7 +495,8 @@ public interface AtomEndpointBuilder {
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option is a
-         * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
+         * <code>org.apache.camel.spi.ScheduledPollConsumerScheduler</code>
+         * type.
          */
         public AtomConsumerBuilder scheduler(
                 ScheduledPollConsumerScheduler scheduler) {
@@ -498,7 +506,8 @@ public interface AtomEndpointBuilder {
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option will be converted to a
-         * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
+         * <code>org.apache.camel.spi.ScheduledPollConsumerScheduler</code>
+         * type.
          */
         public AtomConsumerBuilder scheduler(String scheduler) {
             this.properties.put("scheduler", scheduler);
@@ -507,7 +516,7 @@ public interface AtomEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * java.util.Map<java.lang.String,java.lang.Object> type.
+         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
          */
         public AtomConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -517,7 +526,8 @@ public interface AtomEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a java.util.Map<java.lang.String,java.lang.Object> type.
+         * converted to a <code>java.util.Map<java.lang.String,
+         * java.lang.Object></code> type.
          */
         public AtomConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
@@ -525,8 +535,8 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
-         * Whether the scheduler should be auto started. The option is a boolean
-         * type.
+         * Whether the scheduler should be auto started. The option is a
+         * <code>boolean</code> type.
          */
         public AtomConsumerBuilder startScheduler(boolean startScheduler) {
             this.properties.put("startScheduler", startScheduler);
@@ -534,7 +544,7 @@ public interface AtomEndpointBuilder {
         }
         /**
          * Whether the scheduler should be auto started. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public AtomConsumerBuilder startScheduler(String startScheduler) {
             this.properties.put("startScheduler", startScheduler);
@@ -542,7 +552,7 @@ public interface AtomEndpointBuilder {
         }
         /**
          * Time unit for initialDelay and delay options. The option is a
-         * java.util.concurrent.TimeUnit type.
+         * <code>java.util.concurrent.TimeUnit</code> type.
          */
         public AtomConsumerBuilder timeUnit(TimeUnit timeUnit) {
             this.properties.put("timeUnit", timeUnit);
@@ -550,7 +560,7 @@ public interface AtomEndpointBuilder {
         }
         /**
          * Time unit for initialDelay and delay options. The option will be
-         * converted to a java.util.concurrent.TimeUnit type.
+         * converted to a <code>java.util.concurrent.TimeUnit</code> type.
          */
         public AtomConsumerBuilder timeUnit(String timeUnit) {
             this.properties.put("timeUnit", timeUnit);
@@ -558,8 +568,8 @@ public interface AtomEndpointBuilder {
         }
         /**
          * Controls if fixed delay or fixed rate is used. See
-         * ScheduledExecutorService in JDK for details. The option is a boolean
-         * type.
+         * ScheduledExecutorService in JDK for details. The option is a
+         * <code>boolean</code> type.
          */
         public AtomConsumerBuilder useFixedDelay(boolean useFixedDelay) {
             this.properties.put("useFixedDelay", useFixedDelay);
@@ -568,7 +578,7 @@ public interface AtomEndpointBuilder {
         /**
          * Controls if fixed delay or fixed rate is used. See
          * ScheduledExecutorService in JDK for details. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public AtomConsumerBuilder useFixedDelay(String useFixedDelay) {
             this.properties.put("useFixedDelay", useFixedDelay);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java
index a61c9de..51a8cf3 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java
@@ -42,14 +42,16 @@ public interface AtomixMapEndpointBuilder {
             super("atomix-map", path);
         }
         /**
-         * The distributed resource name. The option is a java.lang.String type.
+         * The distributed resource name. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T resourceName(String resourceName) {
             this.properties.put("resourceName", resourceName);
             return (T) this;
         }
         /**
-         * The Atomix instance to use. The option is a io.atomix.Atomix type.
+         * The Atomix instance to use. The option is a
+         * <code>io.atomix.AtomixClient</code> type.
          */
         public T atomix(Object atomix) {
             this.properties.put("atomix", atomix);
@@ -57,14 +59,15 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * The Atomix instance to use. The option will be converted to a
-         * io.atomix.Atomix type.
+         * <code>io.atomix.AtomixClient</code> type.
          */
         public T atomix(String atomix) {
             this.properties.put("atomix", atomix);
             return (T) this;
         }
         /**
-         * The Atomix configuration uri. The option is a java.lang.String type.
+         * The Atomix configuration uri. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T configurationUri(String configurationUri) {
             this.properties.put("configurationUri", configurationUri);
@@ -72,15 +75,15 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * The default action. The option is a
-         * org.apache.camel.component.atomix.client.map.AtomixMap.Action type.
+         * <code>org.apache.camel.component.atomix.client.map.AtomixMap$Action</code> type.
          */
-        public T defaultAction(Object defaultAction) {
+        public T defaultAction(Action defaultAction) {
             this.properties.put("defaultAction", defaultAction);
             return (T) this;
         }
         /**
          * The default action. The option will be converted to a
-         * org.apache.camel.component.atomix.client.map.AtomixMap.Action type.
+         * <code>org.apache.camel.component.atomix.client.map.AtomixMap$Action</code> type.
          */
         public T defaultAction(String defaultAction) {
             this.properties.put("defaultAction", defaultAction);
@@ -88,7 +91,8 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * The key to use if none is set in the header or to listen for events
-         * for a specific key. The option is a java.lang.Object type.
+         * for a specific key. The option is a <code>java.lang.Object</code>
+         * type.
          */
         public T key(Object key) {
             this.properties.put("key", key);
@@ -97,7 +101,7 @@ public interface AtomixMapEndpointBuilder {
         /**
          * The key to use if none is set in the header or to listen for events
          * for a specific key. The option will be converted to a
-         * java.lang.Object type.
+         * <code>java.lang.Object</code> type.
          */
         public T key(String key) {
             this.properties.put("key", key);
@@ -105,7 +109,8 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option is a
-         * java.lang.String type.
+         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
+         * type.
          */
         public T nodes(List<Object> nodes) {
             this.properties.put("nodes", nodes);
@@ -113,7 +118,9 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option will be
-         * converted to a java.lang.String type.
+         * converted to a
+         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
+         * type.
          */
         public T nodes(String nodes) {
             this.properties.put("nodes", nodes);
@@ -121,7 +128,7 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * The header that wil carry the result. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T resultHeader(String resultHeader) {
             this.properties.put("resultHeader", resultHeader);
@@ -129,7 +136,8 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option is a
-         * io.atomix.catalyst.transport.Transport type.
+         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
+         * type.
          */
         public T transport(Class<Object> transport) {
             this.properties.put("transport", transport);
@@ -137,21 +145,23 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option will be converted to a
-         * io.atomix.catalyst.transport.Transport type.
+         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
+         * type.
          */
         public T transport(String transport) {
             this.properties.put("transport", transport);
             return (T) this;
         }
         /**
-         * The resource ttl. The option is a long type.
+         * The resource ttl. The option is a <code>long</code> type.
          */
         public T ttl(long ttl) {
             this.properties.put("ttl", ttl);
             return (T) this;
         }
         /**
-         * The resource ttl. The option will be converted to a long type.
+         * The resource ttl. The option will be converted to a <code>long</code>
+         * type.
          */
         public T ttl(String ttl) {
             this.properties.put("ttl", ttl);
@@ -160,7 +170,7 @@ public interface AtomixMapEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -169,7 +179,7 @@ public interface AtomixMapEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -177,7 +187,7 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * The cluster wide default resource configuration. The option is a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceConfig(Properties defaultResourceConfig) {
             this.properties.put("defaultResourceConfig", defaultResourceConfig);
@@ -185,7 +195,7 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * The cluster wide default resource configuration. The option will be
-         * converted to a java.util.Properties type.
+         * converted to a <code>java.util.Properties</code> type.
          */
         public T defaultResourceConfig(String defaultResourceConfig) {
             this.properties.put("defaultResourceConfig", defaultResourceConfig);
@@ -193,7 +203,7 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * The local default resource options. The option is a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceOptions(Properties defaultResourceOptions) {
             this.properties.put("defaultResourceOptions", defaultResourceOptions);
@@ -201,7 +211,7 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * The local default resource options. The option will be converted to a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceOptions(String defaultResourceOptions) {
             this.properties.put("defaultResourceOptions", defaultResourceOptions);
@@ -210,8 +220,8 @@ public interface AtomixMapEndpointBuilder {
         /**
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
-         * generated ID thus the local one is ignored. The option is a boolean
-         * type.
+         * generated ID thus the local one is ignored. The option is a
+         * <code>boolean</code> type.
          */
         public T ephemeral(boolean ephemeral) {
             this.properties.put("ephemeral", ephemeral);
@@ -221,7 +231,7 @@ public interface AtomixMapEndpointBuilder {
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
          * generated ID thus the local one is ignored. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T ephemeral(String ephemeral) {
             this.properties.put("ephemeral", ephemeral);
@@ -229,7 +239,7 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * The read consistency level. The option is a
-         * io.atomix.resource.ReadConsistency type.
+         * <code>io.atomix.resource.ReadConsistency</code> type.
          */
         public T readConsistency(ReadConsistency readConsistency) {
             this.properties.put("readConsistency", readConsistency);
@@ -237,7 +247,7 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * The read consistency level. The option will be converted to a
-         * io.atomix.resource.ReadConsistency type.
+         * <code>io.atomix.resource.ReadConsistency</code> type.
          */
         public T readConsistency(String readConsistency) {
             this.properties.put("readConsistency", readConsistency);
@@ -245,7 +255,8 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option is a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceConfigs(Map<String, Properties> resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -253,7 +264,8 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option will be converted to
-         * a java.util.Map<java.lang.String,java.util.Properties> type.
+         * a <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceConfigs(String resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -261,7 +273,8 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * Local resources configurations. The option is a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceOptions(Map<String, Properties> resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -269,7 +282,8 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * Local resources configurations. The option will be converted to a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceOptions(String resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -278,7 +292,7 @@ public interface AtomixMapEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -287,7 +301,7 @@ public interface AtomixMapEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -310,7 +324,7 @@ public interface AtomixMapEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public AtomixMapConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
@@ -324,7 +338,7 @@ public interface AtomixMapEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public AtomixMapConsumerBuilder bridgeErrorHandler(
                 String bridgeErrorHandler) {
@@ -336,7 +350,7 @@ public interface AtomixMapEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public AtomixMapConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -348,7 +362,8 @@ public interface AtomixMapEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public AtomixMapConsumerBuilder exceptionHandler(String exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
@@ -356,7 +371,7 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtomixMapConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -365,7 +380,8 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtomixMapConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
@@ -383,6 +399,10 @@ public interface AtomixMapEndpointBuilder {
         }
     }
 
+    public static enum Action {
+        PUT, PUT_IF_ABSENT, GET, CLEAR, SIZE, CONTAINS_KEY, CONTAINS_VALUE, IS_EMPTY, ENTRY_SET, REMOVE, REPLACE, VALUES;
+    }
+
     public static enum ReadConsistency {
         ATOMIC, ATOMIC_LEASE, SEQUENTIAL, LOCAL;
     }
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java
index 9985d1b..9d92a86 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java
@@ -42,14 +42,16 @@ public interface AtomixMessagingEndpointBuilder {
             super("atomix-messaging", path);
         }
         /**
-         * The distributed resource name. The option is a java.lang.String type.
+         * The distributed resource name. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T resourceName(String resourceName) {
             this.properties.put("resourceName", resourceName);
             return (T) this;
         }
         /**
-         * The Atomix instance to use. The option is a io.atomix.Atomix type.
+         * The Atomix instance to use. The option is a
+         * <code>io.atomix.AtomixClient</code> type.
          */
         public T atomix(Object atomix) {
             this.properties.put("atomix", atomix);
@@ -57,7 +59,7 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * The Atomix instance to use. The option will be converted to a
-         * io.atomix.Atomix type.
+         * <code>io.atomix.AtomixClient</code> type.
          */
         public T atomix(String atomix) {
             this.properties.put("atomix", atomix);
@@ -65,29 +67,31 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * The broadcast type. The option is a
-         * org.apache.camel.component.atomix.client.messaging.AtomixMessaging.BroadcastType type.
+         * <code>org.apache.camel.component.atomix.client.messaging.AtomixMessaging$BroadcastType</code> type.
          */
-        public T broadcastType(Object broadcastType) {
+        public T broadcastType(BroadcastType broadcastType) {
             this.properties.put("broadcastType", broadcastType);
             return (T) this;
         }
         /**
          * The broadcast type. The option will be converted to a
-         * org.apache.camel.component.atomix.client.messaging.AtomixMessaging.BroadcastType type.
+         * <code>org.apache.camel.component.atomix.client.messaging.AtomixMessaging$BroadcastType</code> type.
          */
         public T broadcastType(String broadcastType) {
             this.properties.put("broadcastType", broadcastType);
             return (T) this;
         }
         /**
-         * The messaging channel name. The option is a java.lang.String type.
+         * The messaging channel name. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T channelName(String channelName) {
             this.properties.put("channelName", channelName);
             return (T) this;
         }
         /**
-         * The Atomix configuration uri. The option is a java.lang.String type.
+         * The Atomix configuration uri. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T configurationUri(String configurationUri) {
             this.properties.put("configurationUri", configurationUri);
@@ -95,22 +99,23 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * The default action. The option is a
-         * org.apache.camel.component.atomix.client.messaging.AtomixMessaging.Action type.
+         * <code>org.apache.camel.component.atomix.client.messaging.AtomixMessaging$Action</code> type.
          */
-        public T defaultAction(Object defaultAction) {
+        public T defaultAction(Action defaultAction) {
             this.properties.put("defaultAction", defaultAction);
             return (T) this;
         }
         /**
          * The default action. The option will be converted to a
-         * org.apache.camel.component.atomix.client.messaging.AtomixMessaging.Action type.
+         * <code>org.apache.camel.component.atomix.client.messaging.AtomixMessaging$Action</code> type.
          */
         public T defaultAction(String defaultAction) {
             this.properties.put("defaultAction", defaultAction);
             return (T) this;
         }
         /**
-         * The Atomix Group member name. The option is a java.lang.String type.
+         * The Atomix Group member name. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T memberName(String memberName) {
             this.properties.put("memberName", memberName);
@@ -118,7 +123,8 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option is a
-         * java.lang.String type.
+         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
+         * type.
          */
         public T nodes(List<Object> nodes) {
             this.properties.put("nodes", nodes);
@@ -126,7 +132,9 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option will be
-         * converted to a java.lang.String type.
+         * converted to a
+         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
+         * type.
          */
         public T nodes(String nodes) {
             this.properties.put("nodes", nodes);
@@ -134,7 +142,7 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * The header that wil carry the result. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T resultHeader(String resultHeader) {
             this.properties.put("resultHeader", resultHeader);
@@ -142,7 +150,8 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option is a
-         * io.atomix.catalyst.transport.Transport type.
+         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
+         * type.
          */
         public T transport(Class<Object> transport) {
             this.properties.put("transport", transport);
@@ -150,7 +159,8 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option will be converted to a
-         * io.atomix.catalyst.transport.Transport type.
+         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
+         * type.
          */
         public T transport(String transport) {
             this.properties.put("transport", transport);
@@ -159,7 +169,7 @@ public interface AtomixMessagingEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -168,7 +178,7 @@ public interface AtomixMessagingEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -176,7 +186,7 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * The cluster wide default resource configuration. The option is a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceConfig(Properties defaultResourceConfig) {
             this.properties.put("defaultResourceConfig", defaultResourceConfig);
@@ -184,7 +194,7 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * The cluster wide default resource configuration. The option will be
-         * converted to a java.util.Properties type.
+         * converted to a <code>java.util.Properties</code> type.
          */
         public T defaultResourceConfig(String defaultResourceConfig) {
             this.properties.put("defaultResourceConfig", defaultResourceConfig);
@@ -192,7 +202,7 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * The local default resource options. The option is a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceOptions(Properties defaultResourceOptions) {
             this.properties.put("defaultResourceOptions", defaultResourceOptions);
@@ -200,7 +210,7 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * The local default resource options. The option will be converted to a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceOptions(String defaultResourceOptions) {
             this.properties.put("defaultResourceOptions", defaultResourceOptions);
@@ -209,8 +219,8 @@ public interface AtomixMessagingEndpointBuilder {
         /**
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
-         * generated ID thus the local one is ignored. The option is a boolean
-         * type.
+         * generated ID thus the local one is ignored. The option is a
+         * <code>boolean</code> type.
          */
         public T ephemeral(boolean ephemeral) {
             this.properties.put("ephemeral", ephemeral);
@@ -220,7 +230,7 @@ public interface AtomixMessagingEndpointBuilder {
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
          * generated ID thus the local one is ignored. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T ephemeral(String ephemeral) {
             this.properties.put("ephemeral", ephemeral);
@@ -228,7 +238,7 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * The read consistency level. The option is a
-         * io.atomix.resource.ReadConsistency type.
+         * <code>io.atomix.resource.ReadConsistency</code> type.
          */
         public T readConsistency(ReadConsistency readConsistency) {
             this.properties.put("readConsistency", readConsistency);
@@ -236,7 +246,7 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * The read consistency level. The option will be converted to a
-         * io.atomix.resource.ReadConsistency type.
+         * <code>io.atomix.resource.ReadConsistency</code> type.
          */
         public T readConsistency(String readConsistency) {
             this.properties.put("readConsistency", readConsistency);
@@ -244,7 +254,8 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option is a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceConfigs(Map<String, Properties> resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -252,7 +263,8 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option will be converted to
-         * a java.util.Map<java.lang.String,java.util.Properties> type.
+         * a <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceConfigs(String resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -260,7 +272,8 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * Local resources configurations. The option is a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceOptions(Map<String, Properties> resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -268,7 +281,8 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * Local resources configurations. The option will be converted to a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceOptions(String resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -277,7 +291,7 @@ public interface AtomixMessagingEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -286,7 +300,7 @@ public interface AtomixMessagingEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -309,7 +323,7 @@ public interface AtomixMessagingEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public AtomixMessagingConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
@@ -323,7 +337,7 @@ public interface AtomixMessagingEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public AtomixMessagingConsumerBuilder bridgeErrorHandler(
                 String bridgeErrorHandler) {
@@ -335,7 +349,7 @@ public interface AtomixMessagingEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public AtomixMessagingConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -347,7 +361,8 @@ public interface AtomixMessagingEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public AtomixMessagingConsumerBuilder exceptionHandler(
                 String exceptionHandler) {
@@ -356,7 +371,7 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtomixMessagingConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -365,7 +380,8 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtomixMessagingConsumerBuilder exchangePattern(
                 String exchangePattern) {
@@ -384,6 +400,14 @@ public interface AtomixMessagingEndpointBuilder {
         }
     }
 
+    public static enum BroadcastType {
+        ALL, RANDOM;
+    }
+
+    public static enum Action {
+        DIRECT, BROADCAST;
+    }
+
     public static enum ReadConsistency {
         ATOMIC, ATOMIC_LEASE, SEQUENTIAL, LOCAL;
     }
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java
index 3a34584..b55183b 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java
@@ -43,14 +43,16 @@ public interface AtomixMultiMapEndpointBuilder {
             super("atomix-multimap", path);
         }
         /**
-         * The distributed resource name. The option is a java.lang.String type.
+         * The distributed resource name. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T resourceName(String resourceName) {
             this.properties.put("resourceName", resourceName);
             return (T) this;
         }
         /**
-         * The Atomix instance to use. The option is a io.atomix.Atomix type.
+         * The Atomix instance to use. The option is a
+         * <code>io.atomix.AtomixClient</code> type.
          */
         public T atomix(Object atomix) {
             this.properties.put("atomix", atomix);
@@ -58,14 +60,15 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * The Atomix instance to use. The option will be converted to a
-         * io.atomix.Atomix type.
+         * <code>io.atomix.AtomixClient</code> type.
          */
         public T atomix(String atomix) {
             this.properties.put("atomix", atomix);
             return (T) this;
         }
         /**
-         * The Atomix configuration uri. The option is a java.lang.String type.
+         * The Atomix configuration uri. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T configurationUri(String configurationUri) {
             this.properties.put("configurationUri", configurationUri);
@@ -73,15 +76,15 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * The default action. The option is a
-         * org.apache.camel.component.atomix.client.multimap.AtomixMultiMap.Action type.
+         * <code>org.apache.camel.component.atomix.client.multimap.AtomixMultiMap$Action</code> type.
          */
-        public T defaultAction(Object defaultAction) {
+        public T defaultAction(Action defaultAction) {
             this.properties.put("defaultAction", defaultAction);
             return (T) this;
         }
         /**
          * The default action. The option will be converted to a
-         * org.apache.camel.component.atomix.client.multimap.AtomixMultiMap.Action type.
+         * <code>org.apache.camel.component.atomix.client.multimap.AtomixMultiMap$Action</code> type.
          */
         public T defaultAction(String defaultAction) {
             this.properties.put("defaultAction", defaultAction);
@@ -89,7 +92,8 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * The key to use if none is set in the header or to listen for events
-         * for a specific key. The option is a java.lang.Object type.
+         * for a specific key. The option is a <code>java.lang.Object</code>
+         * type.
          */
         public T key(Object key) {
             this.properties.put("key", key);
@@ -98,7 +102,7 @@ public interface AtomixMultiMapEndpointBuilder {
         /**
          * The key to use if none is set in the header or to listen for events
          * for a specific key. The option will be converted to a
-         * java.lang.Object type.
+         * <code>java.lang.Object</code> type.
          */
         public T key(String key) {
             this.properties.put("key", key);
@@ -106,7 +110,8 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option is a
-         * java.lang.String type.
+         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
+         * type.
          */
         public T nodes(List<Object> nodes) {
             this.properties.put("nodes", nodes);
@@ -114,7 +119,9 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option will be
-         * converted to a java.lang.String type.
+         * converted to a
+         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
+         * type.
          */
         public T nodes(String nodes) {
             this.properties.put("nodes", nodes);
@@ -122,7 +129,7 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * The header that wil carry the result. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T resultHeader(String resultHeader) {
             this.properties.put("resultHeader", resultHeader);
@@ -130,7 +137,8 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option is a
-         * io.atomix.catalyst.transport.Transport type.
+         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
+         * type.
          */
         public T transport(Class<Object> transport) {
             this.properties.put("transport", transport);
@@ -138,21 +146,23 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option will be converted to a
-         * io.atomix.catalyst.transport.Transport type.
+         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
+         * type.
          */
         public T transport(String transport) {
             this.properties.put("transport", transport);
             return (T) this;
         }
         /**
-         * The resource ttl. The option is a long type.
+         * The resource ttl. The option is a <code>long</code> type.
          */
         public T ttl(long ttl) {
             this.properties.put("ttl", ttl);
             return (T) this;
         }
         /**
-         * The resource ttl. The option will be converted to a long type.
+         * The resource ttl. The option will be converted to a <code>long</code>
+         * type.
          */
         public T ttl(String ttl) {
             this.properties.put("ttl", ttl);
@@ -161,7 +171,7 @@ public interface AtomixMultiMapEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -170,7 +180,7 @@ public interface AtomixMultiMapEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -178,7 +188,7 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * The cluster wide default resource configuration. The option is a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceConfig(Properties defaultResourceConfig) {
             this.properties.put("defaultResourceConfig", defaultResourceConfig);
@@ -186,7 +196,7 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * The cluster wide default resource configuration. The option will be
-         * converted to a java.util.Properties type.
+         * converted to a <code>java.util.Properties</code> type.
          */
         public T defaultResourceConfig(String defaultResourceConfig) {
             this.properties.put("defaultResourceConfig", defaultResourceConfig);
@@ -194,7 +204,7 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * The local default resource options. The option is a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceOptions(Properties defaultResourceOptions) {
             this.properties.put("defaultResourceOptions", defaultResourceOptions);
@@ -202,7 +212,7 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * The local default resource options. The option will be converted to a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceOptions(String defaultResourceOptions) {
             this.properties.put("defaultResourceOptions", defaultResourceOptions);
@@ -211,8 +221,8 @@ public interface AtomixMultiMapEndpointBuilder {
         /**
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
-         * generated ID thus the local one is ignored. The option is a boolean
-         * type.
+         * generated ID thus the local one is ignored. The option is a
+         * <code>boolean</code> type.
          */
         public T ephemeral(boolean ephemeral) {
             this.properties.put("ephemeral", ephemeral);
@@ -222,7 +232,7 @@ public interface AtomixMultiMapEndpointBuilder {
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
          * generated ID thus the local one is ignored. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T ephemeral(String ephemeral) {
             this.properties.put("ephemeral", ephemeral);
@@ -230,7 +240,7 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * The read consistency level. The option is a
-         * io.atomix.resource.ReadConsistency type.
+         * <code>io.atomix.resource.ReadConsistency</code> type.
          */
         public T readConsistency(ReadConsistency readConsistency) {
             this.properties.put("readConsistency", readConsistency);
@@ -238,7 +248,7 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * The read consistency level. The option will be converted to a
-         * io.atomix.resource.ReadConsistency type.
+         * <code>io.atomix.resource.ReadConsistency</code> type.
          */
         public T readConsistency(String readConsistency) {
             this.properties.put("readConsistency", readConsistency);
@@ -246,7 +256,8 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option is a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceConfigs(Map<String, Properties> resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -254,7 +265,8 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option will be converted to
-         * a java.util.Map<java.lang.String,java.util.Properties> type.
+         * a <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceConfigs(String resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -262,7 +274,8 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * Local resources configurations. The option is a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceOptions(Map<String, Properties> resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -270,7 +283,8 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * Local resources configurations. The option will be converted to a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceOptions(String resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -279,7 +293,7 @@ public interface AtomixMultiMapEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -288,7 +302,7 @@ public interface AtomixMultiMapEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -311,7 +325,7 @@ public interface AtomixMultiMapEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public AtomixMultiMapConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
@@ -325,7 +339,7 @@ public interface AtomixMultiMapEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public AtomixMultiMapConsumerBuilder bridgeErrorHandler(
                 String bridgeErrorHandler) {
@@ -337,7 +351,7 @@ public interface AtomixMultiMapEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public AtomixMultiMapConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -349,7 +363,8 @@ public interface AtomixMultiMapEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public AtomixMultiMapConsumerBuilder exceptionHandler(
                 String exceptionHandler) {
@@ -358,7 +373,7 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtomixMultiMapConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -367,7 +382,8 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtomixMultiMapConsumerBuilder exchangePattern(
                 String exchangePattern) {
@@ -376,6 +392,10 @@ public interface AtomixMultiMapEndpointBuilder {
         }
     }
 
+    public static enum Action {
+        PUT, GET, CLEAR, SIZE, CONTAINS_KEY, IS_EMPTY, REMOVE, REMOVE_VALUE;
+    }
+
     public static enum ReadConsistency {
         ATOMIC, ATOMIC_LEASE, SEQUENTIAL, LOCAL;
     }
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java
index 47cbc6a..e16feb2 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java
@@ -42,14 +42,16 @@ public interface AtomixQueueEndpointBuilder {
             super("atomix-queue", path);
         }
         /**
-         * The distributed resource name. The option is a java.lang.String type.
+         * The distributed resource name. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T resourceName(String resourceName) {
             this.properties.put("resourceName", resourceName);
             return (T) this;
         }
         /**
-         * The Atomix instance to use. The option is a io.atomix.Atomix type.
+         * The Atomix instance to use. The option is a
+         * <code>io.atomix.AtomixClient</code> type.
          */
         public T atomix(Object atomix) {
             this.properties.put("atomix", atomix);
@@ -57,14 +59,15 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * The Atomix instance to use. The option will be converted to a
-         * io.atomix.Atomix type.
+         * <code>io.atomix.AtomixClient</code> type.
          */
         public T atomix(String atomix) {
             this.properties.put("atomix", atomix);
             return (T) this;
         }
         /**
-         * The Atomix configuration uri. The option is a java.lang.String type.
+         * The Atomix configuration uri. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T configurationUri(String configurationUri) {
             this.properties.put("configurationUri", configurationUri);
@@ -72,17 +75,15 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * The default action. The option is a
-         * org.apache.camel.component.atomix.client.queue.AtomixQueue.Action
-         * type.
+         * <code>org.apache.camel.component.atomix.client.queue.AtomixQueue$Action</code> type.
          */
-        public T defaultAction(Object defaultAction) {
+        public T defaultAction(Action defaultAction) {
             this.properties.put("defaultAction", defaultAction);
             return (T) this;
         }
         /**
          * The default action. The option will be converted to a
-         * org.apache.camel.component.atomix.client.queue.AtomixQueue.Action
-         * type.
+         * <code>org.apache.camel.component.atomix.client.queue.AtomixQueue$Action</code> type.
          */
         public T defaultAction(String defaultAction) {
             this.properties.put("defaultAction", defaultAction);
@@ -90,7 +91,8 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option is a
-         * java.lang.String type.
+         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
+         * type.
          */
         public T nodes(List<Object> nodes) {
             this.properties.put("nodes", nodes);
@@ -98,7 +100,9 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option will be
-         * converted to a java.lang.String type.
+         * converted to a
+         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
+         * type.
          */
         public T nodes(String nodes) {
             this.properties.put("nodes", nodes);
@@ -106,7 +110,7 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * The header that wil carry the result. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T resultHeader(String resultHeader) {
             this.properties.put("resultHeader", resultHeader);
@@ -114,7 +118,8 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option is a
-         * io.atomix.catalyst.transport.Transport type.
+         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
+         * type.
          */
         public T transport(Class<Object> transport) {
             this.properties.put("transport", transport);
@@ -122,7 +127,8 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option will be converted to a
-         * io.atomix.catalyst.transport.Transport type.
+         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
+         * type.
          */
         public T transport(String transport) {
             this.properties.put("transport", transport);
@@ -131,7 +137,7 @@ public interface AtomixQueueEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -140,7 +146,7 @@ public interface AtomixQueueEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -148,7 +154,7 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * The cluster wide default resource configuration. The option is a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceConfig(Properties defaultResourceConfig) {
             this.properties.put("defaultResourceConfig", defaultResourceConfig);
@@ -156,7 +162,7 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * The cluster wide default resource configuration. The option will be
-         * converted to a java.util.Properties type.
+         * converted to a <code>java.util.Properties</code> type.
          */
         public T defaultResourceConfig(String defaultResourceConfig) {
             this.properties.put("defaultResourceConfig", defaultResourceConfig);
@@ -164,7 +170,7 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * The local default resource options. The option is a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceOptions(Properties defaultResourceOptions) {
             this.properties.put("defaultResourceOptions", defaultResourceOptions);
@@ -172,7 +178,7 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * The local default resource options. The option will be converted to a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceOptions(String defaultResourceOptions) {
             this.properties.put("defaultResourceOptions", defaultResourceOptions);
@@ -181,8 +187,8 @@ public interface AtomixQueueEndpointBuilder {
         /**
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
-         * generated ID thus the local one is ignored. The option is a boolean
-         * type.
+         * generated ID thus the local one is ignored. The option is a
+         * <code>boolean</code> type.
          */
         public T ephemeral(boolean ephemeral) {
             this.properties.put("ephemeral", ephemeral);
@@ -192,7 +198,7 @@ public interface AtomixQueueEndpointBuilder {
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
          * generated ID thus the local one is ignored. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T ephemeral(String ephemeral) {
             this.properties.put("ephemeral", ephemeral);
@@ -200,7 +206,7 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * The read consistency level. The option is a
-         * io.atomix.resource.ReadConsistency type.
+         * <code>io.atomix.resource.ReadConsistency</code> type.
          */
         public T readConsistency(ReadConsistency readConsistency) {
             this.properties.put("readConsistency", readConsistency);
@@ -208,7 +214,7 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * The read consistency level. The option will be converted to a
-         * io.atomix.resource.ReadConsistency type.
+         * <code>io.atomix.resource.ReadConsistency</code> type.
          */
         public T readConsistency(String readConsistency) {
             this.properties.put("readConsistency", readConsistency);
@@ -216,7 +222,8 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option is a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceConfigs(Map<String, Properties> resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -224,7 +231,8 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option will be converted to
-         * a java.util.Map<java.lang.String,java.util.Properties> type.
+         * a <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceConfigs(String resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -232,7 +240,8 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * Local resources configurations. The option is a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceOptions(Map<String, Properties> resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -240,7 +249,8 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * Local resources configurations. The option will be converted to a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceOptions(String resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -249,7 +259,7 @@ public interface AtomixQueueEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -258,7 +268,7 @@ public interface AtomixQueueEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -281,7 +291,7 @@ public interface AtomixQueueEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public AtomixQueueConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
@@ -295,7 +305,7 @@ public interface AtomixQueueEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public AtomixQueueConsumerBuilder bridgeErrorHandler(
                 String bridgeErrorHandler) {
@@ -307,7 +317,7 @@ public interface AtomixQueueEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public AtomixQueueConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -319,7 +329,8 @@ public interface AtomixQueueEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public AtomixQueueConsumerBuilder exceptionHandler(
                 String exceptionHandler) {
@@ -328,7 +339,7 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtomixQueueConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -337,7 +348,8 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtomixQueueConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
@@ -355,6 +367,10 @@ public interface AtomixQueueEndpointBuilder {
         }
     }
 
+    public static enum Action {
+        ADD, OFFER, PEEK, POLL, CLEAR, CONTAINS, IS_EMPTY, REMOVE, SIZE;
+    }
+
     public static enum ReadConsistency {
         ATOMIC, ATOMIC_LEASE, SEQUENTIAL, LOCAL;
     }
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java
index 0a0ee60..cca708a 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java
@@ -42,14 +42,16 @@ public interface AtomixSetEndpointBuilder {
             super("atomix-set", path);
         }
         /**
-         * The distributed resource name. The option is a java.lang.String type.
+         * The distributed resource name. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T resourceName(String resourceName) {
             this.properties.put("resourceName", resourceName);
             return (T) this;
         }
         /**
-         * The Atomix instance to use. The option is a io.atomix.Atomix type.
+         * The Atomix instance to use. The option is a
+         * <code>io.atomix.AtomixClient</code> type.
          */
         public T atomix(Object atomix) {
             this.properties.put("atomix", atomix);
@@ -57,14 +59,15 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * The Atomix instance to use. The option will be converted to a
-         * io.atomix.Atomix type.
+         * <code>io.atomix.AtomixClient</code> type.
          */
         public T atomix(String atomix) {
             this.properties.put("atomix", atomix);
             return (T) this;
         }
         /**
-         * The Atomix configuration uri. The option is a java.lang.String type.
+         * The Atomix configuration uri. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T configurationUri(String configurationUri) {
             this.properties.put("configurationUri", configurationUri);
@@ -72,15 +75,15 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * The default action. The option is a
-         * org.apache.camel.component.atomix.client.set.AtomixSet.Action type.
+         * <code>org.apache.camel.component.atomix.client.set.AtomixSet$Action</code> type.
          */
-        public T defaultAction(Object defaultAction) {
+        public T defaultAction(Action defaultAction) {
             this.properties.put("defaultAction", defaultAction);
             return (T) this;
         }
         /**
          * The default action. The option will be converted to a
-         * org.apache.camel.component.atomix.client.set.AtomixSet.Action type.
+         * <code>org.apache.camel.component.atomix.client.set.AtomixSet$Action</code> type.
          */
         public T defaultAction(String defaultAction) {
             this.properties.put("defaultAction", defaultAction);
@@ -88,7 +91,8 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option is a
-         * java.lang.String type.
+         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
+         * type.
          */
         public T nodes(List<Object> nodes) {
             this.properties.put("nodes", nodes);
@@ -96,7 +100,9 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option will be
-         * converted to a java.lang.String type.
+         * converted to a
+         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
+         * type.
          */
         public T nodes(String nodes) {
             this.properties.put("nodes", nodes);
@@ -104,7 +110,7 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * The header that wil carry the result. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T resultHeader(String resultHeader) {
             this.properties.put("resultHeader", resultHeader);
@@ -112,7 +118,8 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option is a
-         * io.atomix.catalyst.transport.Transport type.
+         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
+         * type.
          */
         public T transport(Class<Object> transport) {
             this.properties.put("transport", transport);
@@ -120,21 +127,23 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option will be converted to a
-         * io.atomix.catalyst.transport.Transport type.
+         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
+         * type.
          */
         public T transport(String transport) {
             this.properties.put("transport", transport);
             return (T) this;
         }
         /**
-         * The resource ttl. The option is a long type.
+         * The resource ttl. The option is a <code>long</code> type.
          */
         public T ttl(long ttl) {
             this.properties.put("ttl", ttl);
             return (T) this;
         }
         /**
-         * The resource ttl. The option will be converted to a long type.
+         * The resource ttl. The option will be converted to a <code>long</code>
+         * type.
          */
         public T ttl(String ttl) {
             this.properties.put("ttl", ttl);
@@ -143,7 +152,7 @@ public interface AtomixSetEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -152,7 +161,7 @@ public interface AtomixSetEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -160,7 +169,7 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * The cluster wide default resource configuration. The option is a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceConfig(Properties defaultResourceConfig) {
             this.properties.put("defaultResourceConfig", defaultResourceConfig);
@@ -168,7 +177,7 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * The cluster wide default resource configuration. The option will be
-         * converted to a java.util.Properties type.
+         * converted to a <code>java.util.Properties</code> type.
          */
         public T defaultResourceConfig(String defaultResourceConfig) {
             this.properties.put("defaultResourceConfig", defaultResourceConfig);
@@ -176,7 +185,7 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * The local default resource options. The option is a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceOptions(Properties defaultResourceOptions) {
             this.properties.put("defaultResourceOptions", defaultResourceOptions);
@@ -184,7 +193,7 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * The local default resource options. The option will be converted to a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceOptions(String defaultResourceOptions) {
             this.properties.put("defaultResourceOptions", defaultResourceOptions);
@@ -193,8 +202,8 @@ public interface AtomixSetEndpointBuilder {
         /**
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
-         * generated ID thus the local one is ignored. The option is a boolean
-         * type.
+         * generated ID thus the local one is ignored. The option is a
+         * <code>boolean</code> type.
          */
         public T ephemeral(boolean ephemeral) {
             this.properties.put("ephemeral", ephemeral);
@@ -204,7 +213,7 @@ public interface AtomixSetEndpointBuilder {
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
          * generated ID thus the local one is ignored. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T ephemeral(String ephemeral) {
             this.properties.put("ephemeral", ephemeral);
@@ -212,7 +221,7 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * The read consistency level. The option is a
-         * io.atomix.resource.ReadConsistency type.
+         * <code>io.atomix.resource.ReadConsistency</code> type.
          */
         public T readConsistency(ReadConsistency readConsistency) {
             this.properties.put("readConsistency", readConsistency);
@@ -220,7 +229,7 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * The read consistency level. The option will be converted to a
-         * io.atomix.resource.ReadConsistency type.
+         * <code>io.atomix.resource.ReadConsistency</code> type.
          */
         public T readConsistency(String readConsistency) {
             this.properties.put("readConsistency", readConsistency);
@@ -228,7 +237,8 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option is a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceConfigs(Map<String, Properties> resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -236,7 +246,8 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option will be converted to
-         * a java.util.Map<java.lang.String,java.util.Properties> type.
+         * a <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceConfigs(String resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -244,7 +255,8 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * Local resources configurations. The option is a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceOptions(Map<String, Properties> resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -252,7 +264,8 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * Local resources configurations. The option will be converted to a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceOptions(String resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -261,7 +274,7 @@ public interface AtomixSetEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -270,7 +283,7 @@ public interface AtomixSetEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -293,7 +306,7 @@ public interface AtomixSetEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public AtomixSetConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
@@ -307,7 +320,7 @@ public interface AtomixSetEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public AtomixSetConsumerBuilder bridgeErrorHandler(
                 String bridgeErrorHandler) {
@@ -319,7 +332,7 @@ public interface AtomixSetEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public AtomixSetConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -331,7 +344,8 @@ public interface AtomixSetEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public AtomixSetConsumerBuilder exceptionHandler(String exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
@@ -339,7 +353,7 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtomixSetConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -348,7 +362,8 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtomixSetConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
@@ -366,6 +381,10 @@ public interface AtomixSetEndpointBuilder {
         }
     }
 
+    public static enum Action {
+        ADD, CLEAR, CONTAINS, IS_EMPTY, REMOVE, SIZE;
+    }
+
     public static enum ReadConsistency {
         ATOMIC, ATOMIC_LEASE, SEQUENTIAL, LOCAL;
     }
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java
index 3c8edf3..a94a6dd 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java
@@ -42,14 +42,16 @@ public interface AtomixValueEndpointBuilder {
             super("atomix-value", path);
         }
         /**
-         * The distributed resource name. The option is a java.lang.String type.
+         * The distributed resource name. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T resourceName(String resourceName) {
             this.properties.put("resourceName", resourceName);
             return (T) this;
         }
         /**
-         * The Atomix instance to use. The option is a io.atomix.Atomix type.
+         * The Atomix instance to use. The option is a
+         * <code>io.atomix.AtomixClient</code> type.
          */
         public T atomix(Object atomix) {
             this.properties.put("atomix", atomix);
@@ -57,14 +59,15 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * The Atomix instance to use. The option will be converted to a
-         * io.atomix.Atomix type.
+         * <code>io.atomix.AtomixClient</code> type.
          */
         public T atomix(String atomix) {
             this.properties.put("atomix", atomix);
             return (T) this;
         }
         /**
-         * The Atomix configuration uri. The option is a java.lang.String type.
+         * The Atomix configuration uri. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T configurationUri(String configurationUri) {
             this.properties.put("configurationUri", configurationUri);
@@ -72,17 +75,15 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * The default action. The option is a
-         * org.apache.camel.component.atomix.client.value.AtomixValue.Action
-         * type.
+         * <code>org.apache.camel.component.atomix.client.value.AtomixValue$Action</code> type.
          */
-        public T defaultAction(Object defaultAction) {
+        public T defaultAction(Action defaultAction) {
             this.properties.put("defaultAction", defaultAction);
             return (T) this;
         }
         /**
          * The default action. The option will be converted to a
-         * org.apache.camel.component.atomix.client.value.AtomixValue.Action
-         * type.
+         * <code>org.apache.camel.component.atomix.client.value.AtomixValue$Action</code> type.
          */
         public T defaultAction(String defaultAction) {
             this.properties.put("defaultAction", defaultAction);
@@ -90,7 +91,8 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option is a
-         * java.lang.String type.
+         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
+         * type.
          */
         public T nodes(List<Object> nodes) {
             this.properties.put("nodes", nodes);
@@ -98,7 +100,9 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option will be
-         * converted to a java.lang.String type.
+         * converted to a
+         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
+         * type.
          */
         public T nodes(String nodes) {
             this.properties.put("nodes", nodes);
@@ -106,7 +110,7 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * The header that wil carry the result. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T resultHeader(String resultHeader) {
             this.properties.put("resultHeader", resultHeader);
@@ -114,7 +118,8 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option is a
-         * io.atomix.catalyst.transport.Transport type.
+         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
+         * type.
          */
         public T transport(Class<Object> transport) {
             this.properties.put("transport", transport);
@@ -122,21 +127,23 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option will be converted to a
-         * io.atomix.catalyst.transport.Transport type.
+         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
+         * type.
          */
         public T transport(String transport) {
             this.properties.put("transport", transport);
             return (T) this;
         }
         /**
-         * The resource ttl. The option is a long type.
+         * The resource ttl. The option is a <code>long</code> type.
          */
         public T ttl(long ttl) {
             this.properties.put("ttl", ttl);
             return (T) this;
         }
         /**
-         * The resource ttl. The option will be converted to a long type.
+         * The resource ttl. The option will be converted to a <code>long</code>
+         * type.
          */
         public T ttl(String ttl) {
             this.properties.put("ttl", ttl);
@@ -145,7 +152,7 @@ public interface AtomixValueEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -154,7 +161,7 @@ public interface AtomixValueEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -162,7 +169,7 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * The cluster wide default resource configuration. The option is a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceConfig(Properties defaultResourceConfig) {
             this.properties.put("defaultResourceConfig", defaultResourceConfig);
@@ -170,7 +177,7 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * The cluster wide default resource configuration. The option will be
-         * converted to a java.util.Properties type.
+         * converted to a <code>java.util.Properties</code> type.
          */
         public T defaultResourceConfig(String defaultResourceConfig) {
             this.properties.put("defaultResourceConfig", defaultResourceConfig);
@@ -178,7 +185,7 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * The local default resource options. The option is a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceOptions(Properties defaultResourceOptions) {
             this.properties.put("defaultResourceOptions", defaultResourceOptions);
@@ -186,7 +193,7 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * The local default resource options. The option will be converted to a
-         * java.util.Properties type.
+         * <code>java.util.Properties</code> type.
          */
         public T defaultResourceOptions(String defaultResourceOptions) {
             this.properties.put("defaultResourceOptions", defaultResourceOptions);
@@ -195,8 +202,8 @@ public interface AtomixValueEndpointBuilder {
         /**
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
-         * generated ID thus the local one is ignored. The option is a boolean
-         * type.
+         * generated ID thus the local one is ignored. The option is a
+         * <code>boolean</code> type.
          */
         public T ephemeral(boolean ephemeral) {
             this.properties.put("ephemeral", ephemeral);
@@ -206,7 +213,7 @@ public interface AtomixValueEndpointBuilder {
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
          * generated ID thus the local one is ignored. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public T ephemeral(String ephemeral) {
             this.properties.put("ephemeral", ephemeral);
@@ -214,7 +221,7 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * The read consistency level. The option is a
-         * io.atomix.resource.ReadConsistency type.
+         * <code>io.atomix.resource.ReadConsistency</code> type.
          */
         public T readConsistency(ReadConsistency readConsistency) {
             this.properties.put("readConsistency", readConsistency);
@@ -222,7 +229,7 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * The read consistency level. The option will be converted to a
-         * io.atomix.resource.ReadConsistency type.
+         * <code>io.atomix.resource.ReadConsistency</code> type.
          */
         public T readConsistency(String readConsistency) {
             this.properties.put("readConsistency", readConsistency);
@@ -230,7 +237,8 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option is a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceConfigs(Map<String, Properties> resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -238,7 +246,8 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option will be converted to
-         * a java.util.Map<java.lang.String,java.util.Properties> type.
+         * a <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceConfigs(String resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -246,7 +255,8 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * Local resources configurations. The option is a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceOptions(Map<String, Properties> resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -254,7 +264,8 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * Local resources configurations. The option will be converted to a
-         * java.util.Map<java.lang.String,java.util.Properties> type.
+         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
+         * type.
          */
         public T resourceOptions(String resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -263,7 +274,7 @@ public interface AtomixValueEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -272,7 +283,7 @@ public interface AtomixValueEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -295,7 +306,7 @@ public interface AtomixValueEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public AtomixValueConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
@@ -309,7 +320,7 @@ public interface AtomixValueEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public AtomixValueConsumerBuilder bridgeErrorHandler(
                 String bridgeErrorHandler) {
@@ -321,7 +332,7 @@ public interface AtomixValueEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public AtomixValueConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -333,7 +344,8 @@ public interface AtomixValueEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public AtomixValueConsumerBuilder exceptionHandler(
                 String exceptionHandler) {
@@ -342,7 +354,7 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtomixValueConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -351,7 +363,8 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AtomixValueConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
@@ -369,6 +382,10 @@ public interface AtomixValueEndpointBuilder {
         }
     }
 
+    public static enum Action {
+        SET, GET, GET_AND_SET, COMPARE_AND_SET;
+    }
+
     public static enum ReadConsistency {
         ATOMIC, ATOMIC_LEASE, SEQUENTIAL, LOCAL;
     }
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpointBuilder.java
index 1516430..bc19e09 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpointBuilder.java
@@ -40,7 +40,7 @@ public interface AvroEndpointBuilder {
         }
         /**
          * Transport to use, can be either http or netty. The option is a
-         * org.apache.camel.component.avro.AvroTransport type.
+         * <code>org.apache.camel.component.avro.AvroTransport</code> type.
          */
         public T transport(AvroTransport transport) {
             this.properties.put("transport", transport);
@@ -48,43 +48,46 @@ public interface AvroEndpointBuilder {
         }
         /**
          * Transport to use, can be either http or netty. The option will be
-         * converted to a org.apache.camel.component.avro.AvroTransport type.
+         * converted to a
+         * <code>org.apache.camel.component.avro.AvroTransport</code> type.
          */
         public T transport(String transport) {
             this.properties.put("transport", transport);
             return (T) this;
         }
         /**
-         * Port number to use. The option is a int type.
+         * Port number to use. The option is a <code>int</code> type.
          */
         public T port(int port) {
             this.properties.put("port", port);
             return (T) this;
         }
         /**
-         * Port number to use. The option will be converted to a int type.
+         * Port number to use. The option will be converted to a
+         * <code>int</code> type.
          */
         public T port(String port) {
             this.properties.put("port", port);
             return (T) this;
         }
         /**
-         * Hostname to use. The option is a java.lang.String type.
+         * Hostname to use. The option is a <code>java.lang.String</code> type.
          */
         public T host(String host) {
             this.properties.put("host", host);
             return (T) this;
         }
         /**
-         * The name of the message to send. The option is a java.lang.String
-         * type.
+         * The name of the message to send. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T messageName(String messageName) {
             this.properties.put("messageName", messageName);
             return (T) this;
         }
         /**
-         * Avro protocol to use. The option is a org.apache.avro.Protocol type.
+         * Avro protocol to use. The option is a
+         * <code>org.apache.avro.Protocol</code> type.
          */
         public T protocol(Object protocol) {
             this.properties.put("protocol", protocol);
@@ -92,7 +95,7 @@ public interface AvroEndpointBuilder {
         }
         /**
          * Avro protocol to use. The option will be converted to a
-         * org.apache.avro.Protocol type.
+         * <code>org.apache.avro.Protocol</code> type.
          */
         public T protocol(String protocol) {
             this.properties.put("protocol", protocol);
@@ -100,14 +103,15 @@ public interface AvroEndpointBuilder {
         }
         /**
          * Avro protocol to use defined by the FQN class name. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T protocolClassName(String protocolClassName) {
             this.properties.put("protocolClassName", protocolClassName);
             return (T) this;
         }
         /**
-         * Avro protocol location. The option is a java.lang.String type.
+         * Avro protocol location. The option is a <code>java.lang.String</code>
+         * type.
          */
         public T protocolLocation(String protocolLocation) {
             this.properties.put("protocolLocation", protocolLocation);
@@ -116,7 +120,8 @@ public interface AvroEndpointBuilder {
         /**
          * If protocol object provided is reflection protocol. Should be used
          * only with protocol parameter because for protocolClassName protocol
-         * type will be auto detected. The option is a boolean type.
+         * type will be auto detected. The option is a <code>boolean</code>
+         * type.
          */
         public T reflectionProtocol(boolean reflectionProtocol) {
             this.properties.put("reflectionProtocol", reflectionProtocol);
@@ -125,8 +130,8 @@ public interface AvroEndpointBuilder {
         /**
          * If protocol object provided is reflection protocol. Should be used
          * only with protocol parameter because for protocolClassName protocol
-         * type will be auto detected. The option will be converted to a boolean
-         * type.
+         * type will be auto detected. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public T reflectionProtocol(String reflectionProtocol) {
             this.properties.put("reflectionProtocol", reflectionProtocol);
@@ -135,7 +140,7 @@ public interface AvroEndpointBuilder {
         /**
          * If true, consumer parameter won't be wrapped into array. Will fail if
          * protocol specifies more then 1 parameter for the message. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T singleParameter(boolean singleParameter) {
             this.properties.put("singleParameter", singleParameter);
@@ -144,7 +149,7 @@ public interface AvroEndpointBuilder {
         /**
          * If true, consumer parameter won't be wrapped into array. Will fail if
          * protocol specifies more then 1 parameter for the message. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T singleParameter(String singleParameter) {
             this.properties.put("singleParameter", singleParameter);
@@ -152,7 +157,7 @@ public interface AvroEndpointBuilder {
         }
         /**
          * Authority to use (username and password). The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T uriAuthority(String uriAuthority) {
             this.properties.put("uriAuthority", uriAuthority);
@@ -161,7 +166,7 @@ public interface AvroEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -170,7 +175,7 @@ public interface AvroEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -179,7 +184,7 @@ public interface AvroEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -188,7 +193,7 @@ public interface AvroEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -211,7 +216,7 @@ public interface AvroEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public AvroConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
@@ -224,7 +229,7 @@ public interface AvroEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public AvroConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
@@ -235,7 +240,7 @@ public interface AvroEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public AvroConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -247,7 +252,8 @@ public interface AvroEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public AvroConsumerBuilder exceptionHandler(String exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
@@ -255,7 +261,7 @@ public interface AvroEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AvroConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -264,7 +270,8 @@ public interface AvroEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public AvroConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java
index 403af92..8f7de8e 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java
@@ -38,8 +38,8 @@ public interface BeanEndpointBuilder {
             super("bean", path);
         }
         /**
-         * Sets the name of the bean to invoke. The option is a java.lang.String
-         * type.
+         * Sets the name of the bean to invoke. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T beanName(String beanName) {
             this.properties.put("beanName", beanName);
@@ -47,7 +47,7 @@ public interface BeanEndpointBuilder {
         }
         /**
          * Sets the name of the method to invoke on the bean. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T method(String method) {
             this.properties.put("method", method);
@@ -56,7 +56,7 @@ public interface BeanEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -65,7 +65,7 @@ public interface BeanEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -74,7 +74,8 @@ public interface BeanEndpointBuilder {
         /**
          * If enabled, Camel will cache the result of the first Registry
          * look-up. Cache can be enabled if the bean in the Registry is defined
-         * as a singleton scope. The option is a java.lang.Boolean type.
+         * as a singleton scope. The option is a <code>java.lang.Boolean</code>
+         * type.
          */
         public T cache(Boolean cache) {
             this.properties.put("cache", cache);
@@ -84,7 +85,7 @@ public interface BeanEndpointBuilder {
          * If enabled, Camel will cache the result of the first Registry
          * look-up. Cache can be enabled if the bean in the Registry is defined
          * as a singleton scope. The option will be converted to a
-         * java.lang.Boolean type.
+         * <code>java.lang.Boolean</code> type.
          */
         public T cache(String cache) {
             this.properties.put("cache", cache);
@@ -92,7 +93,8 @@ public interface BeanEndpointBuilder {
         }
         /**
          * Used for configuring additional properties on the bean. The option is
-         * a java.util.Map<java.lang.String,java.lang.Object> type.
+         * a <code>java.util.Map<java.lang.String, java.lang.Object></code>
+         * type.
          */
         public T parameters(Map<String, Object> parameters) {
             this.properties.put("parameters", parameters);
@@ -100,8 +102,8 @@ public interface BeanEndpointBuilder {
         }
         /**
          * Used for configuring additional properties on the bean. The option
-         * will be converted to a
-         * java.util.Map<java.lang.String,java.lang.Object> type.
+         * will be converted to a <code>java.util.Map<java.lang.String,
+         * java.lang.Object></code> type.
          */
         public T parameters(String parameters) {
             this.properties.put("parameters", parameters);
@@ -110,7 +112,7 @@ public interface BeanEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -119,7 +121,7 @@ public interface BeanEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpointBuilder.java
index 53d756a..35f25d4 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpointBuilder.java
@@ -39,7 +39,7 @@ public interface BeanValidatorEndpointBuilder {
         }
         /**
          * Where label is an arbitrary text value describing the endpoint. The
-         * option is a java.lang.String type.
+         * option is a <code>java.lang.String</code> type.
          */
         public T label(String label) {
             this.properties.put("label", label);
@@ -47,7 +47,7 @@ public interface BeanValidatorEndpointBuilder {
         }
         /**
          * To use a custom ConstraintValidatorFactory. The option is a
-         * javax.validation.ConstraintValidatorFactory type.
+         * <code>javax.validation.ConstraintValidatorFactory</code> type.
          */
         public T constraintValidatorFactory(Object constraintValidatorFactory) {
             this.properties.put("constraintValidatorFactory", constraintValidatorFactory);
@@ -55,15 +55,16 @@ public interface BeanValidatorEndpointBuilder {
         }
         /**
          * To use a custom ConstraintValidatorFactory. The option will be
-         * converted to a javax.validation.ConstraintValidatorFactory type.
+         * converted to a
+         * <code>javax.validation.ConstraintValidatorFactory</code> type.
          */
         public T constraintValidatorFactory(String constraintValidatorFactory) {
             this.properties.put("constraintValidatorFactory", constraintValidatorFactory);
             return (T) this;
         }
         /**
-         * To use a custom validation group. The option is a java.lang.String
-         * type.
+         * To use a custom validation group. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T group(String group) {
             this.properties.put("group", group);
@@ -71,7 +72,7 @@ public interface BeanValidatorEndpointBuilder {
         }
         /**
          * To use a custom MessageInterpolator. The option is a
-         * javax.validation.MessageInterpolator type.
+         * <code>javax.validation.MessageInterpolator</code> type.
          */
         public T messageInterpolator(Object messageInterpolator) {
             this.properties.put("messageInterpolator", messageInterpolator);
@@ -79,7 +80,7 @@ public interface BeanValidatorEndpointBuilder {
         }
         /**
          * To use a custom MessageInterpolator. The option will be converted to
-         * a javax.validation.MessageInterpolator type.
+         * a <code>javax.validation.MessageInterpolator</code> type.
          */
         public T messageInterpolator(String messageInterpolator) {
             this.properties.put("messageInterpolator", messageInterpolator);
@@ -87,7 +88,7 @@ public interface BeanValidatorEndpointBuilder {
         }
         /**
          * To use a custom TraversableResolver. The option is a
-         * javax.validation.TraversableResolver type.
+         * <code>javax.validation.TraversableResolver</code> type.
          */
         public T traversableResolver(Object traversableResolver) {
             this.properties.put("traversableResolver", traversableResolver);
@@ -95,7 +96,7 @@ public interface BeanValidatorEndpointBuilder {
         }
         /**
          * To use a custom TraversableResolver. The option will be converted to
-         * a javax.validation.TraversableResolver type.
+         * a <code>javax.validation.TraversableResolver</code> type.
          */
         public T traversableResolver(String traversableResolver) {
             this.properties.put("traversableResolver", traversableResolver);
@@ -103,7 +104,7 @@ public interface BeanValidatorEndpointBuilder {
         }
         /**
          * To use a a custom ValidationProviderResolver. The option is a
-         * javax.validation.ValidationProviderResolver type.
+         * <code>javax.validation.ValidationProviderResolver</code> type.
          */
         public T validationProviderResolver(Object validationProviderResolver) {
             this.properties.put("validationProviderResolver", validationProviderResolver);
@@ -111,7 +112,8 @@ public interface BeanValidatorEndpointBuilder {
         }
         /**
          * To use a a custom ValidationProviderResolver. The option will be
-         * converted to a javax.validation.ValidationProviderResolver type.
+         * converted to a
+         * <code>javax.validation.ValidationProviderResolver</code> type.
          */
         public T validationProviderResolver(String validationProviderResolver) {
             this.properties.put("validationProviderResolver", validationProviderResolver);
@@ -120,7 +122,7 @@ public interface BeanValidatorEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -129,7 +131,7 @@ public interface BeanValidatorEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -138,7 +140,7 @@ public interface BeanValidatorEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -147,7 +149,7 @@ public interface BeanValidatorEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java
index 90dfe0f..1a105c2 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java
@@ -46,8 +46,8 @@ public interface BeanstalkEndpointBuilder {
             super("beanstalk", path);
         }
         /**
-         * Connection settings host:port/tube. The option is a java.lang.String
-         * type.
+         * Connection settings host:port/tube. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T connectionSettings(String connectionSettings) {
             this.properties.put("connectionSettings", connectionSettings);
@@ -61,7 +61,8 @@ public interface BeanstalkEndpointBuilder {
          * in beanstalk.result message header kick expects the number of jobs to
          * kick in the message body and returns the number of jobs actually
          * kicked out in the message header beanstalk.result. The option is a
-         * org.apache.camel.component.beanstalk.BeanstalkCommand type.
+         * <code>org.apache.camel.component.beanstalk.BeanstalkCommand</code>
+         * type.
          */
         public T command(BeanstalkCommand command) {
             this.properties.put("command", command);
@@ -75,7 +76,8 @@ public interface BeanstalkEndpointBuilder {
          * in beanstalk.result message header kick expects the number of jobs to
          * kick in the message body and returns the number of jobs actually
          * kicked out in the message header beanstalk.result. The option will be
-         * converted to a org.apache.camel.component.beanstalk.BeanstalkCommand
+         * converted to a
+         * <code>org.apache.camel.component.beanstalk.BeanstalkCommand</code>
          * type.
          */
         public T command(String command) {
@@ -83,14 +85,15 @@ public interface BeanstalkEndpointBuilder {
             return (T) this;
         }
         /**
-         * Job delay in seconds. The option is a int type.
+         * Job delay in seconds. The option is a <code>int</code> type.
          */
         public T jobDelay(int jobDelay) {
             this.properties.put("jobDelay", jobDelay);
             return (T) this;
         }
         /**
-         * Job delay in seconds. The option will be converted to a int type.
+         * Job delay in seconds. The option will be converted to a
+         * <code>int</code> type.
          */
         public T jobDelay(String jobDelay) {
             this.properties.put("jobDelay", jobDelay);
@@ -98,7 +101,7 @@ public interface BeanstalkEndpointBuilder {
         }
         /**
          * Job priority. (0 is the highest, see Beanstalk protocol). The option
-         * is a long type.
+         * is a <code>long</code> type.
          */
         public T jobPriority(long jobPriority) {
             this.properties.put("jobPriority", jobPriority);
@@ -106,7 +109,7 @@ public interface BeanstalkEndpointBuilder {
         }
         /**
          * Job priority. (0 is the highest, see Beanstalk protocol). The option
-         * will be converted to a long type.
+         * will be converted to a <code>long</code> type.
          */
         public T jobPriority(String jobPriority) {
             this.properties.put("jobPriority", jobPriority);
@@ -114,8 +117,8 @@ public interface BeanstalkEndpointBuilder {
         }
         /**
          * Job time to run in seconds. (when 0, the beanstalkd daemon raises it
-         * to 1 automatically, see Beanstalk protocol). The option is a int
-         * type.
+         * to 1 automatically, see Beanstalk protocol). The option is a
+         * <code>int</code> type.
          */
         public T jobTimeToRun(int jobTimeToRun) {
             this.properties.put("jobTimeToRun", jobTimeToRun);
@@ -124,7 +127,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * Job time to run in seconds. (when 0, the beanstalkd daemon raises it
          * to 1 automatically, see Beanstalk protocol). The option will be
-         * converted to a int type.
+         * converted to a <code>int</code> type.
          */
         public T jobTimeToRun(String jobTimeToRun) {
             this.properties.put("jobTimeToRun", jobTimeToRun);
@@ -133,7 +136,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -142,7 +145,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -151,7 +154,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -160,7 +163,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -178,7 +181,7 @@ public interface BeanstalkEndpointBuilder {
         }
         /**
          * Whether to wait for job to complete before ack the job from
-         * beanstalk. The option is a boolean type.
+         * beanstalk. The option is a <code>boolean</code> type.
          */
         public BeanstalkConsumerBuilder awaitJob(boolean awaitJob) {
             this.properties.put("awaitJob", awaitJob);
@@ -186,7 +189,8 @@ public interface BeanstalkEndpointBuilder {
         }
         /**
          * Whether to wait for job to complete before ack the job from
-         * beanstalk. The option will be converted to a boolean type.
+         * beanstalk. The option will be converted to a <code>boolean</code>
+         * type.
          */
         public BeanstalkConsumerBuilder awaitJob(String awaitJob) {
             this.properties.put("awaitJob", awaitJob);
@@ -199,7 +203,7 @@ public interface BeanstalkEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public BeanstalkConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
@@ -213,7 +217,7 @@ public interface BeanstalkEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public BeanstalkConsumerBuilder bridgeErrorHandler(
                 String bridgeErrorHandler) {
@@ -222,7 +226,8 @@ public interface BeanstalkEndpointBuilder {
         }
         /**
          * Command to use when processing failed. The option is a
-         * org.apache.camel.component.beanstalk.BeanstalkCommand type.
+         * <code>org.apache.camel.component.beanstalk.BeanstalkCommand</code>
+         * type.
          */
         public BeanstalkConsumerBuilder onFailure(BeanstalkCommand onFailure) {
             this.properties.put("onFailure", onFailure);
@@ -230,7 +235,9 @@ public interface BeanstalkEndpointBuilder {
         }
         /**
          * Command to use when processing failed. The option will be converted
-         * to a org.apache.camel.component.beanstalk.BeanstalkCommand type.
+         * to a
+         * <code>org.apache.camel.component.beanstalk.BeanstalkCommand</code>
+         * type.
          */
         public BeanstalkConsumerBuilder onFailure(String onFailure) {
             this.properties.put("onFailure", onFailure);
@@ -239,7 +246,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option is a
-         * boolean type.
+         * <code>boolean</code> type.
          */
         public BeanstalkConsumerBuilder sendEmptyMessageWhenIdle(
                 boolean sendEmptyMessageWhenIdle) {
@@ -249,7 +256,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public BeanstalkConsumerBuilder sendEmptyMessageWhenIdle(
                 String sendEmptyMessageWhenIdle) {
@@ -257,15 +264,15 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
-         * Whether to use blockIO. The option is a boolean type.
+         * Whether to use blockIO. The option is a <code>boolean</code> type.
          */
         public BeanstalkConsumerBuilder useBlockIO(boolean useBlockIO) {
             this.properties.put("useBlockIO", useBlockIO);
             return (BeanstalkConsumerBuilder) this;
         }
         /**
-         * Whether to use blockIO. The option will be converted to a boolean
-         * type.
+         * Whether to use blockIO. The option will be converted to a
+         * <code>boolean</code> type.
          */
         public BeanstalkConsumerBuilder useBlockIO(String useBlockIO) {
             this.properties.put("useBlockIO", useBlockIO);
@@ -276,7 +283,7 @@ public interface BeanstalkEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public BeanstalkConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -288,7 +295,8 @@ public interface BeanstalkEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public BeanstalkConsumerBuilder exceptionHandler(String exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
@@ -296,7 +304,7 @@ public interface BeanstalkEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public BeanstalkConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -305,7 +313,8 @@ public interface BeanstalkEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public BeanstalkConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
@@ -316,7 +325,7 @@ public interface BeanstalkEndpointBuilder {
          * you to provide your custom implementation to control error handling
          * usually occurred during the poll operation before an Exchange have
          * been created and being routed in Camel. The option is a
-         * org.apache.camel.spi.PollingConsumerPollStrategy type.
+         * <code>org.apache.camel.spi.PollingConsumerPollStrategy</code> type.
          */
         public BeanstalkConsumerBuilder pollStrategy(
                 PollingConsumerPollStrategy pollStrategy) {
@@ -328,7 +337,8 @@ public interface BeanstalkEndpointBuilder {
          * you to provide your custom implementation to control error handling
          * usually occurred during the poll operation before an Exchange have
          * been created and being routed in Camel. The option will be converted
-         * to a org.apache.camel.spi.PollingConsumerPollStrategy type.
+         * to a <code>org.apache.camel.spi.PollingConsumerPollStrategy</code>
+         * type.
          */
         public BeanstalkConsumerBuilder pollStrategy(String pollStrategy) {
             this.properties.put("pollStrategy", pollStrategy);
@@ -337,7 +347,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
-         * is a int type.
+         * is a <code>int</code> type.
          */
         public BeanstalkConsumerBuilder backoffErrorThreshold(
                 int backoffErrorThreshold) {
@@ -347,7 +357,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
-         * will be converted to a int type.
+         * will be converted to a <code>int</code> type.
          */
         public BeanstalkConsumerBuilder backoffErrorThreshold(
                 String backoffErrorThreshold) {
@@ -356,7 +366,8 @@ public interface BeanstalkEndpointBuilder {
         }
         /**
          * The number of subsequent idle polls that should happen before the
-         * backoffMultipler should kick-in. The option is a int type.
+         * backoffMultipler should kick-in. The option is a <code>int</code>
+         * type.
          */
         public BeanstalkConsumerBuilder backoffIdleThreshold(
                 int backoffIdleThreshold) {
@@ -366,7 +377,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * The number of subsequent idle polls that should happen before the
          * backoffMultipler should kick-in. The option will be converted to a
-         * int type.
+         * <code>int</code> type.
          */
         public BeanstalkConsumerBuilder backoffIdleThreshold(
                 String backoffIdleThreshold) {
@@ -379,7 +390,7 @@ public interface BeanstalkEndpointBuilder {
          * the number of polls that will be skipped before the next actual
          * attempt is happening again. When this option is in use then
          * backoffIdleThreshold and/or backoffErrorThreshold must also be
-         * configured. The option is a int type.
+         * configured. The option is a <code>int</code> type.
          */
         public BeanstalkConsumerBuilder backoffMultiplier(int backoffMultiplier) {
             this.properties.put("backoffMultiplier", backoffMultiplier);
@@ -391,7 +402,7 @@ public interface BeanstalkEndpointBuilder {
          * the number of polls that will be skipped before the next actual
          * attempt is happening again. When this option is in use then
          * backoffIdleThreshold and/or backoffErrorThreshold must also be
-         * configured. The option will be converted to a int type.
+         * configured. The option will be converted to a <code>int</code> type.
          */
         public BeanstalkConsumerBuilder backoffMultiplier(
                 String backoffMultiplier) {
@@ -401,7 +412,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
-         * seconds), and 1h (1 hour). The option is a long type.
+         * seconds), and 1h (1 hour). The option is a <code>long</code> type.
          */
         public BeanstalkConsumerBuilder delay(long delay) {
             this.properties.put("delay", delay);
@@ -410,8 +421,8 @@ public interface BeanstalkEndpointBuilder {
         /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
-         * seconds), and 1h (1 hour). The option will be converted to a long
-         * type.
+         * seconds), and 1h (1 hour). The option will be converted to a
+         * <code>long</code> type.
          */
         public BeanstalkConsumerBuilder delay(String delay) {
             this.properties.put("delay", delay);
@@ -420,7 +431,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public BeanstalkConsumerBuilder greedy(boolean greedy) {
             this.properties.put("greedy", greedy);
@@ -429,7 +440,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public BeanstalkConsumerBuilder greedy(String greedy) {
             this.properties.put("greedy", greedy);
@@ -438,7 +449,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
-         * seconds), and 1h (1 hour). The option is a long type.
+         * seconds), and 1h (1 hour). The option is a <code>long</code> type.
          */
         public BeanstalkConsumerBuilder initialDelay(long initialDelay) {
             this.properties.put("initialDelay", initialDelay);
@@ -447,8 +458,8 @@ public interface BeanstalkEndpointBuilder {
         /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
-         * seconds), and 1h (1 hour). The option will be converted to a long
-         * type.
+         * seconds), and 1h (1 hour). The option will be converted to a
+         * <code>long</code> type.
          */
         public BeanstalkConsumerBuilder initialDelay(String initialDelay) {
             this.properties.put("initialDelay", initialDelay);
@@ -457,7 +468,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
-         * is a org.apache.camel.LoggingLevel type.
+         * is a <code>org.apache.camel.LoggingLevel</code> type.
          */
         public BeanstalkConsumerBuilder runLoggingLevel(
                 LoggingLevel runLoggingLevel) {
@@ -467,7 +478,8 @@ public interface BeanstalkEndpointBuilder {
         /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
-         * will be converted to a org.apache.camel.LoggingLevel type.
+         * will be converted to a <code>org.apache.camel.LoggingLevel</code>
+         * type.
          */
         public BeanstalkConsumerBuilder runLoggingLevel(String runLoggingLevel) {
             this.properties.put("runLoggingLevel", runLoggingLevel);
@@ -476,8 +488,8 @@ public interface BeanstalkEndpointBuilder {
         /**
          * Allows for configuring a custom/shared thread pool to use for the
          * consumer. By default each consumer has its own single threaded thread
-         * pool. The option is a java.util.concurrent.ScheduledExecutorService
-         * type.
+         * pool. The option is a
+         * <code>java.util.concurrent.ScheduledExecutorService</code> type.
          */
         public BeanstalkConsumerBuilder scheduledExecutorService(
                 ScheduledExecutorService scheduledExecutorService) {
@@ -488,7 +500,7 @@ public interface BeanstalkEndpointBuilder {
          * Allows for configuring a custom/shared thread pool to use for the
          * consumer. By default each consumer has its own single threaded thread
          * pool. The option will be converted to a
-         * java.util.concurrent.ScheduledExecutorService type.
+         * <code>java.util.concurrent.ScheduledExecutorService</code> type.
          */
         public BeanstalkConsumerBuilder scheduledExecutorService(
                 String scheduledExecutorService) {
@@ -498,7 +510,8 @@ public interface BeanstalkEndpointBuilder {
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option is a
-         * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
+         * <code>org.apache.camel.spi.ScheduledPollConsumerScheduler</code>
+         * type.
          */
         public BeanstalkConsumerBuilder scheduler(
                 ScheduledPollConsumerScheduler scheduler) {
@@ -508,7 +521,8 @@ public interface BeanstalkEndpointBuilder {
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option will be converted to a
-         * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
+         * <code>org.apache.camel.spi.ScheduledPollConsumerScheduler</code>
+         * type.
          */
         public BeanstalkConsumerBuilder scheduler(String scheduler) {
             this.properties.put("scheduler", scheduler);
@@ -517,7 +531,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * java.util.Map<java.lang.String,java.lang.Object> type.
+         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
          */
         public BeanstalkConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -527,7 +541,8 @@ public interface BeanstalkEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a java.util.Map<java.lang.String,java.lang.Object> type.
+         * converted to a <code>java.util.Map<java.lang.String,
+         * java.lang.Object></code> type.
          */
         public BeanstalkConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
@@ -535,8 +550,8 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
-         * Whether the scheduler should be auto started. The option is a boolean
-         * type.
+         * Whether the scheduler should be auto started. The option is a
+         * <code>boolean</code> type.
          */
         public BeanstalkConsumerBuilder startScheduler(boolean startScheduler) {
             this.properties.put("startScheduler", startScheduler);
@@ -544,7 +559,7 @@ public interface BeanstalkEndpointBuilder {
         }
         /**
          * Whether the scheduler should be auto started. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public BeanstalkConsumerBuilder startScheduler(String startScheduler) {
             this.properties.put("startScheduler", startScheduler);
@@ -552,7 +567,7 @@ public interface BeanstalkEndpointBuilder {
         }
         /**
          * Time unit for initialDelay and delay options. The option is a
-         * java.util.concurrent.TimeUnit type.
+         * <code>java.util.concurrent.TimeUnit</code> type.
          */
         public BeanstalkConsumerBuilder timeUnit(TimeUnit timeUnit) {
             this.properties.put("timeUnit", timeUnit);
@@ -560,7 +575,7 @@ public interface BeanstalkEndpointBuilder {
         }
         /**
          * Time unit for initialDelay and delay options. The option will be
-         * converted to a java.util.concurrent.TimeUnit type.
+         * converted to a <code>java.util.concurrent.TimeUnit</code> type.
          */
         public BeanstalkConsumerBuilder timeUnit(String timeUnit) {
             this.properties.put("timeUnit", timeUnit);
@@ -568,8 +583,8 @@ public interface BeanstalkEndpointBuilder {
         }
         /**
          * Controls if fixed delay or fixed rate is used. See
-         * ScheduledExecutorService in JDK for details. The option is a boolean
-         * type.
+         * ScheduledExecutorService in JDK for details. The option is a
+         * <code>boolean</code> type.
          */
         public BeanstalkConsumerBuilder useFixedDelay(boolean useFixedDelay) {
             this.properties.put("useFixedDelay", useFixedDelay);
@@ -578,7 +593,7 @@ public interface BeanstalkEndpointBuilder {
         /**
          * Controls if fixed delay or fixed rate is used. See
          * ScheduledExecutorService in JDK for details. The option will be
-         * converted to a boolean type.
+         * converted to a <code>boolean</code> type.
          */
         public BeanstalkConsumerBuilder useFixedDelay(String useFixedDelay) {
             this.properties.put("useFixedDelay", useFixedDelay);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java
index 257226b..fda407a 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java
@@ -41,7 +41,8 @@ public interface BlobServiceEndpointBuilder {
             super("azure-blob", path);
         }
         /**
-         * Container or Blob compact Uri. The option is a java.lang.String type.
+         * Container or Blob compact Uri. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T containerOrBlobUri(String containerOrBlobUri) {
             this.properties.put("containerOrBlobUri", containerOrBlobUri);
@@ -49,7 +50,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * The blob service client. The option is a
-         * com.microsoft.azure.storage.blob.CloudBlob type.
+         * <code>com.microsoft.azure.storage.blob.CloudBlob</code> type.
          */
         public T azureBlobClient(Object azureBlobClient) {
             this.properties.put("azureBlobClient", azureBlobClient);
@@ -57,7 +58,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * The blob service client. The option will be converted to a
-         * com.microsoft.azure.storage.blob.CloudBlob type.
+         * <code>com.microsoft.azure.storage.blob.CloudBlob</code> type.
          */
         public T azureBlobClient(String azureBlobClient) {
             this.properties.put("azureBlobClient", azureBlobClient);
@@ -65,7 +66,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the blob offset for the upload or download operations, default is
-         * 0. The option is a java.lang.Long type.
+         * 0. The option is a <code>java.lang.Long</code> type.
          */
         public T blobOffset(Long blobOffset) {
             this.properties.put("blobOffset", blobOffset);
@@ -73,7 +74,8 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the blob offset for the upload or download operations, default is
-         * 0. The option will be converted to a java.lang.Long type.
+         * 0. The option will be converted to a <code>java.lang.Long</code>
+         * type.
          */
         public T blobOffset(String blobOffset) {
             this.properties.put("blobOffset", blobOffset);
@@ -81,7 +83,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set a blob type, 'blockblob' is default. The option is a
-         * org.apache.camel.component.azure.blob.BlobType type.
+         * <code>org.apache.camel.component.azure.blob.BlobType</code> type.
          */
         public T blobType(BlobType blobType) {
             this.properties.put("blobType", blobType);
@@ -89,7 +91,8 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set a blob type, 'blockblob' is default. The option will be converted
-         * to a org.apache.camel.component.azure.blob.BlobType type.
+         * to a <code>org.apache.camel.component.azure.blob.BlobType</code>
+         * type.
          */
         public T blobType(String blobType) {
             this.properties.put("blobType", blobType);
@@ -97,7 +100,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Close the stream after read or keep it open, default is true. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public T closeStreamAfterRead(boolean closeStreamAfterRead) {
             this.properties.put("closeStreamAfterRead", closeStreamAfterRead);
@@ -105,7 +108,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Close the stream after read or keep it open, default is true. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public T closeStreamAfterRead(String closeStreamAfterRead) {
             this.properties.put("closeStreamAfterRead", closeStreamAfterRead);
@@ -113,7 +116,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the storage credentials, required in most cases. The option is a
-         * com.microsoft.azure.storage.StorageCredentials type.
+         * <code>com.microsoft.azure.storage.StorageCredentials</code> type.
          */
         public T credentials(Object credentials) {
             this.properties.put("credentials", credentials);
@@ -121,8 +124,8 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the storage credentials, required in most cases. The option will
-         * be converted to a com.microsoft.azure.storage.StorageCredentials
-         * type.
+         * be converted to a
+         * <code>com.microsoft.azure.storage.StorageCredentials</code> type.
          */
         public T credentials(String credentials) {
             this.properties.put("credentials", credentials);
@@ -130,7 +133,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the data length for the download or page blob upload operations.
-         * The option is a java.lang.Long type.
+         * The option is a <code>java.lang.Long</code> type.
          */
         public T dataLength(Long dataLength) {
             this.properties.put("dataLength", dataLength);
@@ -138,7 +141,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the data length for the download or page blob upload operations.
-         * The option will be converted to a java.lang.Long type.
+         * The option will be converted to a <code>java.lang.Long</code> type.
          */
         public T dataLength(String dataLength) {
             this.properties.put("dataLength", dataLength);
@@ -146,7 +149,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the file directory where the downloaded blobs will be saved to.
-         * The option is a java.lang.String type.
+         * The option is a <code>java.lang.String</code> type.
          */
         public T fileDir(String fileDir) {
             this.properties.put("fileDir", fileDir);
@@ -155,7 +158,7 @@ public interface BlobServiceEndpointBuilder {
         /**
          * Storage resources can be public for reading their content, if this
          * property is enabled then the credentials do not have to be set. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public T publicForRead(boolean publicForRead) {
             this.properties.put("publicForRead", publicForRead);
@@ -164,7 +167,7 @@ public interface BlobServiceEndpointBuilder {
         /**
          * Storage resources can be public for reading their content, if this
          * property is enabled then the credentials do not have to be set. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public T publicForRead(String publicForRead) {
             this.properties.put("publicForRead", publicForRead);
@@ -172,7 +175,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the minimum read size in bytes when reading the blob content. The
-         * option is a int type.
+         * option is a <code>int</code> type.
          */
         public T streamReadSize(int streamReadSize) {
             this.properties.put("streamReadSize", streamReadSize);
@@ -180,7 +183,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the minimum read size in bytes when reading the blob content. The
-         * option will be converted to a int type.
+         * option will be converted to a <code>int</code> type.
          */
         public T streamReadSize(String streamReadSize) {
             this.properties.put("streamReadSize", streamReadSize);
@@ -189,7 +192,7 @@ public interface BlobServiceEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -198,7 +201,7 @@ public interface BlobServiceEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -207,7 +210,7 @@ public interface BlobServiceEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -216,7 +219,7 @@ public interface BlobServiceEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -239,7 +242,7 @@ public interface BlobServiceEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public BlobServiceConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
@@ -253,7 +256,7 @@ public interface BlobServiceEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public BlobServiceConsumerBuilder bridgeErrorHandler(
                 String bridgeErrorHandler) {
@@ -265,7 +268,7 @@ public interface BlobServiceEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public BlobServiceConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -277,7 +280,8 @@ public interface BlobServiceEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public BlobServiceConsumerBuilder exceptionHandler(
                 String exceptionHandler) {
@@ -286,7 +290,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public BlobServiceConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -295,7 +299,8 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public BlobServiceConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
@@ -313,7 +318,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the blob meta-data. The option is a
-         * java.util.Map<java.lang.String,java.lang.String> type.
+         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
          */
         public BlobServiceProducerBuilder blobMetadata(
                 Map<String, String> blobMetadata) {
@@ -322,7 +327,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the blob meta-data. The option will be converted to a
-         * java.util.Map<java.lang.String,java.lang.String> type.
+         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
          */
         public BlobServiceProducerBuilder blobMetadata(String blobMetadata) {
             this.properties.put("blobMetadata", blobMetadata);
@@ -330,7 +335,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set a prefix which can be used for listing the blobs. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public BlobServiceProducerBuilder blobPrefix(String blobPrefix) {
             this.properties.put("blobPrefix", blobPrefix);
@@ -338,7 +343,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Close the stream after write or keep it open, default is true. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public BlobServiceProducerBuilder closeStreamAfterWrite(
                 boolean closeStreamAfterWrite) {
@@ -347,7 +352,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Close the stream after write or keep it open, default is true. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public BlobServiceProducerBuilder closeStreamAfterWrite(
                 String closeStreamAfterWrite) {
@@ -356,7 +361,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Blob service operation hint to the producer. The option is a
-         * org.apache.camel.component.azure.blob.BlobServiceOperations type.
+         * <code>org.apache.camel.component.azure.blob.BlobServiceOperations</code> type.
          */
         public BlobServiceProducerBuilder operation(
                 BlobServiceOperations operation) {
@@ -366,7 +371,7 @@ public interface BlobServiceEndpointBuilder {
         /**
          * Blob service operation hint to the producer. The option will be
          * converted to a
-         * org.apache.camel.component.azure.blob.BlobServiceOperations type.
+         * <code>org.apache.camel.component.azure.blob.BlobServiceOperations</code> type.
          */
         public BlobServiceProducerBuilder operation(String operation) {
             this.properties.put("operation", operation);
@@ -374,7 +379,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the size of the buffer for writing block and page blocks. The
-         * option is a int type.
+         * option is a <code>int</code> type.
          */
         public BlobServiceProducerBuilder streamWriteSize(int streamWriteSize) {
             this.properties.put("streamWriteSize", streamWriteSize);
@@ -382,7 +387,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the size of the buffer for writing block and page blocks. The
-         * option will be converted to a int type.
+         * option will be converted to a <code>int</code> type.
          */
         public BlobServiceProducerBuilder streamWriteSize(String streamWriteSize) {
             this.properties.put("streamWriteSize", streamWriteSize);
@@ -390,7 +395,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Specify if the flat or hierarchical blob listing should be used. The
-         * option is a boolean type.
+         * option is a <code>boolean</code> type.
          */
         public BlobServiceProducerBuilder useFlatListing(boolean useFlatListing) {
             this.properties.put("useFlatListing", useFlatListing);
@@ -398,7 +403,7 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Specify if the flat or hierarchical blob listing should be used. The
-         * option will be converted to a boolean type.
+         * option will be converted to a <code>boolean</code> type.
          */
         public BlobServiceProducerBuilder useFlatListing(String useFlatListing) {
             this.properties.put("useFlatListing", useFlatListing);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpointBuilder.java
index 678a1b4e..bbd85a1 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpointBuilder.java
@@ -40,7 +40,8 @@ public interface BonitaEndpointBuilder {
         }
         /**
          * Operation to use. The option is a
-         * org.apache.camel.component.bonita.util.BonitaOperation type.
+         * <code>org.apache.camel.component.bonita.util.BonitaOperation</code>
+         * type.
          */
         public T operation(BonitaOperation operation) {
             this.properties.put("operation", operation);
@@ -48,15 +49,16 @@ public interface BonitaEndpointBuilder {
         }
         /**
          * Operation to use. The option will be converted to a
-         * org.apache.camel.component.bonita.util.BonitaOperation type.
+         * <code>org.apache.camel.component.bonita.util.BonitaOperation</code>
+         * type.
          */
         public T operation(String operation) {
             this.properties.put("operation", operation);
             return (T) this;
         }
         /**
-         * Hostname where Bonita engine runs. The option is a java.lang.String
-         * type.
+         * Hostname where Bonita engine runs. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T hostname(String hostname) {
             this.properties.put("hostname", hostname);
@@ -64,7 +66,7 @@ public interface BonitaEndpointBuilder {
         }
         /**
          * Port of the server hosting Bonita engine. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T port(String port) {
             this.properties.put("port", port);
@@ -72,7 +74,7 @@ public interface BonitaEndpointBuilder {
         }
         /**
          * Name of the process involved in the operation. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T processName(String processName) {
             this.properties.put("processName", processName);
@@ -81,7 +83,7 @@ public interface BonitaEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -90,7 +92,7 @@ public interface BonitaEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -99,7 +101,7 @@ public interface BonitaEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -108,7 +110,7 @@ public interface BonitaEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -116,7 +118,7 @@ public interface BonitaEndpointBuilder {
         }
         /**
          * Password to authenticate to Bonita engine. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T password(String password) {
             this.properties.put("password", password);
@@ -124,7 +126,7 @@ public interface BonitaEndpointBuilder {
         }
         /**
          * Username to authenticate to Bonita engine. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T username(String username) {
             this.properties.put("username", username);
@@ -147,7 +149,7 @@ public interface BonitaEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public BonitaConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
@@ -161,7 +163,7 @@ public interface BonitaEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public BonitaConsumerBuilder bridgeErrorHandler(
                 String bridgeErrorHandler) {
@@ -173,7 +175,7 @@ public interface BonitaEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public BonitaConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -185,7 +187,8 @@ public interface BonitaEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public BonitaConsumerBuilder exceptionHandler(String exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
@@ -193,7 +196,7 @@ public interface BonitaEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public BonitaConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -202,7 +205,8 @@ public interface BonitaEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public BonitaConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java
index 1322227..eae5e9d 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java
@@ -42,7 +42,7 @@ public interface BoxEndpointBuilder {
         }
         /**
          * What kind of operation to perform. The option is a
-         * org.apache.camel.component.box.internal.BoxApiName type.
+         * <code>org.apache.camel.component.box.internal.BoxApiName</code> type.
          */
         public T apiName(BoxApiName apiName) {
             this.properties.put("apiName", apiName);
@@ -50,7 +50,7 @@ public interface BoxEndpointBuilder {
         }
         /**
          * What kind of operation to perform. The option will be converted to a
-         * org.apache.camel.component.box.internal.BoxApiName type.
+         * <code>org.apache.camel.component.box.internal.BoxApiName</code> type.
          */
         public T apiName(String apiName) {
             this.properties.put("apiName", apiName);
@@ -58,14 +58,15 @@ public interface BoxEndpointBuilder {
         }
         /**
          * What sub operation to use for the selected operation. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T methodName(String methodName) {
             this.properties.put("methodName", methodName);
             return (T) this;
         }
         /**
-         * Box application client ID. The option is a java.lang.String type.
+         * Box application client ID. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T clientId(String clientId) {
             this.properties.put("clientId", clientId);
@@ -73,7 +74,7 @@ public interface BoxEndpointBuilder {
         }
         /**
          * The enterprise ID to use for an App Enterprise. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T enterpriseId(String enterpriseId) {
             this.properties.put("enterpriseId", enterpriseId);
@@ -81,15 +82,15 @@ public interface BoxEndpointBuilder {
         }
         /**
          * Sets the name of a parameter to be passed in the exchange In Body.
-         * The option is a java.lang.String type.
+         * The option is a <code>java.lang.String</code> type.
          */
         public T inBody(String inBody) {
             this.properties.put("inBody", inBody);
             return (T) this;
         }
         /**
-         * The user ID to use for an App User. The option is a java.lang.String
-         * type.
+         * The user ID to use for an App User. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T userId(String userId) {
             this.properties.put("userId", userId);
@@ -98,7 +99,7 @@ public interface BoxEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T basicPropertyBinding(boolean basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -107,7 +108,7 @@ public interface BoxEndpointBuilder {
         /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T basicPropertyBinding(String basicPropertyBinding) {
             this.properties.put("basicPropertyBinding", basicPropertyBinding);
@@ -115,7 +116,7 @@ public interface BoxEndpointBuilder {
         }
         /**
          * Custom HTTP params for settings like proxy host. The option is a
-         * java.util.Map<java.lang.String,java.lang.Object> type.
+         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
          */
         public T httpParams(Map<String, Object> httpParams) {
             this.properties.put("httpParams", httpParams);
@@ -123,7 +124,8 @@ public interface BoxEndpointBuilder {
         }
         /**
          * Custom HTTP params for settings like proxy host. The option will be
-         * converted to a java.util.Map<java.lang.String,java.lang.Object> type.
+         * converted to a <code>java.util.Map<java.lang.String,
+         * java.lang.Object></code> type.
          */
         public T httpParams(String httpParams) {
             this.properties.put("httpParams", httpParams);
@@ -132,7 +134,7 @@ public interface BoxEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * is a boolean type.
+         * is a <code>boolean</code> type.
          */
         public T synchronous(boolean synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -141,7 +143,7 @@ public interface BoxEndpointBuilder {
         /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
-         * will be converted to a boolean type.
+         * will be converted to a <code>boolean</code> type.
          */
         public T synchronous(String synchronous) {
             this.properties.put("synchronous", synchronous);
@@ -149,7 +151,7 @@ public interface BoxEndpointBuilder {
         }
         /**
          * Custom Access Token Cache for storing and retrieving access tokens.
-         * The option is a com.box.sdk.IAccessTokenCache type.
+         * The option is a <code>com.box.sdk.IAccessTokenCache</code> type.
          */
         public T accessTokenCache(Object accessTokenCache) {
             this.properties.put("accessTokenCache", accessTokenCache);
@@ -157,14 +159,16 @@ public interface BoxEndpointBuilder {
         }
         /**
          * Custom Access Token Cache for storing and retrieving access tokens.
-         * The option will be converted to a com.box.sdk.IAccessTokenCache type.
+         * The option will be converted to a
+         * <code>com.box.sdk.IAccessTokenCache</code> type.
          */
         public T accessTokenCache(String accessTokenCache) {
             this.properties.put("accessTokenCache", accessTokenCache);
             return (T) this;
         }
         /**
-         * Box application client secret. The option is a java.lang.String type.
+         * Box application client secret. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T clientSecret(String clientSecret) {
             this.properties.put("clientSecret", clientSecret);
@@ -173,7 +177,7 @@ public interface BoxEndpointBuilder {
         /**
          * The type of encryption algorithm for JWT. Supported Algorithms:
          * RSA_SHA_256 RSA_SHA_384 RSA_SHA_512. The option is a
-         * com.box.sdk.EncryptionAlgorithm type.
+         * <code>com.box.sdk.EncryptionAlgorithm</code> type.
          */
         public T encryptionAlgorithm(EncryptionAlgorithm encryptionAlgorithm) {
             this.properties.put("encryptionAlgorithm", encryptionAlgorithm);
@@ -182,15 +186,15 @@ public interface BoxEndpointBuilder {
         /**
          * The type of encryption algorithm for JWT. Supported Algorithms:
          * RSA_SHA_256 RSA_SHA_384 RSA_SHA_512. The option will be converted to
-         * a com.box.sdk.EncryptionAlgorithm type.
+         * a <code>com.box.sdk.EncryptionAlgorithm</code> type.
          */
         public T encryptionAlgorithm(String encryptionAlgorithm) {
             this.properties.put("encryptionAlgorithm", encryptionAlgorithm);
             return (T) this;
         }
         /**
-         * The maximum number of access tokens in cache. The option is a int
-         * type.
+         * The maximum number of access tokens in cache. The option is a
+         * <code>int</code> type.
          */
         public T maxCacheEntries(int maxCacheEntries) {
             this.properties.put("maxCacheEntries", maxCacheEntries);
@@ -198,7 +202,7 @@ public interface BoxEndpointBuilder {
         }
         /**
          * The maximum number of access tokens in cache. The option will be
-         * converted to a int type.
+         * converted to a <code>int</code> type.
          */
         public T maxCacheEntries(String maxCacheEntries) {
             this.properties.put("maxCacheEntries", maxCacheEntries);
@@ -207,8 +211,8 @@ public interface BoxEndpointBuilder {
         /**
          * The type of authentication for connection. Types of Authentication:
          * STANDARD_AUTHENTICATION - OAuth 2.0 (3-legged) SERVER_AUTHENTICATION
-         * - OAuth 2.0 with JSON Web Tokens. The option is a java.lang.String
-         * type.
+         * - OAuth 2.0 with JSON Web Tokens. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T authenticationType(String authenticationType) {
             this.properties.put("authenticationType", authenticationType);
@@ -216,15 +220,15 @@ public interface BoxEndpointBuilder {
         }
         /**
          * The private key for generating the JWT signature. The option is a
-         * java.lang.String type.
+         * <code>java.lang.String</code> type.
          */
         public T privateKeyFile(String privateKeyFile) {
             this.properties.put("privateKeyFile", privateKeyFile);
             return (T) this;
         }
         /**
-         * The password for the private key. The option is a java.lang.String
-         * type.
+         * The password for the private key. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T privateKeyPassword(String privateKeyPassword) {
             this.properties.put("privateKeyPassword", privateKeyPassword);
@@ -232,7 +236,7 @@ public interface BoxEndpointBuilder {
         }
         /**
          * The ID for public key for validating the JWT signature. The option is
-         * a java.lang.String type.
+         * a <code>java.lang.String</code> type.
          */
         public T publicKeyId(String publicKeyId) {
             this.properties.put("publicKeyId", publicKeyId);
@@ -240,7 +244,7 @@ public interface BoxEndpointBuilder {
         }
         /**
          * To configure security using SSLContextParameters. The option is a
-         * org.apache.camel.support.jsse.SSLContextParameters type.
+         * <code>org.apache.camel.support.jsse.SSLContextParameters</code> type.
          */
         public T sslContextParameters(Object sslContextParameters) {
             this.properties.put("sslContextParameters", sslContextParameters);
@@ -248,16 +252,16 @@ public interface BoxEndpointBuilder {
         }
         /**
          * To configure security using SSLContextParameters. The option will be
-         * converted to a org.apache.camel.support.jsse.SSLContextParameters
-         * type.
+         * converted to a
+         * <code>org.apache.camel.support.jsse.SSLContextParameters</code> type.
          */
         public T sslContextParameters(String sslContextParameters) {
             this.properties.put("sslContextParameters", sslContextParameters);
             return (T) this;
         }
         /**
-         * Box user name, MUST be provided. The option is a java.lang.String
-         * type.
+         * Box user name, MUST be provided. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T userName(String userName) {
             this.properties.put("userName", userName);
@@ -265,7 +269,8 @@ public interface BoxEndpointBuilder {
         }
         /**
          * Box user password, MUST be provided if authSecureStorage is not set,
-         * or returns null on first call. The option is a java.lang.String type.
+         * or returns null on first call. The option is a
+         * <code>java.lang.String</code> type.
          */
         public T userPassword(String userPassword) {
             this.properties.put("userPassword", userPassword);
@@ -288,7 +293,7 @@ public interface BoxEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option is a boolean type.
+         * ignored. The option is a <code>boolean</code> type.
          */
         public BoxConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
@@ -301,7 +306,7 @@ public interface BoxEndpointBuilder {
          * message and handled by the routing Error Handler. By default the
          * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
          * with exceptions, that will be logged at WARN or ERROR level and
-         * ignored. The option will be converted to a boolean type.
+         * ignored. The option will be converted to a <code>boolean</code> type.
          */
         public BoxConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
@@ -312,7 +317,7 @@ public interface BoxEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option is a
-         * org.apache.camel.spi.ExceptionHandler type.
+         * <code>org.apache.camel.spi.ExceptionHandler</code> type.
          */
         public BoxConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
@@ -324,7 +329,8 @@ public interface BoxEndpointBuilder {
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
          * logged at WARN or ERROR level and ignored. The option will be
-         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         * converted to a <code>org.apache.camel.spi.ExceptionHandler</code>
+         * type.
          */
         public BoxConsumerBuilder exceptionHandler(String exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
@@ -332,7 +338,7 @@ public interface BoxEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option is a org.apache.camel.ExchangePattern type.
+         * option is a <code>org.apache.camel.ExchangePattern</code> type.
          */
         public BoxConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
@@ -341,7 +347,8 @@ public interface BoxEndpointBuilder {
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
-         * option will be converted to a org.apache.camel.ExchangePattern type.
+         * option will be converted to a
+         * <code>org.apache.camel.ExchangePattern</code> type.
          */
         public BoxConsumerBuilder exchangePattern(String exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BraintreeEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BraintreeEndpointBuilder.java
index d330849..12c99ba 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BraintreeEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BraintreeEndpointBuilder.java
@@ -42,7 +42,7 @@ public interface BraintreeEndpointBuilder {
         }
         /**
          * What kind of operation to perform. The option is a
-         * org.apache.camel.component.braintree.internal.BraintreeApiName type.
+         * <code>org.apache.camel.component.braintree.internal.BraintreeApiName</code> type.
          */
         public T apiName(BraintreeApiName apiName) {
             this.properties.put("apiName", apiName);
@@ -50,7 +50,7 @@ public interface BraintreeEndpointBuilder {
         }
... 96274 lines suppressed ...


[camel] 02/05: Generate additional fluent methods with a String argument to allow the property binding to kick in for references, placeholders, etc...

Posted by gn...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

gnodet pushed a commit to branch endpoint-dsl
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 192b1d26ba2050524be71cda84d2f2e75d4deec7
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Tue Jun 11 13:10:10 2019 +0200

    Generate additional fluent methods with a String argument to allow the property binding to kick in for references, placeholders, etc...
---
 .../camel/model/endpoint/AMQPEndpointBuilder.java  |  902 ++++++++++++++-
 .../camel/model/endpoint/AS2EndpointBuilder.java   |  162 +++
 .../model/endpoint/ActiveMQEndpointBuilder.java    |  903 ++++++++++++++-
 .../camel/model/endpoint/AhcEndpointBuilder.java   |  148 +++
 .../camel/model/endpoint/ApnsEndpointBuilder.java  |  196 ++++
 .../model/endpoint/AsteriskEndpointBuilder.java    |   60 +
 .../camel/model/endpoint/AtmosEndpointBuilder.java |   65 ++
 .../AtmosphereWebsocketEndpointBuilder.java        |  235 ++++
 .../camel/model/endpoint/AtomEndpointBuilder.java  |  248 ++++
 .../model/endpoint/AtomixMapEndpointBuilder.java   |  149 +++
 .../endpoint/AtomixMessagingEndpointBuilder.java   |  143 +++
 .../endpoint/AtomixMultiMapEndpointBuilder.java    |  151 +++
 .../model/endpoint/AtomixQueueEndpointBuilder.java |  135 +++
 .../model/endpoint/AtomixSetEndpointBuilder.java   |  140 +++
 .../model/endpoint/AtomixValueEndpointBuilder.java |  142 +++
 .../camel/model/endpoint/AvroEndpointBuilder.java  |   92 ++
 .../camel/model/endpoint/BeanEndpointBuilder.java  |   37 +
 .../endpoint/BeanValidatorEndpointBuilder.java     |   50 +
 .../model/endpoint/BeanstalkEndpointBuilder.java   |  261 +++++
 .../model/endpoint/BlobServiceEndpointBuilder.java |  160 +++
 .../model/endpoint/BonitaEndpointBuilder.java      |   59 +
 .../camel/model/endpoint/BoxEndpointBuilder.java   |  100 ++
 .../model/endpoint/BraintreeEndpointBuilder.java   |   83 ++
 .../model/endpoint/BrowseEndpointBuilder.java      |   51 +
 .../camel/model/endpoint/CMEndpointBuilder.java    |   38 +
 .../camel/model/endpoint/CMISEndpointBuilder.java  |   93 ++
 .../endpoint/CaffeineCacheEndpointBuilder.java     |  173 +++
 .../endpoint/CaffeineLoadCacheEndpointBuilder.java |  173 +++
 .../model/endpoint/CassandraEndpointBuilder.java   |  249 ++++
 .../model/endpoint/ChatScriptEndpointBuilder.java  |   34 +
 .../camel/model/endpoint/ChunkEndpointBuilder.java |   26 +
 .../model/endpoint/CinderEndpointBuilder.java      |   26 +
 .../camel/model/endpoint/ClassEndpointBuilder.java |   37 +
 .../model/endpoint/ClientEndpointBuilder.java      |  176 +++
 .../camel/model/endpoint/CoAPEndpointBuilder.java  |  102 ++
 .../model/endpoint/CometdEndpointBuilder.java      |  138 +++
 .../model/endpoint/ConsulEndpointBuilder.java      |   51 +
 .../model/endpoint/ControlBusEndpointBuilder.java  |   55 +
 .../camel/model/endpoint/CordaEndpointBuilder.java |   58 +
 .../model/endpoint/CouchDbEndpointBuilder.java     |   91 ++
 .../model/endpoint/CouchbaseEndpointBuilder.java   |  342 ++++++
 .../model/endpoint/CryptoCmsEndpointBuilder.java   |  172 +++
 .../camel/model/endpoint/CwEndpointBuilder.java    |   51 +
 .../camel/model/endpoint/CxfEndpointBuilder.java   |  243 ++++
 .../camel/model/endpoint/CxfRsEndpointBuilder.java |  289 +++++
 .../model/endpoint/DataFormatEndpointBuilder.java  |   18 +
 .../model/endpoint/DataSetEndpointBuilder.java     |  188 ++++
 .../model/endpoint/DataSetTestEndpointBuilder.java |  164 +++
 .../camel/model/endpoint/DdbEndpointBuilder.java   |   66 ++
 .../model/endpoint/DdbStreamEndpointBuilder.java   |  249 ++++
 .../endpoint/DigitalOceanEndpointBuilder.java      |   70 ++
 .../endpoint/DigitalSignatureEndpointBuilder.java  |  116 ++
 .../model/endpoint/DirectEndpointBuilder.java      |   78 ++
 .../model/endpoint/DirectVmEndpointBuilder.java    |   99 ++
 .../model/endpoint/DisruptorEndpointBuilder.java   |  140 +++
 .../model/endpoint/DisruptorVmEndpointBuilder.java |  141 +++
 .../camel/model/endpoint/DnsEndpointBuilder.java   |   26 +
 .../model/endpoint/DockerEndpointBuilder.java      |  130 +++
 .../camel/model/endpoint/DozerEndpointBuilder.java |   31 +
 .../camel/model/endpoint/DrillEndpointBuilder.java |   36 +
 .../model/endpoint/DropboxEndpointBuilder.java     |   79 ++
 .../camel/model/endpoint/EC2EndpointBuilder.java   |   45 +
 .../camel/model/endpoint/ECSEndpointBuilder.java   |   42 +
 .../camel/model/endpoint/EKSEndpointBuilder.java   |   42 +
 .../model/endpoint/EhcacheEndpointBuilder.java     |  142 +++
 .../camel/model/endpoint/EjbEndpointBuilder.java   |   37 +
 .../endpoint/ElasticsearchEndpointBuilder.java     |   88 ++
 .../camel/model/endpoint/ElsqlEndpointBuilder.java |  407 +++++++
 .../camel/model/endpoint/EtcdEndpointBuilder.java  |  254 +++++
 .../model/endpoint/EventAdminEndpointBuilder.java  |   60 +
 .../camel/model/endpoint/EventEndpointBuilder.java |   50 +
 .../camel/model/endpoint/ExecEndpointBuilder.java  |   58 +
 .../model/endpoint/FacebookEndpointBuilder.java    |  389 +++++++
 .../camel/model/endpoint/FhirEndpointBuilder.java  |  164 +++
 .../camel/model/endpoint/FileEndpointBuilder.java  |  910 +++++++++++++++
 .../model/endpoint/FlatpackEndpointBuilder.java    |  254 +++++
 .../camel/model/endpoint/FlinkEndpointBuilder.java |   67 ++
 .../camel/model/endpoint/FopEndpointBuilder.java   |   36 +
 .../model/endpoint/FreemarkerEndpointBuilder.java  |   42 +
 .../camel/model/endpoint/FtpEndpointBuilder.java   | 1075 +++++++++++++++++-
 .../camel/model/endpoint/FtpsEndpointBuilder.java  | 1183 +++++++++++++++++++-
 .../model/endpoint/GangliaEndpointBuilder.java     |   86 ++
 .../model/endpoint/GeoCoderEndpointBuilder.java    |   34 +
 .../camel/model/endpoint/GitEndpointBuilder.java   |   66 ++
 .../model/endpoint/GitHubEndpointBuilder.java      |   59 +
 .../model/endpoint/GlanceEndpointBuilder.java      |   26 +
 .../endpoint/GoogleBigQueryEndpointBuilder.java    |   27 +
 .../endpoint/GoogleBigQuerySQLEndpointBuilder.java |   27 +
 .../endpoint/GoogleCalendarEndpointBuilder.java    |   61 +
 .../GoogleCalendarStreamEndpointBuilder.java       |  240 ++++
 .../model/endpoint/GoogleDriveEndpointBuilder.java |   82 ++
 .../model/endpoint/GoogleMailEndpointBuilder.java  |   61 +
 .../endpoint/GoogleMailStreamEndpointBuilder.java  |  219 ++++
 .../endpoint/GooglePubsubEndpointBuilder.java      |   87 ++
 .../endpoint/GoogleSheetsEndpointBuilder.java      |   62 +
 .../GoogleSheetsStreamEndpointBuilder.java         |  234 ++++
 .../camel/model/endpoint/GoraEndpointBuilder.java  |  157 +++
 .../camel/model/endpoint/GrapeEndpointBuilder.java |   18 +
 .../model/endpoint/GridFsEndpointBuilder.java      |  110 ++
 .../camel/model/endpoint/GrpcEndpointBuilder.java  |  152 +++
 .../endpoint/GuavaEventBusEndpointBuilder.java     |   78 ++
 .../camel/model/endpoint/HBaseEndpointBuilder.java |  138 +++
 .../HazelcastAtomicnumberEndpointBuilder.java      |   89 ++
 .../endpoint/HazelcastInstanceEndpointBuilder.java |  152 +++
 .../endpoint/HazelcastListEndpointBuilder.java     |  151 +++
 .../endpoint/HazelcastMapEndpointBuilder.java      |  151 +++
 .../endpoint/HazelcastMultimapEndpointBuilder.java |  152 +++
 .../endpoint/HazelcastQueueEndpointBuilder.java    |  152 +++
 .../HazelcastReplicatedmapEndpointBuilder.java     |  152 +++
 .../HazelcastRingbufferEndpointBuilder.java        |   89 ++
 .../endpoint/HazelcastSedaEndpointBuilder.java     |  151 +++
 .../endpoint/HazelcastSetEndpointBuilder.java      |  151 +++
 .../endpoint/HazelcastTopicEndpointBuilder.java    |  152 +++
 .../camel/model/endpoint/HdfsEndpointBuilder.java  |  327 ++++++
 .../model/endpoint/HipchatEndpointBuilder.java     |  214 ++++
 .../camel/model/endpoint/HttpEndpointBuilder.java  |  372 ++++++
 .../camel/model/endpoint/IAMEndpointBuilder.java   |   44 +
 .../camel/model/endpoint/IOTAEndpointBuilder.java  |   76 ++
 .../camel/model/endpoint/IPFSEndpointBuilder.java  |   26 +
 .../model/endpoint/IgniteCacheEndpointBuilder.java |  162 +++
 .../endpoint/IgniteComputeEndpointBuilder.java     |   69 ++
 .../endpoint/IgniteEventsEndpointBuilder.java      |   91 ++
 .../model/endpoint/IgniteIdGenEndpointBuilder.java |   65 ++
 .../endpoint/IgniteMessagingEndpointBuilder.java   |  100 ++
 .../model/endpoint/IgniteQueueEndpointBuilder.java |   76 ++
 .../model/endpoint/IgniteSetEndpointBuilder.java   |   60 +
 .../model/endpoint/InfinispanEndpointBuilder.java  |  170 +++
 .../model/endpoint/InfluxDbEndpointBuilder.java    |   26 +
 .../camel/model/endpoint/IrcEndpointBuilder.java   |  194 ++++
 .../model/endpoint/IronMQEndpointBuilder.java      |  271 +++++
 .../camel/model/endpoint/JBPMEndpointBuilder.java  |  196 ++++
 .../model/endpoint/JCacheEndpointBuilder.java      |  176 +++
 .../model/endpoint/JGroupsEndpointBuilder.java     |   62 +
 .../model/endpoint/JGroupsRaftEndpointBuilder.java |   63 ++
 .../camel/model/endpoint/JMXEndpointBuilder.java   |  219 ++++
 .../endpoint/JSR356WebSocketEndpointBuilder.java   |   61 +
 .../model/endpoint/JcloudsEndpointBuilder.java     |   60 +
 .../camel/model/endpoint/JcrEndpointBuilder.java   |   97 ++
 .../camel/model/endpoint/JdbcEndpointBuilder.java  |  130 +++
 .../model/endpoint/JettyHttpEndpointBuilder9.java  |  504 +++++++++
 .../camel/model/endpoint/JingEndpointBuilder.java  |   28 +
 .../camel/model/endpoint/JiraEndpointBuilder.java  |   77 ++
 .../camel/model/endpoint/JmsEndpointBuilder.java   |  900 ++++++++++++++-
 .../camel/model/endpoint/JoltEndpointBuilder.java  |   53 +
 .../camel/model/endpoint/JooqEndpointBuilder.java  |  220 ++++
 .../camel/model/endpoint/JpaEndpointBuilder.java   |  391 +++++++
 .../endpoint/JsonValidatorEndpointBuilder.java     |   63 ++
 .../camel/model/endpoint/Jt400EndpointBuilder.java |  281 +++++
 .../camel/model/endpoint/KMSEndpointBuilder.java   |   42 +
 .../camel/model/endpoint/KafkaEndpointBuilder.java |  637 +++++++++++
 .../model/endpoint/KeystoneEndpointBuilder.java    |   26 +
 .../model/endpoint/KinesisEndpointBuilder.java     |  246 ++++
 .../endpoint/KinesisFirehoseEndpointBuilder.java   |   35 +
 .../KubernetesConfigMapsEndpointBuilder.java       |   43 +
 .../KubernetesDeploymentsEndpointBuilder.java      |   85 ++
 .../endpoint/KubernetesHPAEndpointBuilder.java     |   85 ++
 .../endpoint/KubernetesJobEndpointBuilder.java     |   85 ++
 .../KubernetesNamespacesEndpointBuilder.java       |   85 ++
 .../endpoint/KubernetesNodesEndpointBuilder.java   |   85 ++
 ...etesPersistentVolumesClaimsEndpointBuilder.java |   43 +
 ...KubernetesPersistentVolumesEndpointBuilder.java |   43 +
 .../endpoint/KubernetesPodsEndpointBuilder.java    |   85 ++
 ...netesReplicationControllersEndpointBuilder.java |   86 ++
 .../KubernetesResourcesQuotaEndpointBuilder.java   |   43 +
 .../endpoint/KubernetesSecretsEndpointBuilder.java |   43 +
 .../KubernetesServiceAccountsEndpointBuilder.java  |   43 +
 .../KubernetesServicesEndpointBuilder.java         |   85 ++
 .../model/endpoint/LambdaEndpointBuilder.java      |   44 +
 .../model/endpoint/LanguageEndpointBuilder.java    |   54 +
 .../camel/model/endpoint/LdapEndpointBuilder.java  |   30 +
 .../camel/model/endpoint/LdifEndpointBuilder.java  |   18 +
 .../model/endpoint/LinkedInEndpointBuilder.java    |  109 ++
 .../camel/model/endpoint/LogEndpointBuilder.java   |  215 ++++
 .../model/endpoint/LuceneEndpointBuilder.java      |   64 ++
 .../model/endpoint/LumberjackEndpointBuilder.java  |   68 ++
 .../camel/model/endpoint/MQEndpointBuilder.java    |   43 +
 .../camel/model/endpoint/MQTTEndpointBuilder.java  |  263 +++++
 .../camel/model/endpoint/MSKEndpointBuilder.java   |   42 +
 .../camel/model/endpoint/MailEndpointBuilder.java  |  525 +++++++++
 .../model/endpoint/MasterEndpointBuilder.java      |   51 +
 .../model/endpoint/MetricsEndpointBuilder.java     |   74 ++
 .../model/endpoint/MicrometerEndpointBuilder.java  |   34 +
 .../model/endpoint/MiloClientEndpointBuilder.java  |  150 +++
 .../model/endpoint/MiloServerEndpointBuilder.java  |   52 +
 .../camel/model/endpoint/Mina2EndpointBuilder.java |  261 +++++
 .../camel/model/endpoint/MllpEndpointBuilder.java  |  262 +++++
 .../camel/model/endpoint/MockEndpointBuilder.java  |  137 +++
 .../model/endpoint/MongoDbEndpointBuilder.java     |  125 +++
 .../camel/model/endpoint/MsvEndpointBuilder.java   |   85 ++
 .../model/endpoint/MustacheEndpointBuilder.java    |   26 +
 .../camel/model/endpoint/MvelEndpointBuilder.java  |   26 +
 .../model/endpoint/MyBatisBeanEndpointBuilder.java |   29 +
 .../model/endpoint/MyBatisEndpointBuilder.java     |  268 +++++
 .../model/endpoint/NagiosEndpointBuilder.java      |   69 ++
 .../camel/model/endpoint/NatsEndpointBuilder.java  |  188 ++++
 .../model/endpoint/NetWeaverEndpointBuilder.java   |   44 +
 .../camel/model/endpoint/NettyEndpointBuilder.java |  657 +++++++++++
 .../model/endpoint/NettyHttpEndpointBuilder.java   |  759 ++++++++++++-
 .../model/endpoint/NeutronEndpointBuilder.java     |   26 +
 .../camel/model/endpoint/NovaEndpointBuilder.java  |   26 +
 .../camel/model/endpoint/NsqEndpointBuilder.java   |  122 ++
 .../model/endpoint/Olingo2EndpointBuilder.java     |  134 +++
 .../model/endpoint/Olingo4EndpointBuilder.java     |  134 +++
 .../OpenshiftBuildConfigsEndpointBuilder.java      |   43 +
 .../endpoint/OpenshiftBuildsEndpointBuilder.java   |   43 +
 .../model/endpoint/OptaPlannerEndpointBuilder.java |   68 ++
 .../camel/model/endpoint/PahoEndpointBuilder.java  |   97 ++
 .../model/endpoint/PaxLoggingEndpointBuilder.java  |   52 +
 .../camel/model/endpoint/PdfEndpointBuilder.java   |   91 ++
 .../model/endpoint/PgEventEndpointBuilder.java     |   68 ++
 .../model/endpoint/PrinterEndpointBuilder.java     |   50 +
 .../model/endpoint/PropertiesEndpointBuilder.java  |   71 ++
 .../model/endpoint/PubNubEndpointBuilder.java      |   75 ++
 .../model/endpoint/PulsarEndpointBuilder.java      |   77 ++
 .../model/endpoint/QuartzEndpointBuilder.java      |  177 +++
 .../endpoint/QueueServiceEndpointBuilder.java      |   97 ++
 .../model/endpoint/QuickfixjEndpointBuilder.java   |   72 ++
 .../model/endpoint/RabbitMQEndpointBuilder.java    |  430 +++++++
 .../endpoint/ReactiveStreamsEndpointBuilder.java   |  118 ++
 .../camel/model/endpoint/RedisEndpointBuilder.java |  106 ++
 .../camel/model/endpoint/RefEndpointBuilder.java   |   50 +
 .../model/endpoint/RestApiEndpointBuilder.java     |   51 +
 .../camel/model/endpoint/RestEndpointBuilder.java  |   61 +
 .../model/endpoint/RestSwaggerEndpointBuilder.java |   39 +
 .../model/endpoint/RestletEndpointBuilder.java     |  201 ++++
 .../camel/model/endpoint/RssEndpointBuilder.java   |  247 ++++
 .../camel/model/endpoint/S3EndpointBuilder.java    |  395 +++++++
 .../camel/model/endpoint/SWFEndpointBuilder.java   |  144 +++
 .../camel/model/endpoint/SagaEndpointBuilder.java  |   27 +
 .../model/endpoint/SalesforceEndpointBuilder.java  |  260 +++++
 .../model/endpoint/SchedulerEndpointBuilder.java   |  206 ++++
 .../model/endpoint/SchematronEndpointBuilder.java  |   43 +
 .../camel/model/endpoint/ScpEndpointBuilder.java   |  169 +++
 .../camel/model/endpoint/SdbEndpointBuilder.java   |   58 +
 .../camel/model/endpoint/SedaEndpointBuilder.java  |  187 ++++
 .../model/endpoint/ServerEndpointBuilder.java      |  184 +++
 .../model/endpoint/ServiceEndpointBuilder.java     |   51 +
 .../model/endpoint/ServiceNowEndpointBuilder.java  |  230 ++++
 .../model/endpoint/ServletEndpointBuilder.java     |  214 ++++
 .../camel/model/endpoint/SesEndpointBuilder.java   |   53 +
 .../camel/model/endpoint/SftpEndpointBuilder.java  | 1108 +++++++++++++++++-
 .../camel/model/endpoint/SipEndpointBuilder.java   |  299 +++++
 .../camel/model/endpoint/Sjms2EndpointBuilder.java |  324 ++++++
 .../model/endpoint/SjmsBatchEndpointBuilder.java   |  261 +++++
 .../camel/model/endpoint/SjmsEndpointBuilder.java  |  308 +++++
 .../camel/model/endpoint/SlackEndpointBuilder.java |  196 ++++
 .../camel/model/endpoint/SmppEndpointBuilder.java  |  302 +++++
 .../camel/model/endpoint/SnmpEndpointBuilder.java  |  273 +++++
 .../camel/model/endpoint/SnsEndpointBuilder.java   |   75 ++
 .../camel/model/endpoint/SolrEndpointBuilder.java  |   92 ++
 .../model/endpoint/SoroushBotEndpointBuilder.java  |  208 ++++
 .../camel/model/endpoint/SparkEndpointBuilder.java |  120 ++
 .../model/endpoint/SplunkEndpointBuilder.java      |  262 +++++
 .../model/endpoint/SpringBatchEndpointBuilder.java |   44 +
 .../endpoint/SpringIntegrationEndpointBuilder.java |   63 ++
 .../model/endpoint/SpringLdapEndpointBuilder.java  |   26 +
 .../endpoint/SpringWebserviceEndpointBuilder.java  |  258 +++++
 .../camel/model/endpoint/SqlEndpointBuilder.java   |  384 +++++++
 .../model/endpoint/SqlStoredEndpointBuilder.java   |   60 +
 .../camel/model/endpoint/SqsEndpointBuilder.java   |  406 +++++++
 .../camel/model/endpoint/SshEndpointBuilder.java   |  239 ++++
 .../camel/model/endpoint/StAXEndpointBuilder.java  |   18 +
 .../camel/model/endpoint/StompEndpointBuilder.java |   68 ++
 .../model/endpoint/StreamEndpointBuilder.java      |  186 +++
 .../endpoint/StringTemplateEndpointBuilder.java    |   42 +
 .../camel/model/endpoint/StubEndpointBuilder.java  |  187 ++++
 .../camel/model/endpoint/SwiftEndpointBuilder.java |   26 +
 .../model/endpoint/TelegramEndpointBuilder.java    |  225 ++++
 .../model/endpoint/ThriftEndpointBuilder.java      |  115 ++
 .../camel/model/endpoint/TikaEndpointBuilder.java  |   46 +
 .../camel/model/endpoint/TimerEndpointBuilder.java |  117 ++
 .../model/endpoint/TwilioEndpointBuilder.java      |   59 +
 .../TwitterDirectMessageEndpointBuilder.java       |  313 ++++++
 .../endpoint/TwitterSearchEndpointBuilder.java     |  306 +++++
 .../endpoint/TwitterStreamingEndpointBuilder.java  |  318 ++++++
 .../endpoint/TwitterTimelineEndpointBuilder.java   |  315 ++++++
 .../model/endpoint/UndertowEndpointBuilder.java    |  216 ++++
 .../model/endpoint/ValidatorEndpointBuilder.java   |   85 ++
 .../model/endpoint/VelocityEndpointBuilder.java    |   34 +
 .../camel/model/endpoint/VertxEndpointBuilder.java |   59 +
 .../camel/model/endpoint/VmEndpointBuilder.java    |  186 +++
 .../model/endpoint/WeatherEndpointBuilder.java     |  272 +++++
 .../camel/model/endpoint/Web3jEndpointBuilder.java |  192 ++++
 .../model/endpoint/WebhookEndpointBuilder.java     |   59 +
 .../model/endpoint/WebsocketEndpointBuilder.java   |  159 +++
 .../model/endpoint/WordpressEndpointBuilder.java   |   84 ++
 .../camel/model/endpoint/WsEndpointBuilder.java    |  164 +++
 .../model/endpoint/XChangeEndpointBuilder.java     |   51 +
 .../model/endpoint/XQueryEndpointBuilder.java      |  286 +++++
 .../endpoint/XmlSignatureEndpointBuilder.java      |  287 +++++
 .../camel/model/endpoint/XmppEndpointBuilder.java  |  136 +++
 .../camel/model/endpoint/XsltEndpointBuilder.java  |  157 +++
 .../model/endpoint/YammerEndpointBuilder.java      |  243 ++++
 .../model/endpoint/ZendeskEndpointBuilder.java     |   51 +
 .../model/endpoint/ZooKeeperEndpointBuilder.java   |  108 ++
 .../endpoint/ZooKeeperMasterEndpointBuilder.java   |   53 +
 .../camel/maven/packaging/EndpointDslMojo.java     |   19 +
 297 files changed, 46017 insertions(+), 32 deletions(-)

diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpointBuilder.java
index 4423b53..6307a6d 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpointBuilder.java
@@ -79,6 +79,17 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets the default connection factory to be used if a connection
+         * factory is not specified for either
+         * setTemplateConnectionFactory(ConnectionFactory) or
+         * setListenerConnectionFactory(ConnectionFactory). The option will be
+         * converted to a javax.jms.ConnectionFactory type.
+         */
+        public T connectionFactory(String connectionFactory) {
+            this.properties.put("connectionFactory", connectionFactory);
+            return (T) this;
+        }
+        /**
          * Specifies whether Camel ignores the JMSReplyTo header in messages. If
          * true, Camel does not send a reply back to the destination specified
          * in the JMSReplyTo header. You can use this option if you want Camel
@@ -94,6 +105,21 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies whether Camel ignores the JMSReplyTo header in messages. If
+         * true, Camel does not send a reply back to the destination specified
+         * in the JMSReplyTo header. You can use this option if you want Camel
+         * to consume from a route and you do not want Camel to automatically
+         * send back a reply message because another component in your code
+         * handles the reply message. You can also use this option if you want
+         * to use Camel as a proxy between different message brokers and you
+         * want to route message from one system to another. The option will be
+         * converted to a boolean type.
+         */
+        public T disableReplyTo(String disableReplyTo) {
+            this.properties.put("disableReplyTo", disableReplyTo);
+            return (T) this;
+        }
+        /**
          * The durable subscriber name for specifying durable topic
          * subscriptions. The clientId option must be configured as well. The
          * option is a java.lang.String type.
@@ -115,6 +141,18 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Allows you to force the use of a specific javax.jms.Message
+         * implementation for sending JMS messages. Possible values are: Bytes,
+         * Map, Object, Stream, Text. By default, Camel would determine which
+         * JMS message type to use from the In body type. This option allows you
+         * to specify it. The option will be converted to a
+         * org.apache.camel.component.jms.JmsMessageType type.
+         */
+        public T jmsMessageType(String jmsMessageType) {
+            this.properties.put("jmsMessageType", jmsMessageType);
+            return (T) this;
+        }
+        /**
          * Specifies whether to test the connection on startup. This ensures
          * that when Camel starts that all the JMS consumers have a valid
          * connection to the JMS broker. If a connection cannot be granted then
@@ -127,6 +165,18 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies whether to test the connection on startup. This ensures
+         * that when Camel starts that all the JMS consumers have a valid
+         * connection to the JMS broker. If a connection cannot be granted then
+         * Camel throws an exception on startup. This ensures that Camel is not
+         * started with failed connections. The JMS producers is tested as well.
+         * The option will be converted to a boolean type.
+         */
+        public T testConnectionOnStartup(String testConnectionOnStartup) {
+            this.properties.put("testConnectionOnStartup", testConnectionOnStartup);
+            return (T) this;
+        }
+        /**
          * Controls whether or not to include serialized headers. Applies only
          * when isTransferExchange() is true. This requires that the objects are
          * serializable. Camel will exclude any non-serializable objects and log
@@ -137,6 +187,16 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Controls whether or not to include serialized headers. Applies only
+         * when isTransferExchange() is true. This requires that the objects are
+         * serializable. Camel will exclude any non-serializable objects and log
+         * it at WARN level. The option will be converted to a boolean type.
+         */
+        public T allowSerializedHeaders(String allowSerializedHeaders) {
+            this.properties.put("allowSerializedHeaders", allowSerializedHeaders);
+            return (T) this;
+        }
+        /**
          * Whether to startup the JmsConsumer message listener asynchronously,
          * when starting a route. For example if a JmsConsumer cannot get a
          * connection to a remote JMS broker, then it may block while retrying
@@ -154,6 +214,23 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether to startup the JmsConsumer message listener asynchronously,
+         * when starting a route. For example if a JmsConsumer cannot get a
+         * connection to a remote JMS broker, then it may block while retrying
+         * and/or failover. This will cause Camel to block while starting
+         * routes. By setting this option to true, you will let routes startup,
+         * while the JmsConsumer connects to the JMS broker using a dedicated
+         * thread in asynchronous mode. If this option is used, then beware that
+         * if the connection could not be established, then an exception is
+         * logged at WARN level, and the consumer will not be able to receive
+         * messages; You can then restart the route to retry. The option will be
+         * converted to a boolean type.
+         */
+        public T asyncStartListener(String asyncStartListener) {
+            this.properties.put("asyncStartListener", asyncStartListener);
+            return (T) this;
+        }
+        /**
          * Whether to stop the JmsConsumer message listener asynchronously, when
          * stopping a route. The option is a boolean type.
          */
@@ -162,6 +239,14 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether to stop the JmsConsumer message listener asynchronously, when
+         * stopping a route. The option will be converted to a boolean type.
+         */
+        public T asyncStopListener(String asyncStopListener) {
+            this.properties.put("asyncStopListener", asyncStopListener);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -171,6 +256,15 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * A pluggable
          * org.springframework.jms.support.destination.DestinationResolver that
          * allows you to use your own resolver (for example, to lookup the real
@@ -182,6 +276,17 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * A pluggable
+         * org.springframework.jms.support.destination.DestinationResolver that
+         * allows you to use your own resolver (for example, to lookup the real
+         * destination in a JNDI registry). The option will be converted to a
+         * org.springframework.jms.support.destination.DestinationResolver type.
+         */
+        public T destinationResolver(String destinationResolver) {
+            this.properties.put("destinationResolver", destinationResolver);
+            return (T) this;
+        }
+        /**
          * Specifies a org.springframework.util.ErrorHandler to be invoked in
          * case of any uncaught exceptions thrown while processing a Message. By
          * default these exceptions will be logged at the WARN level, if no
@@ -196,6 +301,20 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies a org.springframework.util.ErrorHandler to be invoked in
+         * case of any uncaught exceptions thrown while processing a Message. By
+         * default these exceptions will be logged at the WARN level, if no
+         * errorHandler has been configured. You can configure logging level and
+         * whether stack traces should be logged using errorHandlerLoggingLevel
+         * and errorHandlerLogStackTrace options. This makes it much easier to
+         * configure, than having to code a custom errorHandler. The option will
+         * be converted to a org.springframework.util.ErrorHandler type.
+         */
+        public T errorHandler(String errorHandler) {
+            this.properties.put("errorHandler", errorHandler);
+            return (T) this;
+        }
+        /**
          * Specifies the JMS Exception Listener that is to be notified of any
          * underlying JMS exceptions. The option is a
          * javax.jms.ExceptionListener type.
@@ -205,6 +324,15 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies the JMS Exception Listener that is to be notified of any
+         * underlying JMS exceptions. The option will be converted to a
+         * javax.jms.ExceptionListener type.
+         */
+        public T exceptionListener(String exceptionListener) {
+            this.properties.put("exceptionListener", exceptionListener);
+            return (T) this;
+        }
+        /**
          * To use a custom HeaderFilterStrategy to filter header to and from
          * Camel message. The option is a
          * org.apache.camel.spi.HeaderFilterStrategy type.
@@ -214,6 +342,15 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use a custom HeaderFilterStrategy to filter header to and from
+         * Camel message. The option will be converted to a
+         * org.apache.camel.spi.HeaderFilterStrategy type.
+         */
+        public T headerFilterStrategy(String headerFilterStrategy) {
+            this.properties.put("headerFilterStrategy", headerFilterStrategy);
+            return (T) this;
+        }
+        /**
          * Specify the limit for the number of consumers that are allowed to be
          * idle at any given time. The option is a int type.
          */
@@ -222,6 +359,14 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specify the limit for the number of consumers that are allowed to be
+         * idle at any given time. The option will be converted to a int type.
+         */
+        public T idleConsumerLimit(String idleConsumerLimit) {
+            this.properties.put("idleConsumerLimit", idleConsumerLimit);
+            return (T) this;
+        }
+        /**
          * Specifies the limit for idle executions of a receive task, not having
          * received any message within its execution. If this limit is reached,
          * the task will shut down and leave receiving to other executing tasks
@@ -234,6 +379,18 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies the limit for idle executions of a receive task, not having
+         * received any message within its execution. If this limit is reached,
+         * the task will shut down and leave receiving to other executing tasks
+         * (in the case of dynamic scheduling; see the maxConcurrentConsumers
+         * setting). There is additional doc available from Spring. The option
+         * will be converted to a int type.
+         */
+        public T idleTaskExecutionLimit(String idleTaskExecutionLimit) {
+            this.properties.put("idleTaskExecutionLimit", idleTaskExecutionLimit);
+            return (T) this;
+        }
+        /**
          * Whether to include all JMSXxxx properties when mapping from JMS to
          * Camel Message. Setting this to true will include properties such as
          * JMSXAppID, and JMSXUserID etc. Note: If you are using a custom
@@ -245,6 +402,17 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether to include all JMSXxxx properties when mapping from JMS to
+         * Camel Message. Setting this to true will include properties such as
+         * JMSXAppID, and JMSXUserID etc. Note: If you are using a custom
+         * headerFilterStrategy then this option does not apply. The option will
+         * be converted to a boolean type.
+         */
+        public T includeAllJMSXProperties(String includeAllJMSXProperties) {
+            this.properties.put("includeAllJMSXProperties", includeAllJMSXProperties);
+            return (T) this;
+        }
+        /**
          * Pluggable strategy for encoding and decoding JMS keys so they can be
          * compliant with the JMS specification. Camel provides two
          * implementations out of the box: default and passthrough. The default
@@ -260,6 +428,22 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Pluggable strategy for encoding and decoding JMS keys so they can be
+         * compliant with the JMS specification. Camel provides two
+         * implementations out of the box: default and passthrough. The default
+         * strategy will safely marshal dots and hyphens (. and -). The
+         * passthrough strategy leaves the key as is. Can be used for JMS
+         * brokers which do not care whether JMS header keys contain illegal
+         * characters. You can provide your own implementation of the
+         * org.apache.camel.component.jms.JmsKeyFormatStrategy and refer to it
+         * using the # notation. The option will be converted to a
+         * java.lang.String type.
+         */
+        public T jmsKeyFormatStrategy(String jmsKeyFormatStrategy) {
+            this.properties.put("jmsKeyFormatStrategy", jmsKeyFormatStrategy);
+            return (T) this;
+        }
+        /**
          * Specifies whether Camel should auto map the received JMS message to a
          * suited payload type, such as javax.jms.TextMessage to a String etc.
          * The option is a boolean type.
@@ -269,6 +453,15 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies whether Camel should auto map the received JMS message to a
+         * suited payload type, such as javax.jms.TextMessage to a String etc.
+         * The option will be converted to a boolean type.
+         */
+        public T mapJmsMessage(String mapJmsMessage) {
+            this.properties.put("mapJmsMessage", mapJmsMessage);
+            return (T) this;
+        }
+        /**
          * The number of messages per task. -1 is unlimited. If you use a range
          * for concurrent consumers (eg min max), then this option can be used
          * to set a value to eg 100 to control how fast the consumers will
@@ -279,6 +472,17 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * The number of messages per task. -1 is unlimited. If you use a range
+         * for concurrent consumers (eg min max), then this option can be used
+         * to set a value to eg 100 to control how fast the consumers will
+         * shrink when less work is required. The option will be converted to a
+         * int type.
+         */
+        public T maxMessagesPerTask(String maxMessagesPerTask) {
+            this.properties.put("maxMessagesPerTask", maxMessagesPerTask);
+            return (T) this;
+        }
+        /**
          * To use a custom Spring
          * org.springframework.jms.support.converter.MessageConverter so you can
          * be in control how to map to/from a javax.jms.Message. The option is a
@@ -289,6 +493,17 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use a custom Spring
+         * org.springframework.jms.support.converter.MessageConverter so you can
+         * be in control how to map to/from a javax.jms.Message. The option will
+         * be converted to a
+         * org.springframework.jms.support.converter.MessageConverter type.
+         */
+        public T messageConverter(String messageConverter) {
+            this.properties.put("messageConverter", messageConverter);
+            return (T) this;
+        }
+        /**
          * To use the given MessageCreatedStrategy which are invoked when Camel
          * creates new instances of javax.jms.Message objects when Camel is
          * sending a JMS message. The option is a
@@ -299,6 +514,16 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use the given MessageCreatedStrategy which are invoked when Camel
+         * creates new instances of javax.jms.Message objects when Camel is
+         * sending a JMS message. The option will be converted to a
+         * org.apache.camel.component.jms.MessageCreatedStrategy type.
+         */
+        public T messageCreatedStrategy(String messageCreatedStrategy) {
+            this.properties.put("messageCreatedStrategy", messageCreatedStrategy);
+            return (T) this;
+        }
+        /**
          * When sending, specifies whether message IDs should be added. This is
          * just an hint to the JMS Broker. If the JMS provider accepts this
          * hint, these messages must have the message ID set to null; if the
@@ -310,6 +535,17 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * When sending, specifies whether message IDs should be added. This is
+         * just an hint to the JMS Broker. If the JMS provider accepts this
+         * hint, these messages must have the message ID set to null; if the
+         * provider ignores the hint, the message ID must be set to its normal
+         * unique value. The option will be converted to a boolean type.
+         */
+        public T messageIdEnabled(String messageIdEnabled) {
+            this.properties.put("messageIdEnabled", messageIdEnabled);
+            return (T) this;
+        }
+        /**
          * Registry ID of the MessageListenerContainerFactory used to determine
          * what
          * org.springframework.jms.listener.AbstractMessageListenerContainer to
@@ -323,6 +559,19 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Registry ID of the MessageListenerContainerFactory used to determine
+         * what
+         * org.springframework.jms.listener.AbstractMessageListenerContainer to
+         * use to consume messages. Setting this will automatically set
+         * consumerType to Custom. The option will be converted to a
+         * org.apache.camel.component.jms.MessageListenerContainerFactory type.
+         */
+        public T messageListenerContainerFactory(
+                String messageListenerContainerFactory) {
+            this.properties.put("messageListenerContainerFactory", messageListenerContainerFactory);
+            return (T) this;
+        }
+        /**
          * Specifies whether timestamps should be enabled by default on sending
          * messages. This is just an hint to the JMS Broker. If the JMS provider
          * accepts this hint, these messages must have the timestamp set to
@@ -334,6 +583,17 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies whether timestamps should be enabled by default on sending
+         * messages. This is just an hint to the JMS Broker. If the JMS provider
+         * accepts this hint, these messages must have the timestamp set to
+         * zero; if the provider ignores the hint, the timestamp must be set to
+         * its normal value. The option will be converted to a boolean type.
+         */
+        public T messageTimestampEnabled(String messageTimestampEnabled) {
+            this.properties.put("messageTimestampEnabled", messageTimestampEnabled);
+            return (T) this;
+        }
+        /**
          * Specifies whether to inhibit the delivery of messages published by
          * its own connection. The option is a boolean type.
          */
@@ -342,6 +602,14 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies whether to inhibit the delivery of messages published by
+         * its own connection. The option will be converted to a boolean type.
+         */
+        public T pubSubNoLocal(String pubSubNoLocal) {
+            this.properties.put("pubSubNoLocal", pubSubNoLocal);
+            return (T) this;
+        }
+        /**
          * The timeout for receiving messages (in milliseconds). The option is a
          * long type.
          */
@@ -350,6 +618,14 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * The timeout for receiving messages (in milliseconds). The option will
+         * be converted to a long type.
+         */
+        public T receiveTimeout(String receiveTimeout) {
+            this.properties.put("receiveTimeout", receiveTimeout);
+            return (T) this;
+        }
+        /**
          * Specifies the interval between recovery attempts, i.e. when a
          * connection is being refreshed, in milliseconds. The default is 5000
          * ms, that is, 5 seconds. The option is a long type.
@@ -359,6 +635,15 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies the interval between recovery attempts, i.e. when a
+         * connection is being refreshed, in milliseconds. The default is 5000
+         * ms, that is, 5 seconds. The option will be converted to a long type.
+         */
+        public T recoveryInterval(String recoveryInterval) {
+            this.properties.put("recoveryInterval", recoveryInterval);
+            return (T) this;
+        }
+        /**
          * Configures how often Camel should check for timed out Exchanges when
          * doing request/reply over JMS. By default Camel checks once per
          * second. But if you must react faster when a timeout occurs, then you
@@ -371,6 +656,19 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Configures how often Camel should check for timed out Exchanges when
+         * doing request/reply over JMS. By default Camel checks once per
+         * second. But if you must react faster when a timeout occurs, then you
+         * can lower this interval, to check more frequently. The timeout is
+         * determined by the option requestTimeout. The option will be converted
+         * to a long type.
+         */
+        public T requestTimeoutCheckerInterval(
+                String requestTimeoutCheckerInterval) {
+            this.properties.put("requestTimeoutCheckerInterval", requestTimeoutCheckerInterval);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -380,6 +678,15 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
+        /**
          * If enabled and you are using Request Reply messaging (InOut) and an
          * Exchange failed on the consumer side, then the caused Exception will
          * be send back in response as a javax.jms.ObjectMessage. If the client
@@ -397,6 +704,23 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * If enabled and you are using Request Reply messaging (InOut) and an
+         * Exchange failed on the consumer side, then the caused Exception will
+         * be send back in response as a javax.jms.ObjectMessage. If the client
+         * is Camel, the returned Exception is rethrown. This allows you to use
+         * Camel JMS as a bridge in your routing - for example, using persistent
+         * queues to enable robust routing. Notice that if you also have
+         * transferExchange enabled, this option takes precedence. The caught
+         * exception is required to be serializable. The original Exception on
+         * the consumer side can be wrapped in an outer exception such as
+         * org.apache.camel.RuntimeCamelException when returned to the producer.
+         * The option will be converted to a boolean type.
+         */
+        public T transferException(String transferException) {
+            this.properties.put("transferException", transferException);
+            return (T) this;
+        }
+        /**
          * You can transfer the exchange over the wire instead of just the body
          * and headers. The following fields are transferred: In body, Out body,
          * Fault body, In headers, Out headers, Fault headers, exchange
@@ -411,6 +735,20 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * You can transfer the exchange over the wire instead of just the body
+         * and headers. The following fields are transferred: In body, Out body,
+         * Fault body, In headers, Out headers, Fault headers, exchange
+         * properties, exchange exception. This requires that the objects are
+         * serializable. Camel will exclude any non-serializable objects and log
+         * it at WARN level. You must enable this option on both the producer
+         * and consumer side, so Camel knows the payloads is an Exchange and not
+         * a regular payload. The option will be converted to a boolean type.
+         */
+        public T transferExchange(String transferExchange) {
+            this.properties.put("transferExchange", transferExchange);
+            return (T) this;
+        }
+        /**
          * If enabled and you are using Request Reply messaging (InOut) and an
          * Exchange failed with a SOAP fault (not exception) on the consumer
          * side, then the fault flag on org.apache.camel.Message#isFault() will
@@ -426,6 +764,22 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * If enabled and you are using Request Reply messaging (InOut) and an
+         * Exchange failed with a SOAP fault (not exception) on the consumer
+         * side, then the fault flag on org.apache.camel.Message#isFault() will
+         * be send back in the response as a JMS header with the key
+         * JmsConstants#JMS_TRANSFER_FAULT. If the client is Camel, the returned
+         * fault flag will be set on the
+         * org.apache.camel.Message#setFault(boolean). You may want to enable
+         * this when using Camel components that support faults such as SOAP
+         * based such as cxf or spring-ws. The option will be converted to a
+         * boolean type.
+         */
+        public T transferFault(String transferFault) {
+            this.properties.put("transferFault", transferFault);
+            return (T) this;
+        }
+        /**
          * Specifies whether JMSMessageID should always be used as
          * JMSCorrelationID for InOut messages. The option is a boolean type.
          */
@@ -434,6 +788,15 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies whether JMSMessageID should always be used as
+         * JMSCorrelationID for InOut messages. The option will be converted to
+         * a boolean type.
+         */
+        public T useMessageIDAsCorrelationID(String useMessageIDAsCorrelationID) {
+            this.properties.put("useMessageIDAsCorrelationID", useMessageIDAsCorrelationID);
+            return (T) this;
+        }
+        /**
          * Number of times to wait for provisional correlation id to be updated
          * to the actual correlation id when doing request/reply over JMS and
          * when the option useMessageIDAsCorrelationID is enabled. The option is
@@ -445,6 +808,17 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Number of times to wait for provisional correlation id to be updated
+         * to the actual correlation id when doing request/reply over JMS and
+         * when the option useMessageIDAsCorrelationID is enabled. The option
+         * will be converted to a int type.
+         */
+        public T waitForProvisionCorrelationToBeUpdatedCounter(
+                String waitForProvisionCorrelationToBeUpdatedCounter) {
+            this.properties.put("waitForProvisionCorrelationToBeUpdatedCounter", waitForProvisionCorrelationToBeUpdatedCounter);
+            return (T) this;
+        }
+        /**
          * Interval in millis to sleep each time while waiting for provisional
          * correlation id to be updated. The option is a long type.
          */
@@ -454,6 +828,16 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Interval in millis to sleep each time while waiting for provisional
+         * correlation id to be updated. The option will be converted to a long
+         * type.
+         */
+        public T waitForProvisionCorrelationToBeUpdatedThreadSleepingTime(
+                String waitForProvisionCorrelationToBeUpdatedThreadSleepingTime) {
+            this.properties.put("waitForProvisionCorrelationToBeUpdatedThreadSleepingTime", waitForProvisionCorrelationToBeUpdatedThreadSleepingTime);
+            return (T) this;
+        }
+        /**
          * Password to use with the ConnectionFactory. You can also configure
          * username/password directly on the ConnectionFactory. The option is a
          * java.lang.String type.
@@ -480,6 +864,14 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies whether to use transacted mode. The option will be
+         * converted to a boolean type.
+         */
+        public T transacted(String transacted) {
+            this.properties.put("transacted", transacted);
+            return (T) this;
+        }
+        /**
          * If true, Camel will create a JmsTransactionManager, if there is no
          * transactionManager injected when option transacted=true. The option
          * is a boolean type.
@@ -490,6 +882,16 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * If true, Camel will create a JmsTransactionManager, if there is no
+         * transactionManager injected when option transacted=true. The option
+         * will be converted to a boolean type.
+         */
+        public T lazyCreateTransactionManager(
+                String lazyCreateTransactionManager) {
+            this.properties.put("lazyCreateTransactionManager", lazyCreateTransactionManager);
+            return (T) this;
+        }
+        /**
          * The Spring transaction manager to use. The option is a
          * org.springframework.transaction.PlatformTransactionManager type.
          */
@@ -498,6 +900,14 @@ public interface AMQPEndpointBuilder {
             return (T) this;
         }
         /**
+         * The Spring transaction manager to use. The option will be converted
+         * to a org.springframework.transaction.PlatformTransactionManager type.
+         */
+        public T transactionManager(String transactionManager) {
+            this.properties.put("transactionManager", transactionManager);
+            return (T) this;
+        }
+        /**
          * The name of the transaction to use. The option is a java.lang.String
          * type.
          */
@@ -513,6 +923,14 @@ public interface AMQPEndpointBuilder {
             this.properties.put("transactionTimeout", transactionTimeout);
             return (T) this;
         }
+        /**
+         * The timeout value of the transaction (in seconds), if using
+         * transacted mode. The option will be converted to a int type.
+         */
+        public T transactionTimeout(String transactionTimeout) {
+            this.properties.put("transactionTimeout", transactionTimeout);
+            return (T) this;
+        }
     }
 
     public static class AMQPConsumerBuilder
@@ -550,6 +968,22 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Whether the JmsConsumer processes the Exchange asynchronously. If
+         * enabled then the JmsConsumer may pickup the next message from the JMS
+         * queue, while the previous message is being processed asynchronously
+         * (by the Asynchronous Routing Engine). This means that messages may be
+         * processed not 100% strictly in order. If disabled (as default) then
+         * the Exchange is fully processed before the JmsConsumer will pickup
+         * the next message from the JMS queue. Note if transacted has been
+         * enabled, then asyncConsumer=true does not run asynchronously, as
+         * transaction must be executed synchronously (Camel 3.0 may support
+         * async transactions). The option will be converted to a boolean type.
+         */
+        public AMQPConsumerBuilder asyncConsumer(String asyncConsumer) {
+            this.properties.put("asyncConsumer", asyncConsumer);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Specifies whether the consumer container should auto-startup. The
          * option is a boolean type.
          */
@@ -558,6 +992,14 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Specifies whether the consumer container should auto-startup. The
+         * option will be converted to a boolean type.
+         */
+        public AMQPConsumerBuilder autoStartup(String autoStartup) {
+            this.properties.put("autoStartup", autoStartup);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Allows for bridging the consumer to the Camel routing Error Handler,
          * which mean any exceptions occurred while the consumer is trying to
          * pickup incoming messages, or the likes, will now be processed as a
@@ -571,6 +1013,19 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public AMQPConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Sets the cache level by ID for the underlying JMS resources. See
          * cacheLevelName option for more details. The option is a int type.
          */
@@ -579,6 +1034,15 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Sets the cache level by ID for the underlying JMS resources. See
+         * cacheLevelName option for more details. The option will be converted
+         * to a int type.
+         */
+        public AMQPConsumerBuilder cacheLevel(String cacheLevel) {
+            this.properties.put("cacheLevel", cacheLevel);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Sets the cache level by name for the underlying JMS resources.
          * Possible values are: CACHE_AUTO, CACHE_CONNECTION, CACHE_CONSUMER,
          * CACHE_NONE, and CACHE_SESSION. The default setting is CACHE_AUTO. See
@@ -602,6 +1066,20 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Specifies the default number of concurrent consumers when consuming
+         * from JMS (not for request/reply over JMS). See also the
+         * maxMessagesPerTask option to control dynamic scaling up/down of
+         * threads. When doing request/reply over JMS then the option
+         * replyToConcurrentConsumers is used to control number of concurrent
+         * consumers on the reply message listener. The option will be converted
+         * to a int type.
+         */
+        public AMQPConsumerBuilder concurrentConsumers(
+                String concurrentConsumers) {
+            this.properties.put("concurrentConsumers", concurrentConsumers);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Specifies the maximum number of concurrent consumers when consuming
          * from JMS (not for request/reply over JMS). See also the
          * maxMessagesPerTask option to control dynamic scaling up/down of
@@ -615,6 +1093,20 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Specifies the maximum number of concurrent consumers when consuming
+         * from JMS (not for request/reply over JMS). See also the
+         * maxMessagesPerTask option to control dynamic scaling up/down of
+         * threads. When doing request/reply over JMS then the option
+         * replyToMaxConcurrentConsumers is used to control number of concurrent
+         * consumers on the reply message listener. The option will be converted
+         * to a int type.
+         */
+        public AMQPConsumerBuilder maxConcurrentConsumers(
+                String maxConcurrentConsumers) {
+            this.properties.put("maxConcurrentConsumers", maxConcurrentConsumers);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Provides an explicit ReplyTo destination, which overrides any
          * incoming value of Message.getJMSReplyTo(). The option is a
          * java.lang.String type.
@@ -633,6 +1125,15 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Specifies whether to use persistent delivery by default for replies.
+         * The option will be converted to a boolean type.
+         */
+        public AMQPConsumerBuilder replyToDeliveryPersistent(
+                String replyToDeliveryPersistent) {
+            this.properties.put("replyToDeliveryPersistent", replyToDeliveryPersistent);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Sets the JMS selector to use. The option is a java.lang.String type.
          */
         public AMQPConsumerBuilder selector(String selector) {
@@ -655,6 +1156,22 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Set whether to make the subscription durable. The durable
+         * subscription name to be used can be specified through the
+         * subscriptionName property. Default is false. Set this to true to
+         * register a durable subscription, typically in combination with a
+         * subscriptionName value (unless your message listener class name is
+         * good enough as subscription name). Only makes sense when listening to
+         * a topic (pub-sub domain), therefore this method switches the
+         * pubSubDomain flag as well. The option will be converted to a boolean
+         * type.
+         */
+        public AMQPConsumerBuilder subscriptionDurable(
+                String subscriptionDurable) {
+            this.properties.put("subscriptionDurable", subscriptionDurable);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Set the name of a subscription to create. To be applied in case of a
          * topic (pub-sub domain) with a shared or durable subscription. The
          * subscription name needs to be unique within this client's JMS client
@@ -686,6 +1203,23 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Set whether to make the subscription shared. The shared subscription
+         * name to be used can be specified through the subscriptionName
+         * property. Default is false. Set this to true to register a shared
+         * subscription, typically in combination with a subscriptionName value
+         * (unless your message listener class name is good enough as
+         * subscription name). Note that shared subscriptions may also be
+         * durable, so this flag can (and often will) be combined with
+         * subscriptionDurable as well. Only makes sense when listening to a
+         * topic (pub-sub domain), therefore this method switches the
+         * pubSubDomain flag as well. Requires a JMS 2.0 compatible message
+         * broker. The option will be converted to a boolean type.
+         */
+        public AMQPConsumerBuilder subscriptionShared(String subscriptionShared) {
+            this.properties.put("subscriptionShared", subscriptionShared);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Specifies whether the consumer accept messages while it is stopping.
          * You may consider enabling this option, if you start and stop JMS
          * routes at runtime, while there are still messages enqueued on the
@@ -702,6 +1236,22 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Specifies whether the consumer accept messages while it is stopping.
+         * You may consider enabling this option, if you start and stop JMS
+         * routes at runtime, while there are still messages enqueued on the
+         * queue. If this option is false, and you stop the JMS route, then
+         * messages may be rejected, and the JMS broker would have to attempt
+         * redeliveries, which yet again may be rejected, and eventually the
+         * message may be moved at a dead letter queue on the JMS broker. To
+         * avoid this its recommended to enable this option. The option will be
+         * converted to a boolean type.
+         */
+        public AMQPConsumerBuilder acceptMessagesWhileStopping(
+                String acceptMessagesWhileStopping) {
+            this.properties.put("acceptMessagesWhileStopping", acceptMessagesWhileStopping);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Whether the DefaultMessageListenerContainer used in the reply
          * managers for request-reply messaging allow the
          * DefaultMessageListenerContainer#runningAllowed() flag to quick stop
@@ -711,9 +1261,41 @@ public interface AMQPEndpointBuilder {
          * but to enable for reply managers you must enable this flag. The
          * option is a boolean type.
          */
-        public AMQPConsumerBuilder allowReplyManagerQuickStop(
-                boolean allowReplyManagerQuickStop) {
-            this.properties.put("allowReplyManagerQuickStop", allowReplyManagerQuickStop);
+        public AMQPConsumerBuilder allowReplyManagerQuickStop(
+                boolean allowReplyManagerQuickStop) {
+            this.properties.put("allowReplyManagerQuickStop", allowReplyManagerQuickStop);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
+         * Whether the DefaultMessageListenerContainer used in the reply
+         * managers for request-reply messaging allow the
+         * DefaultMessageListenerContainer#runningAllowed() flag to quick stop
+         * in case JmsConfiguration#isAcceptMessagesWhileStopping() is enabled,
+         * and org.apache.camel.CamelContext is currently being stopped. This
+         * quick stop ability is enabled by default in the regular JMS consumers
+         * but to enable for reply managers you must enable this flag. The
+         * option will be converted to a boolean type.
+         */
+        public AMQPConsumerBuilder allowReplyManagerQuickStop(
+                String allowReplyManagerQuickStop) {
+            this.properties.put("allowReplyManagerQuickStop", allowReplyManagerQuickStop);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
+         * The consumer type to use, which can be one of: Simple, Default, or
+         * Custom. The consumer type determines which Spring JMS listener to
+         * use. Default will use
+         * org.springframework.jms.listener.DefaultMessageListenerContainer,
+         * Simple will use
+         * org.springframework.jms.listener.SimpleMessageListenerContainer. When
+         * Custom is specified, the MessageListenerContainerFactory defined by
+         * the messageListenerContainerFactory option will determine what
+         * org.springframework.jms.listener.AbstractMessageListenerContainer to
+         * use. The option is a org.apache.camel.component.jms.ConsumerType
+         * type.
+         */
+        public AMQPConsumerBuilder consumerType(ConsumerType consumerType) {
+            this.properties.put("consumerType", consumerType);
             return (AMQPConsumerBuilder) this;
         }
         /**
@@ -726,10 +1308,10 @@ public interface AMQPEndpointBuilder {
          * Custom is specified, the MessageListenerContainerFactory defined by
          * the messageListenerContainerFactory option will determine what
          * org.springframework.jms.listener.AbstractMessageListenerContainer to
-         * use. The option is a org.apache.camel.component.jms.ConsumerType
-         * type.
+         * use. The option will be converted to a
+         * org.apache.camel.component.jms.ConsumerType type.
          */
-        public AMQPConsumerBuilder consumerType(ConsumerType consumerType) {
+        public AMQPConsumerBuilder consumerType(String consumerType) {
             this.properties.put("consumerType", consumerType);
             return (AMQPConsumerBuilder) this;
         }
@@ -752,6 +1334,24 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Specifies what default TaskExecutor type to use in the
+         * DefaultMessageListenerContainer, for both consumer endpoints and the
+         * ReplyTo consumer of producer endpoints. Possible values: SimpleAsync
+         * (uses Spring's SimpleAsyncTaskExecutor) or ThreadPool (uses Spring's
+         * ThreadPoolTaskExecutor with optimal values - cached threadpool-like).
+         * If not set, it defaults to the previous behaviour, which uses a
+         * cached thread pool for consumer endpoints and SimpleAsync for reply
+         * consumers. The use of ThreadPool is recommended to reduce thread
+         * trash in elastic configurations with dynamically increasing and
+         * decreasing concurrent consumers. The option will be converted to a
+         * org.apache.camel.component.jms.DefaultTaskExecutorType type.
+         */
+        public AMQPConsumerBuilder defaultTaskExecutorType(
+                String defaultTaskExecutorType) {
+            this.properties.put("defaultTaskExecutorType", defaultTaskExecutorType);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Enables eager loading of JMS properties and payload as soon as a
          * message is loaded which generally is inefficient as the JMS
          * properties may not be required but sometimes can catch early any
@@ -764,6 +1364,18 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Enables eager loading of JMS properties and payload as soon as a
+         * message is loaded which generally is inefficient as the JMS
+         * properties may not be required but sometimes can catch early any
+         * issues with the underlying JMS provider and the use of JMS
+         * properties. The option will be converted to a boolean type.
+         */
+        public AMQPConsumerBuilder eagerLoadingOfProperties(
+                String eagerLoadingOfProperties) {
+            this.properties.put("eagerLoadingOfProperties", eagerLoadingOfProperties);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -776,6 +1388,17 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public AMQPConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -785,6 +1408,14 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public AMQPConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Specifies whether the listener session should be exposed when
          * consuming messages. The option is a boolean type.
          */
@@ -794,6 +1425,15 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Specifies whether the listener session should be exposed when
+         * consuming messages. The option will be converted to a boolean type.
+         */
+        public AMQPConsumerBuilder exposeListenerSession(
+                String exposeListenerSession) {
+            this.properties.put("exposeListenerSession", exposeListenerSession);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Whether a JMS consumer is allowed to send a reply message to the same
          * destination that the consumer is using to consume from. This prevents
          * an endless loop by consuming and sending back the same message to
@@ -805,6 +1445,17 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Whether a JMS consumer is allowed to send a reply message to the same
+         * destination that the consumer is using to consume from. This prevents
+         * an endless loop by consuming and sending back the same message to
+         * itself. The option will be converted to a boolean type.
+         */
+        public AMQPConsumerBuilder replyToSameDestinationAllowed(
+                String replyToSameDestinationAllowed) {
+            this.properties.put("replyToSameDestinationAllowed", replyToSameDestinationAllowed);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Allows you to specify a custom task executor for consuming messages.
          * The option is a org.springframework.core.task.TaskExecutor type.
          */
@@ -813,6 +1464,15 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Allows you to specify a custom task executor for consuming messages.
+         * The option will be converted to a
+         * org.springframework.core.task.TaskExecutor type.
+         */
+        public AMQPConsumerBuilder taskExecutor(String taskExecutor) {
+            this.properties.put("taskExecutor", taskExecutor);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Allows to configure the default errorHandler logging level for
          * logging uncaught exceptions. The option is a
          * org.apache.camel.LoggingLevel type.
@@ -823,6 +1483,16 @@ public interface AMQPEndpointBuilder {
             return (AMQPConsumerBuilder) this;
         }
         /**
+         * Allows to configure the default errorHandler logging level for
+         * logging uncaught exceptions. The option will be converted to a
+         * org.apache.camel.LoggingLevel type.
+         */
+        public AMQPConsumerBuilder errorHandlerLoggingLevel(
+                String errorHandlerLoggingLevel) {
+            this.properties.put("errorHandlerLoggingLevel", errorHandlerLoggingLevel);
+            return (AMQPConsumerBuilder) this;
+        }
+        /**
          * Allows to control whether stacktraces should be logged or not, by the
          * default errorHandler. The option is a boolean type.
          */
@@ -831,6 +1501,15 @@ public interface AMQPEndpointBuilder {
             this.properties.put("errorHandlerLogStackTrace", errorHandlerLogStackTrace);
             return (AMQPConsumerBuilder) this;
         }
+        /**
+         * Allows to control whether stacktraces should be logged or not, by the
+         * default errorHandler. The option will be converted to a boolean type.
+         */
+        public AMQPConsumerBuilder errorHandlerLogStackTrace(
+                String errorHandlerLogStackTrace) {
+            this.properties.put("errorHandlerLogStackTrace", errorHandlerLogStackTrace);
+            return (AMQPConsumerBuilder) this;
+        }
     }
 
     public static class AMQPProducerBuilder
@@ -851,6 +1530,15 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * Specifies the delivery mode to be used. Possibles values are those
+         * defined by javax.jms.DeliveryMode. NON_PERSISTENT = 1 and PERSISTENT
+         * = 2. The option will be converted to a java.lang.Integer type.
+         */
+        public AMQPProducerBuilder deliveryMode(String deliveryMode) {
+            this.properties.put("deliveryMode", deliveryMode);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * Specifies whether persistent delivery is used by default. The option
          * is a boolean type.
          */
@@ -859,6 +1547,14 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * Specifies whether persistent delivery is used by default. The option
+         * will be converted to a boolean type.
+         */
+        public AMQPProducerBuilder deliveryPersistent(String deliveryPersistent) {
+            this.properties.put("deliveryPersistent", deliveryPersistent);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * Set if the deliveryMode, priority or timeToLive qualities of service
          * should be used when sending messages. This option is based on
          * Spring's JmsTemplate. The deliveryMode, priority and timeToLive
@@ -872,6 +1568,19 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * Set if the deliveryMode, priority or timeToLive qualities of service
+         * should be used when sending messages. This option is based on
+         * Spring's JmsTemplate. The deliveryMode, priority and timeToLive
+         * options are applied to the current endpoint. This contrasts with the
+         * preserveMessageQos option, which operates at message granularity,
+         * reading QoS properties exclusively from the Camel In message headers.
+         * The option will be converted to a java.lang.Boolean type.
+         */
+        public AMQPProducerBuilder explicitQosEnabled(String explicitQosEnabled) {
+            this.properties.put("explicitQosEnabled", explicitQosEnabled);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * Sets whether date headers should be formatted according to the ISO
          * 8601 standard. The option is a boolean type.
          */
@@ -881,6 +1590,15 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * Sets whether date headers should be formatted according to the ISO
+         * 8601 standard. The option will be converted to a boolean type.
+         */
+        public AMQPProducerBuilder formatDateHeadersToIso8601(
+                String formatDateHeadersToIso8601) {
+            this.properties.put("formatDateHeadersToIso8601", formatDateHeadersToIso8601);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * Set to true, if you want to send message using the QoS settings
          * specified on the message, instead of the QoS settings on the JMS
          * endpoint. The following three headers are considered JMSPriority,
@@ -896,6 +1614,22 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * Set to true, if you want to send message using the QoS settings
+         * specified on the message, instead of the QoS settings on the JMS
+         * endpoint. The following three headers are considered JMSPriority,
+         * JMSDeliveryMode, and JMSExpiration. You can provide all or only some
+         * of them. If not provided, Camel will fall back to use the values from
+         * the endpoint instead. So, when using this option, the headers
+         * override the values from the endpoint. The explicitQosEnabled option,
+         * by contrast, will only use options set on the endpoint, and not
+         * values from the message header. The option will be converted to a
+         * boolean type.
+         */
+        public AMQPProducerBuilder preserveMessageQos(String preserveMessageQos) {
+            this.properties.put("preserveMessageQos", preserveMessageQos);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * Values greater than 1 specify the message priority when sending
          * (where 0 is the lowest priority and 9 is the highest). The
          * explicitQosEnabled option must also be enabled in order for this
@@ -906,6 +1640,17 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * Values greater than 1 specify the message priority when sending
+         * (where 0 is the lowest priority and 9 is the highest). The
+         * explicitQosEnabled option must also be enabled in order for this
+         * option to have any effect. The option will be converted to a int
+         * type.
+         */
+        public AMQPProducerBuilder priority(String priority) {
+            this.properties.put("priority", priority);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * Specifies the default number of concurrent consumers when doing
          * request/reply over JMS. See also the maxMessagesPerTask option to
          * control dynamic scaling up/down of threads. The option is a int type.
@@ -916,6 +1661,17 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * Specifies the default number of concurrent consumers when doing
+         * request/reply over JMS. See also the maxMessagesPerTask option to
+         * control dynamic scaling up/down of threads. The option will be
+         * converted to a int type.
+         */
+        public AMQPProducerBuilder replyToConcurrentConsumers(
+                String replyToConcurrentConsumers) {
+            this.properties.put("replyToConcurrentConsumers", replyToConcurrentConsumers);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * Specifies the maximum number of concurrent consumers when using
          * request/reply over JMS. See also the maxMessagesPerTask option to
          * control dynamic scaling up/down of threads. The option is a int type.
@@ -926,6 +1682,17 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * Specifies the maximum number of concurrent consumers when using
+         * request/reply over JMS. See also the maxMessagesPerTask option to
+         * control dynamic scaling up/down of threads. The option will be
+         * converted to a int type.
+         */
+        public AMQPProducerBuilder replyToMaxConcurrentConsumers(
+                String replyToMaxConcurrentConsumers) {
+            this.properties.put("replyToMaxConcurrentConsumers", replyToMaxConcurrentConsumers);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * Specifies the maximum number of concurrent consumers for continue
          * routing when timeout occurred when using request/reply over JMS. The
          * option is a int type.
@@ -936,6 +1703,16 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * Specifies the maximum number of concurrent consumers for continue
+         * routing when timeout occurred when using request/reply over JMS. The
+         * option will be converted to a int type.
+         */
+        public AMQPProducerBuilder replyToOnTimeoutMaxConcurrentConsumers(
+                String replyToOnTimeoutMaxConcurrentConsumers) {
+            this.properties.put("replyToOnTimeoutMaxConcurrentConsumers", replyToOnTimeoutMaxConcurrentConsumers);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * Provides an explicit ReplyTo destination in the JMS message, which
          * overrides the setting of replyTo. It is useful if you want to forward
          * the message to a remote Queue and receive the reply message from the
@@ -962,6 +1739,23 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * Allows for explicitly specifying which kind of strategy to use for
+         * replyTo queues when doing request/reply over JMS. Possible values
+         * are: Temporary, Shared, or Exclusive. By default Camel will use
+         * temporary queues. However if replyTo has been configured, then Shared
+         * is used by default. This option allows you to use exclusive queues
+         * instead of shared ones. See Camel JMS documentation for more details,
+         * and especially the notes about the implications if running in a
+         * clustered environment, and the fact that Shared reply queues has
+         * lower performance than its alternatives Temporary and Exclusive. The
+         * option will be converted to a
+         * org.apache.camel.component.jms.ReplyToType type.
+         */
+        public AMQPProducerBuilder replyToType(String replyToType) {
+            this.properties.put("replyToType", replyToType);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * The timeout for waiting for a reply when using the InOut Exchange
          * Pattern (in milliseconds). The default is 20 seconds. You can include
          * the header CamelJmsRequestTimeout to override this endpoint
@@ -974,6 +1768,18 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * The timeout for waiting for a reply when using the InOut Exchange
+         * Pattern (in milliseconds). The default is 20 seconds. You can include
+         * the header CamelJmsRequestTimeout to override this endpoint
+         * configured timeout value, and thus have per message individual
+         * timeout values. See also the requestTimeoutCheckerInterval option.
+         * The option will be converted to a long type.
+         */
+        public AMQPProducerBuilder requestTimeout(String requestTimeout) {
+            this.properties.put("requestTimeout", requestTimeout);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * When sending messages, specifies the time-to-live of the message (in
          * milliseconds). The option is a long type.
          */
@@ -982,6 +1788,14 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * When sending messages, specifies the time-to-live of the message (in
+         * milliseconds). The option will be converted to a long type.
+         */
+        public AMQPProducerBuilder timeToLive(String timeToLive) {
+            this.properties.put("timeToLive", timeToLive);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * This option is used to allow additional headers which may have values
          * that are invalid according to JMS specification. For example some
          * message systems such as WMQ do this with header names using prefix
@@ -1005,6 +1819,15 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * Whether to allow sending messages with no body. If this option is
+         * false and the message body is null, then an JMSException is thrown.
+         * The option will be converted to a boolean type.
+         */
+        public AMQPProducerBuilder allowNullBody(String allowNullBody) {
+            this.properties.put("allowNullBody", allowNullBody);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * If true, Camel will always make a JMS message copy of the message
          * when it is passed to the producer for sending. Copying the message is
          * needed in some situations, such as when a
@@ -1017,6 +1840,19 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * If true, Camel will always make a JMS message copy of the message
+         * when it is passed to the producer for sending. Copying the message is
+         * needed in some situations, such as when a
+         * replyToDestinationSelectorName is set (incidentally, Camel will set
+         * the alwaysCopyMessage option to true, if a
+         * replyToDestinationSelectorName is set). The option will be converted
+         * to a boolean type.
+         */
+        public AMQPProducerBuilder alwaysCopyMessage(String alwaysCopyMessage) {
+            this.properties.put("alwaysCopyMessage", alwaysCopyMessage);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * Use this JMS property to correlate messages in InOut exchange pattern
          * (request-reply) instead of JMSCorrelationID property. This allows you
          * to exchange messages with systems that do not correlate messages
@@ -1046,6 +1882,21 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * Use this option to force disabling time to live. For example when you
+         * do request/reply over JMS, then Camel will by default use the
+         * requestTimeout value as time to live on the message being sent. The
+         * problem is that the sender and receiver systems have to have their
+         * clocks synchronized, so they are in sync. This is not always so easy
+         * to archive. So you can use disableTimeToLive=true to not set a time
+         * to live value on the sent message. Then the message will not expire
+         * on the receiver system. See below in section About time to live for
+         * more details. The option will be converted to a boolean type.
+         */
+        public AMQPProducerBuilder disableTimeToLive(String disableTimeToLive) {
+            this.properties.put("disableTimeToLive", disableTimeToLive);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * When using mapJmsMessage=false Camel will create a new JMS message to
          * send to a new JMS destination if you touch the headers (get or set)
          * during the route. Set this option to true to force Camel to send the
@@ -1057,6 +1908,18 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * When using mapJmsMessage=false Camel will create a new JMS message to
+         * send to a new JMS destination if you touch the headers (get or set)
+         * during the route. Set this option to true to force Camel to send the
+         * original JMS message that was received. The option will be converted
+         * to a boolean type.
+         */
+        public AMQPProducerBuilder forceSendOriginalMessage(
+                String forceSendOriginalMessage) {
+            this.properties.put("forceSendOriginalMessage", forceSendOriginalMessage);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * Only applicable when sending to JMS destination using InOnly (eg fire
          * and forget). Enabling this option will enrich the Camel Exchange with
          * the actual JMSMessageID that was used by the JMS client when the
@@ -1069,6 +1932,18 @@ public interface AMQPEndpointBuilder {
             return (AMQPProducerBuilder) this;
         }
         /**
+         * Only applicable when sending to JMS destination using InOnly (eg fire
+         * and forget). Enabling this option will enrich the Camel Exchange with
+         * the actual JMSMessageID that was used by the JMS client when the
+         * message was sent to the JMS destination. The option will be converted
+         * to a boolean type.
+         */
+        public AMQPProducerBuilder includeSentJMSMessageID(
+                String includeSentJMSMessageID) {
+            this.properties.put("includeSentJMSMessageID", includeSentJMSMessageID);
+            return (AMQPProducerBuilder) this;
+        }
+        /**
          * Sets the cache level by name for the reply consumer when doing
          * request/reply over JMS. This option only applies when using fixed
          * reply queues (not temporary). Camel will by default use:
@@ -1111,6 +1986,21 @@ public interface AMQPEndpointBuilder {
             this.properties.put("streamMessageTypeEnabled", streamMessageTypeEnabled);
             return (AMQPProducerBuilder) this;
         }
+        /**
+         * Sets whether StreamMessage type is enabled or not. Message payloads
+         * of streaming kind such as files, InputStream, etc will either by sent
+         * as BytesMessage or StreamMessage. This option controls which kind
+         * will be used. By default BytesMessage is used which enforces the
+         * entire message payload to be read into memory. By enabling this
+         * option the message payload is read into memory in chunks and each
+         * chunk is then written to the StreamMessage until no more data. The
+         * option will be converted to a boolean type.
+         */
+        public AMQPProducerBuilder streamMessageTypeEnabled(
+                String streamMessageTypeEnabled) {
+            this.properties.put("streamMessageTypeEnabled", streamMessageTypeEnabled);
+            return (AMQPProducerBuilder) this;
+        }
     }
 
     public static enum JmsMessageType {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AS2EndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AS2EndpointBuilder.java
index ac276f5..0e2e3c1 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AS2EndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AS2EndpointBuilder.java
@@ -50,6 +50,14 @@ public interface AS2EndpointBuilder {
             return (T) this;
         }
         /**
+         * What kind of operation to perform. The option will be converted to a
+         * org.apache.camel.component.as2.internal.AS2ApiName type.
+         */
+        public T apiName(String apiName) {
+            this.properties.put("apiName", apiName);
+            return (T) this;
+        }
+        /**
          * What sub operation to use for the selected operation. The option is a
          * java.lang.String type.
          */
@@ -76,6 +84,17 @@ public interface AS2EndpointBuilder {
             return (T) this;
         }
         /**
+         * The structure of AS2 Message. One of: PLAIN - No encryption, no
+         * signature, SIGNED - No encryption, signature, ENCRYPTED - Encryption,
+         * no signature, ENCRYPTED_SIGNED - Encryption, signature. The option
+         * will be converted to a
+         * org.apache.camel.component.as2.api.AS2MessageStructure type.
+         */
+        public T as2MessageStructure(String as2MessageStructure) {
+            this.properties.put("as2MessageStructure", as2MessageStructure);
+            return (T) this;
+        }
+        /**
          * The value of the AS2To header of AS2 message. The option is a
          * java.lang.String type.
          */
@@ -109,6 +128,15 @@ public interface AS2EndpointBuilder {
             return (T) this;
         }
         /**
+         * The algorithm used to compress EDI message. The option will be
+         * converted to a
+         * org.apache.camel.component.as2.api.AS2CompressionAlgorithm type.
+         */
+        public T compressionAlgorithm(String compressionAlgorithm) {
+            this.properties.put("compressionAlgorithm", compressionAlgorithm);
+            return (T) this;
+        }
+        /**
          * The key used to encrypt the EDI message. The option is a
          * java.security.PrivateKey type.
          */
@@ -117,6 +145,14 @@ public interface AS2EndpointBuilder {
             return (T) this;
         }
         /**
+         * The key used to encrypt the EDI message. The option will be converted
+         * to a java.security.PrivateKey type.
+         */
+        public T decryptingPrivateKey(String decryptingPrivateKey) {
+            this.properties.put("decryptingPrivateKey", decryptingPrivateKey);
+            return (T) this;
+        }
+        /**
          * The value of the Disposition-Notification-To header. Assigning a
          * value to this parameter requests a message disposition notification
          * (MDN) for the AS2 message. The option is a java.lang.String type.
@@ -143,6 +179,15 @@ public interface AS2EndpointBuilder {
             return (T) this;
         }
         /**
+         * The content type of EDI message. One of application/edifact,
+         * application/edi-x12, application/edi-consent. The option will be
+         * converted to a org.apache.http.entity.ContentType type.
+         */
+        public T ediMessageType(String ediMessageType) {
+            this.properties.put("ediMessageType", ediMessageType);
+            return (T) this;
+        }
+        /**
          * The algorithm used to encrypt EDI message. The option is a
          * org.apache.camel.component.as2.api.AS2EncryptionAlgorithm type.
          */
@@ -151,6 +196,15 @@ public interface AS2EndpointBuilder {
             return (T) this;
         }
         /**
+         * The algorithm used to encrypt EDI message. The option will be
+         * converted to a
+         * org.apache.camel.component.as2.api.AS2EncryptionAlgorithm type.
+         */
+        public T encryptingAlgorithm(String encryptingAlgorithm) {
+            this.properties.put("encryptingAlgorithm", encryptingAlgorithm);
+            return (T) this;
+        }
+        /**
          * The chain of certificates used to encrypt EDI message. The option is
          * a java.security.cert.Certificate[] type.
          */
@@ -160,6 +214,14 @@ public interface AS2EndpointBuilder {
             return (T) this;
         }
         /**
+         * The chain of certificates used to encrypt EDI message. The option
+         * will be converted to a java.security.cert.Certificate[] type.
+         */
+        public T encryptingCertificateChain(String encryptingCertificateChain) {
+            this.properties.put("encryptingCertificateChain", encryptingCertificateChain);
+            return (T) this;
+        }
+        /**
          * The value of the From header of AS2 message. The option is a
          * java.lang.String type.
          */
@@ -215,6 +277,14 @@ public interface AS2EndpointBuilder {
             return (T) this;
         }
         /**
+         * The port number of server. The option will be converted to a
+         * java.lang.Integer type.
+         */
+        public T serverPortNumber(String serverPortNumber) {
+            this.properties.put("serverPortNumber", serverPortNumber);
+            return (T) this;
+        }
+        /**
          * The list of algorithms, in order of preference, requested to generate
          * a message integrity check (MIC) returned in message dispostion
          * notification (MDN). The option is a java.lang.String[] type.
@@ -224,6 +294,16 @@ public interface AS2EndpointBuilder {
             return (T) this;
         }
         /**
+         * The list of algorithms, in order of preference, requested to generate
+         * a message integrity check (MIC) returned in message dispostion
+         * notification (MDN). The option will be converted to a
+         * java.lang.String[] type.
+         */
+        public T signedReceiptMicAlgorithms(String signedReceiptMicAlgorithms) {
+            this.properties.put("signedReceiptMicAlgorithms", signedReceiptMicAlgorithms);
+            return (T) this;
+        }
+        /**
          * The algorithm used to sign EDI message. The option is a
          * org.apache.camel.component.as2.api.AS2SignatureAlgorithm type.
          */
@@ -232,6 +312,14 @@ public interface AS2EndpointBuilder {
             return (T) this;
         }
         /**
+         * The algorithm used to sign EDI message. The option will be converted
+         * to a org.apache.camel.component.as2.api.AS2SignatureAlgorithm type.
+         */
+        public T signingAlgorithm(String signingAlgorithm) {
+            this.properties.put("signingAlgorithm", signingAlgorithm);
+            return (T) this;
+        }
+        /**
          * The chain of certificates used to sign EDI message. The option is a
          * java.security.cert.Certificate[] type.
          */
@@ -240,6 +328,14 @@ public interface AS2EndpointBuilder {
             return (T) this;
         }
         /**
+         * The chain of certificates used to sign EDI message. The option will
+         * be converted to a java.security.cert.Certificate[] type.
+         */
+        public T signingCertificateChain(String signingCertificateChain) {
+            this.properties.put("signingCertificateChain", signingCertificateChain);
+            return (T) this;
+        }
+        /**
          * The key used to sign the EDI message. The option is a
          * java.security.PrivateKey type.
          */
@@ -248,6 +344,14 @@ public interface AS2EndpointBuilder {
             return (T) this;
         }
         /**
+         * The key used to sign the EDI message. The option will be converted to
+         * a java.security.PrivateKey type.
+         */
+        public T signingPrivateKey(String signingPrivateKey) {
+            this.properties.put("signingPrivateKey", signingPrivateKey);
+            return (T) this;
+        }
+        /**
          * The value of Subject header of AS2 message. The option is a
          * java.lang.String type.
          */
@@ -272,6 +376,14 @@ public interface AS2EndpointBuilder {
             return (T) this;
         }
         /**
+         * The port number of target host. -1 indicates the scheme default port.
+         * The option will be converted to a java.lang.Integer type.
+         */
+        public T targetPortNumber(String targetPortNumber) {
+            this.properties.put("targetPortNumber", targetPortNumber);
+            return (T) this;
+        }
+        /**
          * The value included in the User-Agent message header identifying the
          * AS2 user agent. The option is a java.lang.String type.
          */
@@ -289,6 +401,15 @@ public interface AS2EndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -297,6 +418,15 @@ public interface AS2EndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class AS2ConsumerBuilder
@@ -321,6 +451,19 @@ public interface AS2EndpointBuilder {
             return (AS2ConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public AS2ConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (AS2ConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -333,6 +476,17 @@ public interface AS2EndpointBuilder {
             return (AS2ConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public AS2ConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (AS2ConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -341,6 +495,14 @@ public interface AS2EndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (AS2ConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public AS2ConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (AS2ConsumerBuilder) this;
+        }
     }
 
     public static class AS2ProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ActiveMQEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ActiveMQEndpointBuilder.java
index ae3d95c..e3a3f5a 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ActiveMQEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ActiveMQEndpointBuilder.java
@@ -80,6 +80,17 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets the default connection factory to be used if a connection
+         * factory is not specified for either
+         * setTemplateConnectionFactory(ConnectionFactory) or
+         * setListenerConnectionFactory(ConnectionFactory). The option will be
+         * converted to a javax.jms.ConnectionFactory type.
+         */
+        public T connectionFactory(String connectionFactory) {
+            this.properties.put("connectionFactory", connectionFactory);
+            return (T) this;
+        }
+        /**
          * Specifies whether Camel ignores the JMSReplyTo header in messages. If
          * true, Camel does not send a reply back to the destination specified
          * in the JMSReplyTo header. You can use this option if you want Camel
@@ -95,6 +106,21 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies whether Camel ignores the JMSReplyTo header in messages. If
+         * true, Camel does not send a reply back to the destination specified
+         * in the JMSReplyTo header. You can use this option if you want Camel
+         * to consume from a route and you do not want Camel to automatically
+         * send back a reply message because another component in your code
+         * handles the reply message. You can also use this option if you want
+         * to use Camel as a proxy between different message brokers and you
+         * want to route message from one system to another. The option will be
+         * converted to a boolean type.
+         */
+        public T disableReplyTo(String disableReplyTo) {
+            this.properties.put("disableReplyTo", disableReplyTo);
+            return (T) this;
+        }
+        /**
          * The durable subscriber name for specifying durable topic
          * subscriptions. The clientId option must be configured as well. The
          * option is a java.lang.String type.
@@ -116,6 +142,18 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Allows you to force the use of a specific javax.jms.Message
+         * implementation for sending JMS messages. Possible values are: Bytes,
+         * Map, Object, Stream, Text. By default, Camel would determine which
+         * JMS message type to use from the In body type. This option allows you
+         * to specify it. The option will be converted to a
+         * org.apache.camel.component.jms.JmsMessageType type.
+         */
+        public T jmsMessageType(String jmsMessageType) {
+            this.properties.put("jmsMessageType", jmsMessageType);
+            return (T) this;
+        }
+        /**
          * Specifies whether to test the connection on startup. This ensures
          * that when Camel starts that all the JMS consumers have a valid
          * connection to the JMS broker. If a connection cannot be granted then
@@ -128,6 +166,18 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies whether to test the connection on startup. This ensures
+         * that when Camel starts that all the JMS consumers have a valid
+         * connection to the JMS broker. If a connection cannot be granted then
+         * Camel throws an exception on startup. This ensures that Camel is not
+         * started with failed connections. The JMS producers is tested as well.
+         * The option will be converted to a boolean type.
+         */
+        public T testConnectionOnStartup(String testConnectionOnStartup) {
+            this.properties.put("testConnectionOnStartup", testConnectionOnStartup);
+            return (T) this;
+        }
+        /**
          * Controls whether or not to include serialized headers. Applies only
          * when isTransferExchange() is true. This requires that the objects are
          * serializable. Camel will exclude any non-serializable objects and log
@@ -138,6 +188,16 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Controls whether or not to include serialized headers. Applies only
+         * when isTransferExchange() is true. This requires that the objects are
+         * serializable. Camel will exclude any non-serializable objects and log
+         * it at WARN level. The option will be converted to a boolean type.
+         */
+        public T allowSerializedHeaders(String allowSerializedHeaders) {
+            this.properties.put("allowSerializedHeaders", allowSerializedHeaders);
+            return (T) this;
+        }
+        /**
          * Whether to startup the JmsConsumer message listener asynchronously,
          * when starting a route. For example if a JmsConsumer cannot get a
          * connection to a remote JMS broker, then it may block while retrying
@@ -155,6 +215,23 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether to startup the JmsConsumer message listener asynchronously,
+         * when starting a route. For example if a JmsConsumer cannot get a
+         * connection to a remote JMS broker, then it may block while retrying
+         * and/or failover. This will cause Camel to block while starting
+         * routes. By setting this option to true, you will let routes startup,
+         * while the JmsConsumer connects to the JMS broker using a dedicated
+         * thread in asynchronous mode. If this option is used, then beware that
+         * if the connection could not be established, then an exception is
+         * logged at WARN level, and the consumer will not be able to receive
+         * messages; You can then restart the route to retry. The option will be
+         * converted to a boolean type.
+         */
+        public T asyncStartListener(String asyncStartListener) {
+            this.properties.put("asyncStartListener", asyncStartListener);
+            return (T) this;
+        }
+        /**
          * Whether to stop the JmsConsumer message listener asynchronously, when
          * stopping a route. The option is a boolean type.
          */
@@ -163,6 +240,14 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether to stop the JmsConsumer message listener asynchronously, when
+         * stopping a route. The option will be converted to a boolean type.
+         */
+        public T asyncStopListener(String asyncStopListener) {
+            this.properties.put("asyncStopListener", asyncStopListener);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -172,6 +257,15 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * A pluggable
          * org.springframework.jms.support.destination.DestinationResolver that
          * allows you to use your own resolver (for example, to lookup the real
@@ -183,6 +277,17 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * A pluggable
+         * org.springframework.jms.support.destination.DestinationResolver that
+         * allows you to use your own resolver (for example, to lookup the real
+         * destination in a JNDI registry). The option will be converted to a
+         * org.springframework.jms.support.destination.DestinationResolver type.
+         */
+        public T destinationResolver(String destinationResolver) {
+            this.properties.put("destinationResolver", destinationResolver);
+            return (T) this;
+        }
+        /**
          * Specifies a org.springframework.util.ErrorHandler to be invoked in
          * case of any uncaught exceptions thrown while processing a Message. By
          * default these exceptions will be logged at the WARN level, if no
@@ -197,6 +302,20 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies a org.springframework.util.ErrorHandler to be invoked in
+         * case of any uncaught exceptions thrown while processing a Message. By
+         * default these exceptions will be logged at the WARN level, if no
+         * errorHandler has been configured. You can configure logging level and
+         * whether stack traces should be logged using errorHandlerLoggingLevel
+         * and errorHandlerLogStackTrace options. This makes it much easier to
+         * configure, than having to code a custom errorHandler. The option will
+         * be converted to a org.springframework.util.ErrorHandler type.
+         */
+        public T errorHandler(String errorHandler) {
+            this.properties.put("errorHandler", errorHandler);
+            return (T) this;
+        }
+        /**
          * Specifies the JMS Exception Listener that is to be notified of any
          * underlying JMS exceptions. The option is a
          * javax.jms.ExceptionListener type.
@@ -206,6 +325,15 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies the JMS Exception Listener that is to be notified of any
+         * underlying JMS exceptions. The option will be converted to a
+         * javax.jms.ExceptionListener type.
+         */
+        public T exceptionListener(String exceptionListener) {
+            this.properties.put("exceptionListener", exceptionListener);
+            return (T) this;
+        }
+        /**
          * To use a custom HeaderFilterStrategy to filter header to and from
          * Camel message. The option is a
          * org.apache.camel.spi.HeaderFilterStrategy type.
@@ -215,6 +343,15 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use a custom HeaderFilterStrategy to filter header to and from
+         * Camel message. The option will be converted to a
+         * org.apache.camel.spi.HeaderFilterStrategy type.
+         */
+        public T headerFilterStrategy(String headerFilterStrategy) {
+            this.properties.put("headerFilterStrategy", headerFilterStrategy);
+            return (T) this;
+        }
+        /**
          * Specify the limit for the number of consumers that are allowed to be
          * idle at any given time. The option is a int type.
          */
@@ -223,6 +360,14 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specify the limit for the number of consumers that are allowed to be
+         * idle at any given time. The option will be converted to a int type.
+         */
+        public T idleConsumerLimit(String idleConsumerLimit) {
+            this.properties.put("idleConsumerLimit", idleConsumerLimit);
+            return (T) this;
+        }
+        /**
          * Specifies the limit for idle executions of a receive task, not having
          * received any message within its execution. If this limit is reached,
          * the task will shut down and leave receiving to other executing tasks
@@ -235,6 +380,18 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies the limit for idle executions of a receive task, not having
+         * received any message within its execution. If this limit is reached,
+         * the task will shut down and leave receiving to other executing tasks
+         * (in the case of dynamic scheduling; see the maxConcurrentConsumers
+         * setting). There is additional doc available from Spring. The option
+         * will be converted to a int type.
+         */
+        public T idleTaskExecutionLimit(String idleTaskExecutionLimit) {
+            this.properties.put("idleTaskExecutionLimit", idleTaskExecutionLimit);
+            return (T) this;
+        }
+        /**
          * Whether to include all JMSXxxx properties when mapping from JMS to
          * Camel Message. Setting this to true will include properties such as
          * JMSXAppID, and JMSXUserID etc. Note: If you are using a custom
@@ -246,6 +403,17 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether to include all JMSXxxx properties when mapping from JMS to
+         * Camel Message. Setting this to true will include properties such as
+         * JMSXAppID, and JMSXUserID etc. Note: If you are using a custom
+         * headerFilterStrategy then this option does not apply. The option will
+         * be converted to a boolean type.
+         */
+        public T includeAllJMSXProperties(String includeAllJMSXProperties) {
+            this.properties.put("includeAllJMSXProperties", includeAllJMSXProperties);
+            return (T) this;
+        }
+        /**
          * Pluggable strategy for encoding and decoding JMS keys so they can be
          * compliant with the JMS specification. Camel provides two
          * implementations out of the box: default and passthrough. The default
@@ -261,6 +429,22 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Pluggable strategy for encoding and decoding JMS keys so they can be
+         * compliant with the JMS specification. Camel provides two
+         * implementations out of the box: default and passthrough. The default
+         * strategy will safely marshal dots and hyphens (. and -). The
+         * passthrough strategy leaves the key as is. Can be used for JMS
+         * brokers which do not care whether JMS header keys contain illegal
+         * characters. You can provide your own implementation of the
+         * org.apache.camel.component.jms.JmsKeyFormatStrategy and refer to it
+         * using the # notation. The option will be converted to a
+         * java.lang.String type.
+         */
+        public T jmsKeyFormatStrategy(String jmsKeyFormatStrategy) {
+            this.properties.put("jmsKeyFormatStrategy", jmsKeyFormatStrategy);
+            return (T) this;
+        }
+        /**
          * Specifies whether Camel should auto map the received JMS message to a
          * suited payload type, such as javax.jms.TextMessage to a String etc.
          * The option is a boolean type.
@@ -270,6 +454,15 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies whether Camel should auto map the received JMS message to a
+         * suited payload type, such as javax.jms.TextMessage to a String etc.
+         * The option will be converted to a boolean type.
+         */
+        public T mapJmsMessage(String mapJmsMessage) {
+            this.properties.put("mapJmsMessage", mapJmsMessage);
+            return (T) this;
+        }
+        /**
          * The number of messages per task. -1 is unlimited. If you use a range
          * for concurrent consumers (eg min max), then this option can be used
          * to set a value to eg 100 to control how fast the consumers will
@@ -280,6 +473,17 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * The number of messages per task. -1 is unlimited. If you use a range
+         * for concurrent consumers (eg min max), then this option can be used
+         * to set a value to eg 100 to control how fast the consumers will
+         * shrink when less work is required. The option will be converted to a
+         * int type.
+         */
+        public T maxMessagesPerTask(String maxMessagesPerTask) {
+            this.properties.put("maxMessagesPerTask", maxMessagesPerTask);
+            return (T) this;
+        }
+        /**
          * To use a custom Spring
          * org.springframework.jms.support.converter.MessageConverter so you can
          * be in control how to map to/from a javax.jms.Message. The option is a
@@ -290,6 +494,17 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use a custom Spring
+         * org.springframework.jms.support.converter.MessageConverter so you can
+         * be in control how to map to/from a javax.jms.Message. The option will
+         * be converted to a
+         * org.springframework.jms.support.converter.MessageConverter type.
+         */
+        public T messageConverter(String messageConverter) {
+            this.properties.put("messageConverter", messageConverter);
+            return (T) this;
+        }
+        /**
          * To use the given MessageCreatedStrategy which are invoked when Camel
          * creates new instances of javax.jms.Message objects when Camel is
          * sending a JMS message. The option is a
@@ -300,6 +515,16 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use the given MessageCreatedStrategy which are invoked when Camel
+         * creates new instances of javax.jms.Message objects when Camel is
+         * sending a JMS message. The option will be converted to a
+         * org.apache.camel.component.jms.MessageCreatedStrategy type.
+         */
+        public T messageCreatedStrategy(String messageCreatedStrategy) {
+            this.properties.put("messageCreatedStrategy", messageCreatedStrategy);
+            return (T) this;
+        }
+        /**
          * When sending, specifies whether message IDs should be added. This is
          * just an hint to the JMS Broker. If the JMS provider accepts this
          * hint, these messages must have the message ID set to null; if the
@@ -311,6 +536,17 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * When sending, specifies whether message IDs should be added. This is
+         * just an hint to the JMS Broker. If the JMS provider accepts this
+         * hint, these messages must have the message ID set to null; if the
+         * provider ignores the hint, the message ID must be set to its normal
+         * unique value. The option will be converted to a boolean type.
+         */
+        public T messageIdEnabled(String messageIdEnabled) {
+            this.properties.put("messageIdEnabled", messageIdEnabled);
+            return (T) this;
+        }
+        /**
          * Registry ID of the MessageListenerContainerFactory used to determine
          * what
          * org.springframework.jms.listener.AbstractMessageListenerContainer to
@@ -324,6 +560,19 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Registry ID of the MessageListenerContainerFactory used to determine
+         * what
+         * org.springframework.jms.listener.AbstractMessageListenerContainer to
+         * use to consume messages. Setting this will automatically set
+         * consumerType to Custom. The option will be converted to a
+         * org.apache.camel.component.jms.MessageListenerContainerFactory type.
+         */
+        public T messageListenerContainerFactory(
+                String messageListenerContainerFactory) {
+            this.properties.put("messageListenerContainerFactory", messageListenerContainerFactory);
+            return (T) this;
+        }
+        /**
          * Specifies whether timestamps should be enabled by default on sending
          * messages. This is just an hint to the JMS Broker. If the JMS provider
          * accepts this hint, these messages must have the timestamp set to
@@ -335,6 +584,17 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies whether timestamps should be enabled by default on sending
+         * messages. This is just an hint to the JMS Broker. If the JMS provider
+         * accepts this hint, these messages must have the timestamp set to
+         * zero; if the provider ignores the hint, the timestamp must be set to
+         * its normal value. The option will be converted to a boolean type.
+         */
+        public T messageTimestampEnabled(String messageTimestampEnabled) {
+            this.properties.put("messageTimestampEnabled", messageTimestampEnabled);
+            return (T) this;
+        }
+        /**
          * Specifies whether to inhibit the delivery of messages published by
          * its own connection. The option is a boolean type.
          */
@@ -343,6 +603,14 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies whether to inhibit the delivery of messages published by
+         * its own connection. The option will be converted to a boolean type.
+         */
+        public T pubSubNoLocal(String pubSubNoLocal) {
+            this.properties.put("pubSubNoLocal", pubSubNoLocal);
+            return (T) this;
+        }
+        /**
          * The timeout for receiving messages (in milliseconds). The option is a
          * long type.
          */
@@ -351,6 +619,14 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * The timeout for receiving messages (in milliseconds). The option will
+         * be converted to a long type.
+         */
+        public T receiveTimeout(String receiveTimeout) {
+            this.properties.put("receiveTimeout", receiveTimeout);
+            return (T) this;
+        }
+        /**
          * Specifies the interval between recovery attempts, i.e. when a
          * connection is being refreshed, in milliseconds. The default is 5000
          * ms, that is, 5 seconds. The option is a long type.
@@ -360,6 +636,15 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies the interval between recovery attempts, i.e. when a
+         * connection is being refreshed, in milliseconds. The default is 5000
+         * ms, that is, 5 seconds. The option will be converted to a long type.
+         */
+        public T recoveryInterval(String recoveryInterval) {
+            this.properties.put("recoveryInterval", recoveryInterval);
+            return (T) this;
+        }
+        /**
          * Configures how often Camel should check for timed out Exchanges when
          * doing request/reply over JMS. By default Camel checks once per
          * second. But if you must react faster when a timeout occurs, then you
@@ -372,6 +657,19 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Configures how often Camel should check for timed out Exchanges when
+         * doing request/reply over JMS. By default Camel checks once per
+         * second. But if you must react faster when a timeout occurs, then you
+         * can lower this interval, to check more frequently. The timeout is
+         * determined by the option requestTimeout. The option will be converted
+         * to a long type.
+         */
+        public T requestTimeoutCheckerInterval(
+                String requestTimeoutCheckerInterval) {
+            this.properties.put("requestTimeoutCheckerInterval", requestTimeoutCheckerInterval);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -381,6 +679,15 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
+        /**
          * If enabled and you are using Request Reply messaging (InOut) and an
          * Exchange failed on the consumer side, then the caused Exception will
          * be send back in response as a javax.jms.ObjectMessage. If the client
@@ -398,6 +705,23 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * If enabled and you are using Request Reply messaging (InOut) and an
+         * Exchange failed on the consumer side, then the caused Exception will
+         * be send back in response as a javax.jms.ObjectMessage. If the client
+         * is Camel, the returned Exception is rethrown. This allows you to use
+         * Camel JMS as a bridge in your routing - for example, using persistent
+         * queues to enable robust routing. Notice that if you also have
+         * transferExchange enabled, this option takes precedence. The caught
+         * exception is required to be serializable. The original Exception on
+         * the consumer side can be wrapped in an outer exception such as
+         * org.apache.camel.RuntimeCamelException when returned to the producer.
+         * The option will be converted to a boolean type.
+         */
+        public T transferException(String transferException) {
+            this.properties.put("transferException", transferException);
+            return (T) this;
+        }
+        /**
          * You can transfer the exchange over the wire instead of just the body
          * and headers. The following fields are transferred: In body, Out body,
          * Fault body, In headers, Out headers, Fault headers, exchange
@@ -412,6 +736,20 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * You can transfer the exchange over the wire instead of just the body
+         * and headers. The following fields are transferred: In body, Out body,
+         * Fault body, In headers, Out headers, Fault headers, exchange
+         * properties, exchange exception. This requires that the objects are
+         * serializable. Camel will exclude any non-serializable objects and log
+         * it at WARN level. You must enable this option on both the producer
+         * and consumer side, so Camel knows the payloads is an Exchange and not
+         * a regular payload. The option will be converted to a boolean type.
+         */
+        public T transferExchange(String transferExchange) {
+            this.properties.put("transferExchange", transferExchange);
+            return (T) this;
+        }
+        /**
          * If enabled and you are using Request Reply messaging (InOut) and an
          * Exchange failed with a SOAP fault (not exception) on the consumer
          * side, then the fault flag on org.apache.camel.Message#isFault() will
@@ -427,6 +765,22 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * If enabled and you are using Request Reply messaging (InOut) and an
+         * Exchange failed with a SOAP fault (not exception) on the consumer
+         * side, then the fault flag on org.apache.camel.Message#isFault() will
+         * be send back in the response as a JMS header with the key
+         * JmsConstants#JMS_TRANSFER_FAULT. If the client is Camel, the returned
+         * fault flag will be set on the
+         * org.apache.camel.Message#setFault(boolean). You may want to enable
+         * this when using Camel components that support faults such as SOAP
+         * based such as cxf or spring-ws. The option will be converted to a
+         * boolean type.
+         */
+        public T transferFault(String transferFault) {
+            this.properties.put("transferFault", transferFault);
+            return (T) this;
+        }
+        /**
          * Specifies whether JMSMessageID should always be used as
          * JMSCorrelationID for InOut messages. The option is a boolean type.
          */
@@ -435,6 +789,15 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies whether JMSMessageID should always be used as
+         * JMSCorrelationID for InOut messages. The option will be converted to
+         * a boolean type.
+         */
+        public T useMessageIDAsCorrelationID(String useMessageIDAsCorrelationID) {
+            this.properties.put("useMessageIDAsCorrelationID", useMessageIDAsCorrelationID);
+            return (T) this;
+        }
+        /**
          * Number of times to wait for provisional correlation id to be updated
          * to the actual correlation id when doing request/reply over JMS and
          * when the option useMessageIDAsCorrelationID is enabled. The option is
@@ -446,6 +809,17 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Number of times to wait for provisional correlation id to be updated
+         * to the actual correlation id when doing request/reply over JMS and
+         * when the option useMessageIDAsCorrelationID is enabled. The option
+         * will be converted to a int type.
+         */
+        public T waitForProvisionCorrelationToBeUpdatedCounter(
+                String waitForProvisionCorrelationToBeUpdatedCounter) {
+            this.properties.put("waitForProvisionCorrelationToBeUpdatedCounter", waitForProvisionCorrelationToBeUpdatedCounter);
+            return (T) this;
+        }
+        /**
          * Interval in millis to sleep each time while waiting for provisional
          * correlation id to be updated. The option is a long type.
          */
@@ -455,6 +829,16 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Interval in millis to sleep each time while waiting for provisional
+         * correlation id to be updated. The option will be converted to a long
+         * type.
+         */
+        public T waitForProvisionCorrelationToBeUpdatedThreadSleepingTime(
+                String waitForProvisionCorrelationToBeUpdatedThreadSleepingTime) {
+            this.properties.put("waitForProvisionCorrelationToBeUpdatedThreadSleepingTime", waitForProvisionCorrelationToBeUpdatedThreadSleepingTime);
+            return (T) this;
+        }
+        /**
          * Password to use with the ConnectionFactory. You can also configure
          * username/password directly on the ConnectionFactory. The option is a
          * java.lang.String type.
@@ -481,6 +865,14 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * Specifies whether to use transacted mode. The option will be
+         * converted to a boolean type.
+         */
+        public T transacted(String transacted) {
+            this.properties.put("transacted", transacted);
+            return (T) this;
+        }
+        /**
          * If true, Camel will create a JmsTransactionManager, if there is no
          * transactionManager injected when option transacted=true. The option
          * is a boolean type.
@@ -491,6 +883,16 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * If true, Camel will create a JmsTransactionManager, if there is no
+         * transactionManager injected when option transacted=true. The option
+         * will be converted to a boolean type.
+         */
+        public T lazyCreateTransactionManager(
+                String lazyCreateTransactionManager) {
+            this.properties.put("lazyCreateTransactionManager", lazyCreateTransactionManager);
+            return (T) this;
+        }
+        /**
          * The Spring transaction manager to use. The option is a
          * org.springframework.transaction.PlatformTransactionManager type.
          */
@@ -499,6 +901,14 @@ public interface ActiveMQEndpointBuilder {
             return (T) this;
         }
         /**
+         * The Spring transaction manager to use. The option will be converted
+         * to a org.springframework.transaction.PlatformTransactionManager type.
+         */
+        public T transactionManager(String transactionManager) {
+            this.properties.put("transactionManager", transactionManager);
+            return (T) this;
+        }
+        /**
          * The name of the transaction to use. The option is a java.lang.String
          * type.
          */
@@ -514,6 +924,14 @@ public interface ActiveMQEndpointBuilder {
             this.properties.put("transactionTimeout", transactionTimeout);
             return (T) this;
         }
+        /**
+         * The timeout value of the transaction (in seconds), if using
+         * transacted mode. The option will be converted to a int type.
+         */
+        public T transactionTimeout(String transactionTimeout) {
+            this.properties.put("transactionTimeout", transactionTimeout);
+            return (T) this;
+        }
     }
 
     public static class ActiveMQConsumerBuilder
@@ -551,6 +969,22 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Whether the JmsConsumer processes the Exchange asynchronously. If
+         * enabled then the JmsConsumer may pickup the next message from the JMS
+         * queue, while the previous message is being processed asynchronously
+         * (by the Asynchronous Routing Engine). This means that messages may be
+         * processed not 100% strictly in order. If disabled (as default) then
+         * the Exchange is fully processed before the JmsConsumer will pickup
+         * the next message from the JMS queue. Note if transacted has been
+         * enabled, then asyncConsumer=true does not run asynchronously, as
+         * transaction must be executed synchronously (Camel 3.0 may support
+         * async transactions). The option will be converted to a boolean type.
+         */
+        public ActiveMQConsumerBuilder asyncConsumer(String asyncConsumer) {
+            this.properties.put("asyncConsumer", asyncConsumer);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Specifies whether the consumer container should auto-startup. The
          * option is a boolean type.
          */
@@ -559,6 +993,14 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Specifies whether the consumer container should auto-startup. The
+         * option will be converted to a boolean type.
+         */
+        public ActiveMQConsumerBuilder autoStartup(String autoStartup) {
+            this.properties.put("autoStartup", autoStartup);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Allows for bridging the consumer to the Camel routing Error Handler,
          * which mean any exceptions occurred while the consumer is trying to
          * pickup incoming messages, or the likes, will now be processed as a
@@ -573,6 +1015,20 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public ActiveMQConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Sets the cache level by ID for the underlying JMS resources. See
          * cacheLevelName option for more details. The option is a int type.
          */
@@ -581,6 +1037,15 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Sets the cache level by ID for the underlying JMS resources. See
+         * cacheLevelName option for more details. The option will be converted
+         * to a int type.
+         */
+        public ActiveMQConsumerBuilder cacheLevel(String cacheLevel) {
+            this.properties.put("cacheLevel", cacheLevel);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Sets the cache level by name for the underlying JMS resources.
          * Possible values are: CACHE_AUTO, CACHE_CONNECTION, CACHE_CONSUMER,
          * CACHE_NONE, and CACHE_SESSION. The default setting is CACHE_AUTO. See
@@ -605,6 +1070,20 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Specifies the default number of concurrent consumers when consuming
+         * from JMS (not for request/reply over JMS). See also the
+         * maxMessagesPerTask option to control dynamic scaling up/down of
+         * threads. When doing request/reply over JMS then the option
+         * replyToConcurrentConsumers is used to control number of concurrent
+         * consumers on the reply message listener. The option will be converted
+         * to a int type.
+         */
+        public ActiveMQConsumerBuilder concurrentConsumers(
+                String concurrentConsumers) {
+            this.properties.put("concurrentConsumers", concurrentConsumers);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Specifies the maximum number of concurrent consumers when consuming
          * from JMS (not for request/reply over JMS). See also the
          * maxMessagesPerTask option to control dynamic scaling up/down of
@@ -618,6 +1097,20 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Specifies the maximum number of concurrent consumers when consuming
+         * from JMS (not for request/reply over JMS). See also the
+         * maxMessagesPerTask option to control dynamic scaling up/down of
+         * threads. When doing request/reply over JMS then the option
+         * replyToMaxConcurrentConsumers is used to control number of concurrent
+         * consumers on the reply message listener. The option will be converted
+         * to a int type.
+         */
+        public ActiveMQConsumerBuilder maxConcurrentConsumers(
+                String maxConcurrentConsumers) {
+            this.properties.put("maxConcurrentConsumers", maxConcurrentConsumers);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Provides an explicit ReplyTo destination, which overrides any
          * incoming value of Message.getJMSReplyTo(). The option is a
          * java.lang.String type.
@@ -636,6 +1129,15 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Specifies whether to use persistent delivery by default for replies.
+         * The option will be converted to a boolean type.
+         */
+        public ActiveMQConsumerBuilder replyToDeliveryPersistent(
+                String replyToDeliveryPersistent) {
+            this.properties.put("replyToDeliveryPersistent", replyToDeliveryPersistent);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Sets the JMS selector to use. The option is a java.lang.String type.
          */
         public ActiveMQConsumerBuilder selector(String selector) {
@@ -658,6 +1160,22 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Set whether to make the subscription durable. The durable
+         * subscription name to be used can be specified through the
+         * subscriptionName property. Default is false. Set this to true to
+         * register a durable subscription, typically in combination with a
+         * subscriptionName value (unless your message listener class name is
+         * good enough as subscription name). Only makes sense when listening to
+         * a topic (pub-sub domain), therefore this method switches the
+         * pubSubDomain flag as well. The option will be converted to a boolean
+         * type.
+         */
+        public ActiveMQConsumerBuilder subscriptionDurable(
+                String subscriptionDurable) {
+            this.properties.put("subscriptionDurable", subscriptionDurable);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Set the name of a subscription to create. To be applied in case of a
          * topic (pub-sub domain) with a shared or durable subscription. The
          * subscription name needs to be unique within this client's JMS client
@@ -690,6 +1208,24 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Set whether to make the subscription shared. The shared subscription
+         * name to be used can be specified through the subscriptionName
+         * property. Default is false. Set this to true to register a shared
+         * subscription, typically in combination with a subscriptionName value
+         * (unless your message listener class name is good enough as
+         * subscription name). Note that shared subscriptions may also be
+         * durable, so this flag can (and often will) be combined with
+         * subscriptionDurable as well. Only makes sense when listening to a
+         * topic (pub-sub domain), therefore this method switches the
+         * pubSubDomain flag as well. Requires a JMS 2.0 compatible message
+         * broker. The option will be converted to a boolean type.
+         */
+        public ActiveMQConsumerBuilder subscriptionShared(
+                String subscriptionShared) {
+            this.properties.put("subscriptionShared", subscriptionShared);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Specifies whether the consumer accept messages while it is stopping.
          * You may consider enabling this option, if you start and stop JMS
          * routes at runtime, while there are still messages enqueued on the
@@ -706,6 +1242,22 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Specifies whether the consumer accept messages while it is stopping.
+         * You may consider enabling this option, if you start and stop JMS
+         * routes at runtime, while there are still messages enqueued on the
+         * queue. If this option is false, and you stop the JMS route, then
+         * messages may be rejected, and the JMS broker would have to attempt
+         * redeliveries, which yet again may be rejected, and eventually the
+         * message may be moved at a dead letter queue on the JMS broker. To
+         * avoid this its recommended to enable this option. The option will be
+         * converted to a boolean type.
+         */
+        public ActiveMQConsumerBuilder acceptMessagesWhileStopping(
+                String acceptMessagesWhileStopping) {
+            this.properties.put("acceptMessagesWhileStopping", acceptMessagesWhileStopping);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Whether the DefaultMessageListenerContainer used in the reply
          * managers for request-reply messaging allow the
          * DefaultMessageListenerContainer#runningAllowed() flag to quick stop
@@ -721,6 +1273,38 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Whether the DefaultMessageListenerContainer used in the reply
+         * managers for request-reply messaging allow the
+         * DefaultMessageListenerContainer#runningAllowed() flag to quick stop
+         * in case JmsConfiguration#isAcceptMessagesWhileStopping() is enabled,
+         * and org.apache.camel.CamelContext is currently being stopped. This
+         * quick stop ability is enabled by default in the regular JMS consumers
+         * but to enable for reply managers you must enable this flag. The
+         * option will be converted to a boolean type.
+         */
+        public ActiveMQConsumerBuilder allowReplyManagerQuickStop(
+                String allowReplyManagerQuickStop) {
+            this.properties.put("allowReplyManagerQuickStop", allowReplyManagerQuickStop);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
+         * The consumer type to use, which can be one of: Simple, Default, or
+         * Custom. The consumer type determines which Spring JMS listener to
+         * use. Default will use
+         * org.springframework.jms.listener.DefaultMessageListenerContainer,
+         * Simple will use
+         * org.springframework.jms.listener.SimpleMessageListenerContainer. When
+         * Custom is specified, the MessageListenerContainerFactory defined by
+         * the messageListenerContainerFactory option will determine what
+         * org.springframework.jms.listener.AbstractMessageListenerContainer to
+         * use. The option is a org.apache.camel.component.jms.ConsumerType
+         * type.
+         */
+        public ActiveMQConsumerBuilder consumerType(ConsumerType consumerType) {
+            this.properties.put("consumerType", consumerType);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * The consumer type to use, which can be one of: Simple, Default, or
          * Custom. The consumer type determines which Spring JMS listener to
          * use. Default will use
@@ -730,10 +1314,10 @@ public interface ActiveMQEndpointBuilder {
          * Custom is specified, the MessageListenerContainerFactory defined by
          * the messageListenerContainerFactory option will determine what
          * org.springframework.jms.listener.AbstractMessageListenerContainer to
-         * use. The option is a org.apache.camel.component.jms.ConsumerType
-         * type.
+         * use. The option will be converted to a
+         * org.apache.camel.component.jms.ConsumerType type.
          */
-        public ActiveMQConsumerBuilder consumerType(ConsumerType consumerType) {
+        public ActiveMQConsumerBuilder consumerType(String consumerType) {
             this.properties.put("consumerType", consumerType);
             return (ActiveMQConsumerBuilder) this;
         }
@@ -756,6 +1340,24 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Specifies what default TaskExecutor type to use in the
+         * DefaultMessageListenerContainer, for both consumer endpoints and the
+         * ReplyTo consumer of producer endpoints. Possible values: SimpleAsync
+         * (uses Spring's SimpleAsyncTaskExecutor) or ThreadPool (uses Spring's
+         * ThreadPoolTaskExecutor with optimal values - cached threadpool-like).
+         * If not set, it defaults to the previous behaviour, which uses a
+         * cached thread pool for consumer endpoints and SimpleAsync for reply
+         * consumers. The use of ThreadPool is recommended to reduce thread
+         * trash in elastic configurations with dynamically increasing and
+         * decreasing concurrent consumers. The option will be converted to a
+         * org.apache.camel.component.jms.DefaultTaskExecutorType type.
+         */
+        public ActiveMQConsumerBuilder defaultTaskExecutorType(
+                String defaultTaskExecutorType) {
+            this.properties.put("defaultTaskExecutorType", defaultTaskExecutorType);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Enables eager loading of JMS properties and payload as soon as a
          * message is loaded which generally is inefficient as the JMS
          * properties may not be required but sometimes can catch early any
@@ -768,6 +1370,18 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Enables eager loading of JMS properties and payload as soon as a
+         * message is loaded which generally is inefficient as the JMS
+         * properties may not be required but sometimes can catch early any
+         * issues with the underlying JMS provider and the use of JMS
+         * properties. The option will be converted to a boolean type.
+         */
+        public ActiveMQConsumerBuilder eagerLoadingOfProperties(
+                String eagerLoadingOfProperties) {
+            this.properties.put("eagerLoadingOfProperties", eagerLoadingOfProperties);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -780,6 +1394,17 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public ActiveMQConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -789,6 +1414,14 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public ActiveMQConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Specifies whether the listener session should be exposed when
          * consuming messages. The option is a boolean type.
          */
@@ -798,6 +1431,15 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Specifies whether the listener session should be exposed when
+         * consuming messages. The option will be converted to a boolean type.
+         */
+        public ActiveMQConsumerBuilder exposeListenerSession(
+                String exposeListenerSession) {
+            this.properties.put("exposeListenerSession", exposeListenerSession);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Whether a JMS consumer is allowed to send a reply message to the same
          * destination that the consumer is using to consume from. This prevents
          * an endless loop by consuming and sending back the same message to
@@ -809,6 +1451,17 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Whether a JMS consumer is allowed to send a reply message to the same
+         * destination that the consumer is using to consume from. This prevents
+         * an endless loop by consuming and sending back the same message to
+         * itself. The option will be converted to a boolean type.
+         */
+        public ActiveMQConsumerBuilder replyToSameDestinationAllowed(
+                String replyToSameDestinationAllowed) {
+            this.properties.put("replyToSameDestinationAllowed", replyToSameDestinationAllowed);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Allows you to specify a custom task executor for consuming messages.
          * The option is a org.springframework.core.task.TaskExecutor type.
          */
@@ -817,6 +1470,15 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Allows you to specify a custom task executor for consuming messages.
+         * The option will be converted to a
+         * org.springframework.core.task.TaskExecutor type.
+         */
+        public ActiveMQConsumerBuilder taskExecutor(String taskExecutor) {
+            this.properties.put("taskExecutor", taskExecutor);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Allows to configure the default errorHandler logging level for
          * logging uncaught exceptions. The option is a
          * org.apache.camel.LoggingLevel type.
@@ -827,6 +1489,16 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQConsumerBuilder) this;
         }
         /**
+         * Allows to configure the default errorHandler logging level for
+         * logging uncaught exceptions. The option will be converted to a
+         * org.apache.camel.LoggingLevel type.
+         */
+        public ActiveMQConsumerBuilder errorHandlerLoggingLevel(
+                String errorHandlerLoggingLevel) {
+            this.properties.put("errorHandlerLoggingLevel", errorHandlerLoggingLevel);
+            return (ActiveMQConsumerBuilder) this;
+        }
+        /**
          * Allows to control whether stacktraces should be logged or not, by the
          * default errorHandler. The option is a boolean type.
          */
@@ -835,6 +1507,15 @@ public interface ActiveMQEndpointBuilder {
             this.properties.put("errorHandlerLogStackTrace", errorHandlerLogStackTrace);
             return (ActiveMQConsumerBuilder) this;
         }
+        /**
+         * Allows to control whether stacktraces should be logged or not, by the
+         * default errorHandler. The option will be converted to a boolean type.
+         */
+        public ActiveMQConsumerBuilder errorHandlerLogStackTrace(
+                String errorHandlerLogStackTrace) {
+            this.properties.put("errorHandlerLogStackTrace", errorHandlerLogStackTrace);
+            return (ActiveMQConsumerBuilder) this;
+        }
     }
 
     public static class ActiveMQProducerBuilder
@@ -855,6 +1536,15 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * Specifies the delivery mode to be used. Possibles values are those
+         * defined by javax.jms.DeliveryMode. NON_PERSISTENT = 1 and PERSISTENT
+         * = 2. The option will be converted to a java.lang.Integer type.
+         */
+        public ActiveMQProducerBuilder deliveryMode(String deliveryMode) {
+            this.properties.put("deliveryMode", deliveryMode);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * Specifies whether persistent delivery is used by default. The option
          * is a boolean type.
          */
@@ -864,6 +1554,15 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * Specifies whether persistent delivery is used by default. The option
+         * will be converted to a boolean type.
+         */
+        public ActiveMQProducerBuilder deliveryPersistent(
+                String deliveryPersistent) {
+            this.properties.put("deliveryPersistent", deliveryPersistent);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * Set if the deliveryMode, priority or timeToLive qualities of service
          * should be used when sending messages. This option is based on
          * Spring's JmsTemplate. The deliveryMode, priority and timeToLive
@@ -878,6 +1577,20 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * Set if the deliveryMode, priority or timeToLive qualities of service
+         * should be used when sending messages. This option is based on
+         * Spring's JmsTemplate. The deliveryMode, priority and timeToLive
+         * options are applied to the current endpoint. This contrasts with the
+         * preserveMessageQos option, which operates at message granularity,
+         * reading QoS properties exclusively from the Camel In message headers.
+         * The option will be converted to a java.lang.Boolean type.
+         */
+        public ActiveMQProducerBuilder explicitQosEnabled(
+                String explicitQosEnabled) {
+            this.properties.put("explicitQosEnabled", explicitQosEnabled);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * Sets whether date headers should be formatted according to the ISO
          * 8601 standard. The option is a boolean type.
          */
@@ -887,6 +1600,15 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * Sets whether date headers should be formatted according to the ISO
+         * 8601 standard. The option will be converted to a boolean type.
+         */
+        public ActiveMQProducerBuilder formatDateHeadersToIso8601(
+                String formatDateHeadersToIso8601) {
+            this.properties.put("formatDateHeadersToIso8601", formatDateHeadersToIso8601);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * Set to true, if you want to send message using the QoS settings
          * specified on the message, instead of the QoS settings on the JMS
          * endpoint. The following three headers are considered JMSPriority,
@@ -903,6 +1625,23 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * Set to true, if you want to send message using the QoS settings
+         * specified on the message, instead of the QoS settings on the JMS
+         * endpoint. The following three headers are considered JMSPriority,
+         * JMSDeliveryMode, and JMSExpiration. You can provide all or only some
+         * of them. If not provided, Camel will fall back to use the values from
+         * the endpoint instead. So, when using this option, the headers
+         * override the values from the endpoint. The explicitQosEnabled option,
+         * by contrast, will only use options set on the endpoint, and not
+         * values from the message header. The option will be converted to a
+         * boolean type.
+         */
+        public ActiveMQProducerBuilder preserveMessageQos(
+                String preserveMessageQos) {
+            this.properties.put("preserveMessageQos", preserveMessageQos);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * Values greater than 1 specify the message priority when sending
          * (where 0 is the lowest priority and 9 is the highest). The
          * explicitQosEnabled option must also be enabled in order for this
@@ -913,6 +1652,17 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * Values greater than 1 specify the message priority when sending
+         * (where 0 is the lowest priority and 9 is the highest). The
+         * explicitQosEnabled option must also be enabled in order for this
+         * option to have any effect. The option will be converted to a int
+         * type.
+         */
+        public ActiveMQProducerBuilder priority(String priority) {
+            this.properties.put("priority", priority);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * Specifies the default number of concurrent consumers when doing
          * request/reply over JMS. See also the maxMessagesPerTask option to
          * control dynamic scaling up/down of threads. The option is a int type.
@@ -923,6 +1673,17 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * Specifies the default number of concurrent consumers when doing
+         * request/reply over JMS. See also the maxMessagesPerTask option to
+         * control dynamic scaling up/down of threads. The option will be
+         * converted to a int type.
+         */
+        public ActiveMQProducerBuilder replyToConcurrentConsumers(
+                String replyToConcurrentConsumers) {
+            this.properties.put("replyToConcurrentConsumers", replyToConcurrentConsumers);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * Specifies the maximum number of concurrent consumers when using
          * request/reply over JMS. See also the maxMessagesPerTask option to
          * control dynamic scaling up/down of threads. The option is a int type.
@@ -933,6 +1694,17 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * Specifies the maximum number of concurrent consumers when using
+         * request/reply over JMS. See also the maxMessagesPerTask option to
+         * control dynamic scaling up/down of threads. The option will be
+         * converted to a int type.
+         */
+        public ActiveMQProducerBuilder replyToMaxConcurrentConsumers(
+                String replyToMaxConcurrentConsumers) {
+            this.properties.put("replyToMaxConcurrentConsumers", replyToMaxConcurrentConsumers);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * Specifies the maximum number of concurrent consumers for continue
          * routing when timeout occurred when using request/reply over JMS. The
          * option is a int type.
@@ -943,6 +1715,16 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * Specifies the maximum number of concurrent consumers for continue
+         * routing when timeout occurred when using request/reply over JMS. The
+         * option will be converted to a int type.
+         */
+        public ActiveMQProducerBuilder replyToOnTimeoutMaxConcurrentConsumers(
+                String replyToOnTimeoutMaxConcurrentConsumers) {
+            this.properties.put("replyToOnTimeoutMaxConcurrentConsumers", replyToOnTimeoutMaxConcurrentConsumers);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * Provides an explicit ReplyTo destination in the JMS message, which
          * overrides the setting of replyTo. It is useful if you want to forward
          * the message to a remote Queue and receive the reply message from the
@@ -969,6 +1751,23 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * Allows for explicitly specifying which kind of strategy to use for
+         * replyTo queues when doing request/reply over JMS. Possible values
+         * are: Temporary, Shared, or Exclusive. By default Camel will use
+         * temporary queues. However if replyTo has been configured, then Shared
+         * is used by default. This option allows you to use exclusive queues
+         * instead of shared ones. See Camel JMS documentation for more details,
+         * and especially the notes about the implications if running in a
+         * clustered environment, and the fact that Shared reply queues has
+         * lower performance than its alternatives Temporary and Exclusive. The
+         * option will be converted to a
+         * org.apache.camel.component.jms.ReplyToType type.
+         */
+        public ActiveMQProducerBuilder replyToType(String replyToType) {
+            this.properties.put("replyToType", replyToType);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * The timeout for waiting for a reply when using the InOut Exchange
          * Pattern (in milliseconds). The default is 20 seconds. You can include
          * the header CamelJmsRequestTimeout to override this endpoint
@@ -981,6 +1780,18 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * The timeout for waiting for a reply when using the InOut Exchange
+         * Pattern (in milliseconds). The default is 20 seconds. You can include
+         * the header CamelJmsRequestTimeout to override this endpoint
+         * configured timeout value, and thus have per message individual
+         * timeout values. See also the requestTimeoutCheckerInterval option.
+         * The option will be converted to a long type.
+         */
+        public ActiveMQProducerBuilder requestTimeout(String requestTimeout) {
+            this.properties.put("requestTimeout", requestTimeout);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * When sending messages, specifies the time-to-live of the message (in
          * milliseconds). The option is a long type.
          */
@@ -989,6 +1800,14 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * When sending messages, specifies the time-to-live of the message (in
+         * milliseconds). The option will be converted to a long type.
+         */
+        public ActiveMQProducerBuilder timeToLive(String timeToLive) {
+            this.properties.put("timeToLive", timeToLive);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * This option is used to allow additional headers which may have values
          * that are invalid according to JMS specification. For example some
          * message systems such as WMQ do this with header names using prefix
@@ -1012,6 +1831,15 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * Whether to allow sending messages with no body. If this option is
+         * false and the message body is null, then an JMSException is thrown.
+         * The option will be converted to a boolean type.
+         */
+        public ActiveMQProducerBuilder allowNullBody(String allowNullBody) {
+            this.properties.put("allowNullBody", allowNullBody);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * If true, Camel will always make a JMS message copy of the message
          * when it is passed to the producer for sending. Copying the message is
          * needed in some situations, such as when a
@@ -1025,6 +1853,20 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * If true, Camel will always make a JMS message copy of the message
+         * when it is passed to the producer for sending. Copying the message is
+         * needed in some situations, such as when a
+         * replyToDestinationSelectorName is set (incidentally, Camel will set
+         * the alwaysCopyMessage option to true, if a
+         * replyToDestinationSelectorName is set). The option will be converted
+         * to a boolean type.
+         */
+        public ActiveMQProducerBuilder alwaysCopyMessage(
+                String alwaysCopyMessage) {
+            this.properties.put("alwaysCopyMessage", alwaysCopyMessage);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * Use this JMS property to correlate messages in InOut exchange pattern
          * (request-reply) instead of JMSCorrelationID property. This allows you
          * to exchange messages with systems that do not correlate messages
@@ -1055,6 +1897,22 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * Use this option to force disabling time to live. For example when you
+         * do request/reply over JMS, then Camel will by default use the
+         * requestTimeout value as time to live on the message being sent. The
+         * problem is that the sender and receiver systems have to have their
+         * clocks synchronized, so they are in sync. This is not always so easy
+         * to archive. So you can use disableTimeToLive=true to not set a time
+         * to live value on the sent message. Then the message will not expire
+         * on the receiver system. See below in section About time to live for
+         * more details. The option will be converted to a boolean type.
+         */
+        public ActiveMQProducerBuilder disableTimeToLive(
+                String disableTimeToLive) {
+            this.properties.put("disableTimeToLive", disableTimeToLive);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * When using mapJmsMessage=false Camel will create a new JMS message to
          * send to a new JMS destination if you touch the headers (get or set)
          * during the route. Set this option to true to force Camel to send the
@@ -1066,6 +1924,18 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * When using mapJmsMessage=false Camel will create a new JMS message to
+         * send to a new JMS destination if you touch the headers (get or set)
+         * during the route. Set this option to true to force Camel to send the
+         * original JMS message that was received. The option will be converted
+         * to a boolean type.
+         */
+        public ActiveMQProducerBuilder forceSendOriginalMessage(
+                String forceSendOriginalMessage) {
+            this.properties.put("forceSendOriginalMessage", forceSendOriginalMessage);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * Only applicable when sending to JMS destination using InOnly (eg fire
          * and forget). Enabling this option will enrich the Camel Exchange with
          * the actual JMSMessageID that was used by the JMS client when the
@@ -1078,6 +1948,18 @@ public interface ActiveMQEndpointBuilder {
             return (ActiveMQProducerBuilder) this;
         }
         /**
+         * Only applicable when sending to JMS destination using InOnly (eg fire
+         * and forget). Enabling this option will enrich the Camel Exchange with
+         * the actual JMSMessageID that was used by the JMS client when the
+         * message was sent to the JMS destination. The option will be converted
+         * to a boolean type.
+         */
+        public ActiveMQProducerBuilder includeSentJMSMessageID(
+                String includeSentJMSMessageID) {
+            this.properties.put("includeSentJMSMessageID", includeSentJMSMessageID);
+            return (ActiveMQProducerBuilder) this;
+        }
+        /**
          * Sets the cache level by name for the reply consumer when doing
          * request/reply over JMS. This option only applies when using fixed
          * reply queues (not temporary). Camel will by default use:
@@ -1120,6 +2002,21 @@ public interface ActiveMQEndpointBuilder {
             this.properties.put("streamMessageTypeEnabled", streamMessageTypeEnabled);
             return (ActiveMQProducerBuilder) this;
         }
+        /**
+         * Sets whether StreamMessage type is enabled or not. Message payloads
+         * of streaming kind such as files, InputStream, etc will either by sent
+         * as BytesMessage or StreamMessage. This option controls which kind
+         * will be used. By default BytesMessage is used which enforces the
+         * entire message payload to be read into memory. By enabling this
+         * option the message payload is read into memory in chunks and each
+         * chunk is then written to the StreamMessage until no more data. The
+         * option will be converted to a boolean type.
+         */
+        public ActiveMQProducerBuilder streamMessageTypeEnabled(
+                String streamMessageTypeEnabled) {
+            this.properties.put("streamMessageTypeEnabled", streamMessageTypeEnabled);
+            return (ActiveMQProducerBuilder) this;
+        }
     }
 
     public static enum JmsMessageType {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java
index 7d113d7..e0264c4 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java
@@ -48,6 +48,14 @@ public interface AhcEndpointBuilder {
             return (T) this;
         }
         /**
+         * The URI to use such as http://hostname:port/path. The option will be
+         * converted to a java.net.URI type.
+         */
+        public T httpUri(String httpUri) {
+            this.properties.put("httpUri", httpUri);
+            return (T) this;
+        }
+        /**
          * If the option is true, then the Exchange.HTTP_URI header is ignored,
          * and use the endpoint's URI for request. You may also set the
          * throwExceptionOnFailure to be false to let the AhcProducer send all
@@ -58,6 +66,17 @@ public interface AhcEndpointBuilder {
             return (T) this;
         }
         /**
+         * If the option is true, then the Exchange.HTTP_URI header is ignored,
+         * and use the endpoint's URI for request. You may also set the
+         * throwExceptionOnFailure to be false to let the AhcProducer send all
+         * the fault response back. The option will be converted to a boolean
+         * type.
+         */
+        public T bridgeEndpoint(String bridgeEndpoint) {
+            this.properties.put("bridgeEndpoint", bridgeEndpoint);
+            return (T) this;
+        }
+        /**
          * The initial in-memory buffer size used when transferring data between
          * Camel and AHC Client. The option is a int type.
          */
@@ -66,6 +85,14 @@ public interface AhcEndpointBuilder {
             return (T) this;
         }
         /**
+         * The initial in-memory buffer size used when transferring data between
+         * Camel and AHC Client. The option will be converted to a int type.
+         */
+        public T bufferSize(String bufferSize) {
+            this.properties.put("bufferSize", bufferSize);
+            return (T) this;
+        }
+        /**
          * To use a custom HeaderFilterStrategy to filter header to and from
          * Camel message. The option is a
          * org.apache.camel.spi.HeaderFilterStrategy type.
@@ -75,6 +102,15 @@ public interface AhcEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use a custom HeaderFilterStrategy to filter header to and from
+         * Camel message. The option will be converted to a
+         * org.apache.camel.spi.HeaderFilterStrategy type.
+         */
+        public T headerFilterStrategy(String headerFilterStrategy) {
+            this.properties.put("headerFilterStrategy", headerFilterStrategy);
+            return (T) this;
+        }
+        /**
          * Option to disable throwing the AhcOperationFailedException in case of
          * failed responses from the remote server. This allows you to get all
          * responses regardless of the HTTP status code. The option is a boolean
@@ -85,6 +121,16 @@ public interface AhcEndpointBuilder {
             return (T) this;
         }
         /**
+         * Option to disable throwing the AhcOperationFailedException in case of
+         * failed responses from the remote server. This allows you to get all
+         * responses regardless of the HTTP status code. The option will be
+         * converted to a boolean type.
+         */
+        public T throwExceptionOnFailure(String throwExceptionOnFailure) {
+            this.properties.put("throwExceptionOnFailure", throwExceptionOnFailure);
+            return (T) this;
+        }
+        /**
          * If enabled and an Exchange failed processing on the consumer side,
          * and if the caused Exception was send back serialized in the response
          * as a application/x-java-serialized-object content type (for example
@@ -101,6 +147,22 @@ public interface AhcEndpointBuilder {
             return (T) this;
         }
         /**
+         * If enabled and an Exchange failed processing on the consumer side,
+         * and if the caused Exception was send back serialized in the response
+         * as a application/x-java-serialized-object content type (for example
+         * using Jetty or Servlet Camel components). On the producer side the
+         * exception will be deserialized and thrown as is, instead of the
+         * AhcOperationFailedException. The caused exception is required to be
+         * serialized. 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. The option will be
+         * converted to a boolean type.
+         */
+        public T transferException(String transferException) {
+            this.properties.put("transferException", transferException);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -110,6 +172,15 @@ public interface AhcEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * To use a custom AhcBinding which allows to control how to bind
          * between AHC and Camel. The option is a
          * org.apache.camel.component.ahc.AhcBinding type.
@@ -119,6 +190,15 @@ public interface AhcEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use a custom AhcBinding which allows to control how to bind
+         * between AHC and Camel. The option will be converted to a
+         * org.apache.camel.component.ahc.AhcBinding type.
+         */
+        public T binding(String binding) {
+            this.properties.put("binding", binding);
+            return (T) this;
+        }
+        /**
          * To configure the AsyncHttpClient to use a custom
          * com.ning.http.client.AsyncHttpClientConfig instance. The option is a
          * org.asynchttpclient.AsyncHttpClientConfig type.
@@ -128,6 +208,15 @@ public interface AhcEndpointBuilder {
             return (T) this;
         }
         /**
+         * To configure the AsyncHttpClient to use a custom
+         * com.ning.http.client.AsyncHttpClientConfig instance. The option will
+         * be converted to a org.asynchttpclient.AsyncHttpClientConfig type.
+         */
+        public T clientConfig(String clientConfig) {
+            this.properties.put("clientConfig", clientConfig);
+            return (T) this;
+        }
+        /**
          * To configure the AsyncHttpClientConfig using the key/values from the
          * Map. The option is a java.util.Map<java.lang.String,java.lang.Object>
          * type.
@@ -137,6 +226,15 @@ public interface AhcEndpointBuilder {
             return (T) this;
         }
         /**
+         * To configure the AsyncHttpClientConfig using the key/values from the
+         * Map. The option will be converted to a
+         * java.util.Map<java.lang.String,java.lang.Object> type.
+         */
+        public T clientConfigOptions(String clientConfigOptions) {
+            this.properties.put("clientConfigOptions", clientConfigOptions);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -146,6 +244,15 @@ public interface AhcEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
+        /**
          * To configure the AsyncHttpClientConfig Realm using the key/values
          * from the Map. The option is a
          * java.util.Map<java.lang.String,java.lang.Object> type.
@@ -156,6 +263,15 @@ public interface AhcEndpointBuilder {
             return (T) this;
         }
         /**
+         * To configure the AsyncHttpClientConfig Realm using the key/values
+         * from the Map. The option will be converted to a
+         * java.util.Map<java.lang.String,java.lang.Object> type.
+         */
+        public T clientConfigRealmOptions(String clientConfigRealmOptions) {
+            this.properties.put("clientConfigRealmOptions", clientConfigRealmOptions);
+            return (T) this;
+        }
+        /**
          * Reference to a org.apache.camel.support.jsse.SSLContextParameters in
          * the Registry. This reference overrides any configured
          * SSLContextParameters at the component level. See Using the JSSE
@@ -168,6 +284,20 @@ public interface AhcEndpointBuilder {
             this.properties.put("sslContextParameters", sslContextParameters);
             return (T) this;
         }
+        /**
+         * Reference to a org.apache.camel.support.jsse.SSLContextParameters in
+         * the Registry. This reference overrides any configured
+         * SSLContextParameters at the component level. See Using the JSSE
+         * Configuration Utility. Note that configuring this option will
+         * override any SSL/TLS configuration options provided through the
+         * clientConfig option at the endpoint or component level. The option
+         * will be converted to a
+         * org.apache.camel.support.jsse.SSLContextParameters type.
+         */
+        public T sslContextParameters(String sslContextParameters) {
+            this.properties.put("sslContextParameters", sslContextParameters);
+            return (T) this;
+        }
     }
 
     public static class AhcProducerBuilder
@@ -188,6 +318,15 @@ public interface AhcEndpointBuilder {
             return (AhcProducerBuilder) this;
         }
         /**
+         * Define if the Connection Close header has to be added to HTTP
+         * Request. This parameter is false by default. The option will be
+         * converted to a boolean type.
+         */
+        public AhcProducerBuilder connectionClose(String connectionClose) {
+            this.properties.put("connectionClose", connectionClose);
+            return (AhcProducerBuilder) this;
+        }
+        /**
          * Configure a cookie handler to maintain a HTTP session. The option is
          * a org.apache.camel.http.common.cookie.CookieHandler type.
          */
@@ -195,6 +334,15 @@ public interface AhcEndpointBuilder {
             this.properties.put("cookieHandler", cookieHandler);
             return (AhcProducerBuilder) this;
         }
+        /**
+         * Configure a cookie handler to maintain a HTTP session. The option
+         * will be converted to a
+         * org.apache.camel.http.common.cookie.CookieHandler type.
+         */
+        public AhcProducerBuilder cookieHandler(String cookieHandler) {
+            this.properties.put("cookieHandler", cookieHandler);
+            return (AhcProducerBuilder) this;
+        }
     }
     public default AhcProducerBuilder toAhc(String path) {
         return new AhcProducerBuilder(path);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java
index 8b5a55c..c3ce8de 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java
@@ -70,6 +70,15 @@ public interface ApnsEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -78,6 +87,15 @@ public interface ApnsEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class ApnsConsumerBuilder
@@ -102,6 +120,19 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public ApnsConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option is a
          * boolean type.
@@ -112,6 +143,16 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * If the polling consumer did not poll any files, you can enable this
+         * option to send an empty message (no body) instead. The option will be
+         * converted to a boolean type.
+         */
+        public ApnsConsumerBuilder sendEmptyMessageWhenIdle(
+                String sendEmptyMessageWhenIdle) {
+            this.properties.put("sendEmptyMessageWhenIdle", sendEmptyMessageWhenIdle);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -124,6 +165,17 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public ApnsConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -133,6 +185,14 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public ApnsConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing
          * you to provide your custom implementation to control error handling
          * usually occurred during the poll operation before an Exchange have
@@ -145,6 +205,17 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing
+         * you to provide your custom implementation to control error handling
+         * usually occurred during the poll operation before an Exchange have
+         * been created and being routed in Camel. The option will be converted
+         * to a org.apache.camel.spi.PollingConsumerPollStrategy type.
+         */
+        public ApnsConsumerBuilder pollStrategy(String pollStrategy) {
+            this.properties.put("pollStrategy", pollStrategy);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
          * is a int type.
@@ -155,6 +226,16 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * The number of subsequent error polls (failed due some error) that
+         * should happen before the backoffMultipler should kick-in. The option
+         * will be converted to a int type.
+         */
+        public ApnsConsumerBuilder backoffErrorThreshold(
+                String backoffErrorThreshold) {
+            this.properties.put("backoffErrorThreshold", backoffErrorThreshold);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * The number of subsequent idle polls that should happen before the
          * backoffMultipler should kick-in. The option is a int type.
          */
@@ -163,6 +244,16 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * The number of subsequent idle polls that should happen before the
+         * backoffMultipler should kick-in. The option will be converted to a
+         * int type.
+         */
+        public ApnsConsumerBuilder backoffIdleThreshold(
+                String backoffIdleThreshold) {
+            this.properties.put("backoffIdleThreshold", backoffIdleThreshold);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * To let the scheduled polling consumer backoff if there has been a
          * number of subsequent idles/errors in a row. The multiplier is then
          * the number of polls that will be skipped before the next actual
@@ -175,6 +266,18 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * To let the scheduled polling consumer backoff if there has been a
+         * number of subsequent idles/errors in a row. The multiplier is then
+         * the number of polls that will be skipped before the next actual
+         * attempt is happening again. When this option is in use then
+         * backoffIdleThreshold and/or backoffErrorThreshold must also be
+         * configured. The option will be converted to a int type.
+         */
+        public ApnsConsumerBuilder backoffMultiplier(String backoffMultiplier) {
+            this.properties.put("backoffMultiplier", backoffMultiplier);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
@@ -184,6 +287,16 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * Milliseconds before the next poll. You can also specify time values
+         * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
+         * seconds), and 1h (1 hour). The option will be converted to a long
+         * type.
+         */
+        public ApnsConsumerBuilder delay(String delay) {
+            this.properties.put("delay", delay);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
          * option is a boolean type.
@@ -193,6 +306,15 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * If greedy is enabled, then the ScheduledPollConsumer will run
+         * immediately again, if the previous run polled 1 or more messages. The
+         * option will be converted to a boolean type.
+         */
+        public ApnsConsumerBuilder greedy(String greedy) {
+            this.properties.put("greedy", greedy);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
@@ -202,6 +324,16 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * Milliseconds before the first poll starts. You can also specify time
+         * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
+         * seconds), and 1h (1 hour). The option will be converted to a long
+         * type.
+         */
+        public ApnsConsumerBuilder initialDelay(String initialDelay) {
+            this.properties.put("initialDelay", initialDelay);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
          * is a org.apache.camel.LoggingLevel type.
@@ -211,6 +343,15 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * The consumer logs a start/complete log line when it polls. This
+         * option allows you to configure the logging level for that. The option
+         * will be converted to a org.apache.camel.LoggingLevel type.
+         */
+        public ApnsConsumerBuilder runLoggingLevel(String runLoggingLevel) {
+            this.properties.put("runLoggingLevel", runLoggingLevel);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * Allows for configuring a custom/shared thread pool to use for the
          * consumer. By default each consumer has its own single threaded thread
          * pool. The option is a java.util.concurrent.ScheduledExecutorService
@@ -222,6 +363,17 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * Allows for configuring a custom/shared thread pool to use for the
+         * consumer. By default each consumer has its own single threaded thread
+         * pool. The option will be converted to a
+         * java.util.concurrent.ScheduledExecutorService type.
+         */
+        public ApnsConsumerBuilder scheduledExecutorService(
+                String scheduledExecutorService) {
+            this.properties.put("scheduledExecutorService", scheduledExecutorService);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option is a
          * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
@@ -232,6 +384,15 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * To use a cron scheduler from either camel-spring or camel-quartz2
+         * component. The option will be converted to a
+         * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
+         */
+        public ApnsConsumerBuilder scheduler(String scheduler) {
+            this.properties.put("scheduler", scheduler);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
          * java.util.Map<java.lang.String,java.lang.Object> type.
@@ -242,6 +403,16 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * To configure additional properties when using a custom scheduler or
+         * any of the Quartz2, Spring based scheduler. The option will be
+         * converted to a java.util.Map<java.lang.String,java.lang.Object> type.
+         */
+        public ApnsConsumerBuilder schedulerProperties(
+                String schedulerProperties) {
+            this.properties.put("schedulerProperties", schedulerProperties);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * Whether the scheduler should be auto started. The option is a boolean
          * type.
          */
@@ -250,6 +421,14 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * Whether the scheduler should be auto started. The option will be
+         * converted to a boolean type.
+         */
+        public ApnsConsumerBuilder startScheduler(String startScheduler) {
+            this.properties.put("startScheduler", startScheduler);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * Time unit for initialDelay and delay options. The option is a
          * java.util.concurrent.TimeUnit type.
          */
@@ -258,6 +437,14 @@ public interface ApnsEndpointBuilder {
             return (ApnsConsumerBuilder) this;
         }
         /**
+         * Time unit for initialDelay and delay options. The option will be
+         * converted to a java.util.concurrent.TimeUnit type.
+         */
+        public ApnsConsumerBuilder timeUnit(String timeUnit) {
+            this.properties.put("timeUnit", timeUnit);
+            return (ApnsConsumerBuilder) this;
+        }
+        /**
          * Controls if fixed delay or fixed rate is used. See
          * ScheduledExecutorService in JDK for details. The option is a boolean
          * type.
@@ -266,6 +453,15 @@ public interface ApnsEndpointBuilder {
             this.properties.put("useFixedDelay", useFixedDelay);
             return (ApnsConsumerBuilder) this;
         }
+        /**
+         * Controls if fixed delay or fixed rate is used. See
+         * ScheduledExecutorService in JDK for details. The option will be
+         * converted to a boolean type.
+         */
+        public ApnsConsumerBuilder useFixedDelay(String useFixedDelay) {
+            this.properties.put("useFixedDelay", useFixedDelay);
+            return (ApnsConsumerBuilder) this;
+        }
     }
 
     public static class ApnsProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpointBuilder.java
index 57dff02..900e48d 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpointBuilder.java
@@ -77,6 +77,15 @@ public interface AsteriskEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -85,6 +94,15 @@ public interface AsteriskEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class AsteriskConsumerBuilder
@@ -110,6 +128,20 @@ public interface AsteriskEndpointBuilder {
             return (AsteriskConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public AsteriskConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (AsteriskConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -122,6 +154,17 @@ public interface AsteriskEndpointBuilder {
             return (AsteriskConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public AsteriskConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (AsteriskConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -130,6 +173,14 @@ public interface AsteriskEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (AsteriskConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public AsteriskConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (AsteriskConsumerBuilder) this;
+        }
     }
 
     public static class AsteriskProducerBuilder
@@ -149,6 +200,15 @@ public interface AsteriskEndpointBuilder {
             this.properties.put("action", action);
             return (AsteriskProducerBuilder) this;
         }
+        /**
+         * What action to perform such as getting queue status, sip peers or
+         * extension state. The option will be converted to a
+         * org.apache.camel.component.asterisk.AsteriskAction type.
+         */
+        public AsteriskProducerBuilder action(String action) {
+            this.properties.put("action", action);
+            return (AsteriskProducerBuilder) this;
+        }
     }
 
     public static enum AsteriskAction {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpointBuilder.java
index 2abedf9..5a887eb 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpointBuilder.java
@@ -54,6 +54,14 @@ public interface AtmosEndpointBuilder {
             return (T) this;
         }
         /**
+         * Operation to perform. The option will be converted to a
+         * org.apache.camel.component.atmos.util.AtmosOperation type.
+         */
+        public T operation(String operation) {
+            this.properties.put("operation", operation);
+            return (T) this;
+        }
+        /**
          * Atmos SSL validation. The option is a boolean type.
          */
         public T enableSslValidation(boolean enableSslValidation) {
@@ -61,6 +69,13 @@ public interface AtmosEndpointBuilder {
             return (T) this;
         }
         /**
+         * Atmos SSL validation. The option will be converted to a boolean type.
+         */
+        public T enableSslValidation(String enableSslValidation) {
+            this.properties.put("enableSslValidation", enableSslValidation);
+            return (T) this;
+        }
+        /**
          * Atmos client fullTokenId. The option is a java.lang.String type.
          */
         public T fullTokenId(String fullTokenId) {
@@ -120,6 +135,15 @@ public interface AtmosEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -128,6 +152,15 @@ public interface AtmosEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class AtmosConsumerBuilder
@@ -153,6 +186,19 @@ public interface AtmosEndpointBuilder {
             return (AtmosConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public AtmosConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (AtmosConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -165,6 +211,17 @@ public interface AtmosEndpointBuilder {
             return (AtmosConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public AtmosConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (AtmosConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -173,6 +230,14 @@ public interface AtmosEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (AtmosConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public AtmosConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (AtmosConsumerBuilder) this;
+        }
     }
 
     public static class AtmosProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpointBuilder.java
index 937e224..0905667 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpointBuilder.java
@@ -55,6 +55,14 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether to send to all (broadcast) or send to a single receiver. The
+         * option will be converted to a boolean type.
+         */
+        public T sendToAll(String sendToAll) {
+            this.properties.put("sendToAll", sendToAll);
+            return (T) this;
+        }
+        /**
          * To enable streaming to send data as multiple text fragments. The
          * option is a boolean type.
          */
@@ -63,6 +71,14 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (T) this;
         }
         /**
+         * To enable streaming to send data as multiple text fragments. The
+         * option will be converted to a boolean type.
+         */
+        public T useStreaming(String useStreaming) {
+            this.properties.put("useStreaming", useStreaming);
+            return (T) this;
+        }
+        /**
          * Determines whether or not the raw input stream from Servlet is cached
          * or not (Camel will read the stream into a in memory/overflow to file,
          * Stream caching) cache. By default Camel will cache the Servlet input
@@ -86,6 +102,29 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (T) this;
         }
         /**
+         * Determines whether or not the raw input stream from Servlet is cached
+         * or not (Camel will read the stream into a in memory/overflow to file,
+         * Stream caching) cache. By default Camel will cache the Servlet input
+         * stream to support reading it multiple times to ensure it Camel can
+         * retrieve all data from the stream. However you can set this option to
+         * true when you for example need to access the raw stream, such as
+         * streaming it directly to a file or other persistent store.
+         * DefaultHttpBinding will copy the request input stream into a stream
+         * cache and put it into message body if this option is false to support
+         * reading the stream multiple times. If you use Servlet to bridge/proxy
+         * an endpoint then consider enabling this option to improve
+         * performance, in case you do not need to read the message payload
+         * multiple times. The http/http4 producer will by default cache the
+         * response body stream. If setting this option to true, then the
+         * producers will not cache the response body stream but use the
+         * response stream as-is as the message body. The option will be
+         * converted to a boolean type.
+         */
+        public T disableStreamCache(String disableStreamCache) {
+            this.properties.put("disableStreamCache", disableStreamCache);
+            return (T) this;
+        }
+        /**
          * To use a custom HeaderFilterStrategy to filter header to and from
          * Camel message. The option is a
          * org.apache.camel.spi.HeaderFilterStrategy type.
@@ -95,6 +134,15 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use a custom HeaderFilterStrategy to filter header to and from
+         * Camel message. The option will be converted to a
+         * org.apache.camel.spi.HeaderFilterStrategy type.
+         */
+        public T headerFilterStrategy(String headerFilterStrategy) {
+            this.properties.put("headerFilterStrategy", headerFilterStrategy);
+            return (T) this;
+        }
+        /**
          * To use a custom HttpBinding to control the mapping between Camel
          * message and HttpClient. The option is a
          * org.apache.camel.http.common.HttpBinding type.
@@ -104,6 +152,15 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use a custom HttpBinding to control the mapping between Camel
+         * message and HttpClient. The option will be converted to a
+         * org.apache.camel.http.common.HttpBinding type.
+         */
+        public T httpBinding(String httpBinding) {
+            this.properties.put("httpBinding", httpBinding);
+            return (T) this;
+        }
+        /**
          * If this option is false the Servlet will disable the HTTP streaming
          * and set the content-length header on the response. The option is a
          * boolean type.
@@ -113,6 +170,15 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (T) this;
         }
         /**
+         * If this option is false the Servlet will disable the HTTP streaming
+         * and set the content-length header on the response. The option will be
+         * converted to a boolean type.
+         */
+        public T chunked(String chunked) {
+            this.properties.put("chunked", chunked);
+            return (T) this;
+        }
+        /**
          * If enabled and an Exchange failed processing on the consumer side,
          * and if the caused Exception was send back serialized in the response
          * as a application/x-java-serialized-object content type. On the
@@ -128,6 +194,21 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (T) this;
         }
         /**
+         * If enabled and an Exchange failed processing on the consumer side,
+         * and if the caused Exception was send back serialized in the response
+         * as a application/x-java-serialized-object content type. On the
+         * producer side the exception will be deserialized and thrown as is,
+         * instead of the HttpOperationFailedException. The caused exception is
+         * required to be serialized. 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. The option will be converted to a boolean type.
+         */
+        public T transferException(String transferException) {
+            this.properties.put("transferException", transferException);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -137,6 +218,15 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * If this option is true then IN exchange Body of the exchange will be
          * mapped to HTTP body. Setting this to false will avoid the HTTP
          * mapping. The option is a boolean type.
@@ -146,6 +236,15 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (T) this;
         }
         /**
+         * If this option is true then IN exchange Body of the exchange will be
+         * mapped to HTTP body. Setting this to false will avoid the HTTP
+         * mapping. The option will be converted to a boolean type.
+         */
+        public T mapHttpMessageBody(String mapHttpMessageBody) {
+            this.properties.put("mapHttpMessageBody", mapHttpMessageBody);
+            return (T) this;
+        }
+        /**
          * If this option is true then IN exchange Form Encoded body of the
          * exchange will be mapped to HTTP. Setting this to false will avoid the
          * HTTP Form Encoded body mapping. The option is a boolean type.
@@ -156,6 +255,17 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (T) this;
         }
         /**
+         * If this option is true then IN exchange Form Encoded body of the
+         * exchange will be mapped to HTTP. Setting this to false will avoid the
+         * HTTP Form Encoded body mapping. The option will be converted to a
+         * boolean type.
+         */
+        public T mapHttpMessageFormUrlEncodedBody(
+                String mapHttpMessageFormUrlEncodedBody) {
+            this.properties.put("mapHttpMessageFormUrlEncodedBody", mapHttpMessageFormUrlEncodedBody);
+            return (T) this;
+        }
+        /**
          * If this option is true then IN exchange Headers of the exchange will
          * be mapped to HTTP headers. Setting this to false will avoid the HTTP
          * Headers mapping. The option is a boolean type.
@@ -165,6 +275,15 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (T) this;
         }
         /**
+         * If this option is true then IN exchange Headers of the exchange will
+         * be mapped to HTTP headers. Setting this to false will avoid the HTTP
+         * Headers mapping. The option will be converted to a boolean type.
+         */
+        public T mapHttpMessageHeaders(String mapHttpMessageHeaders) {
+            this.properties.put("mapHttpMessageHeaders", mapHttpMessageHeaders);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -173,6 +292,15 @@ public interface AtmosphereWebsocketEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class AtmosphereWebsocketConsumerBuilder
@@ -192,6 +320,14 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
+         * Configure the consumer to work in async mode. The option will be
+         * converted to a boolean type.
+         */
+        public AtmosphereWebsocketConsumerBuilder async(String async) {
+            this.properties.put("async", async);
+            return (AtmosphereWebsocketConsumerBuilder) this;
+        }
+        /**
          * Allows for bridging the consumer to the Camel routing Error Handler,
          * which mean any exceptions occurred while the consumer is trying to
          * pickup incoming messages, or the likes, will now be processed as a
@@ -206,6 +342,20 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public AtmosphereWebsocketConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (AtmosphereWebsocketConsumerBuilder) this;
+        }
+        /**
          * Used to only allow consuming if the HttpMethod matches, such as
          * GET/POST/PUT etc. Multiple methods can be specified separated by
          * comma. The option is a java.lang.String type.
@@ -226,6 +376,16 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
+         * Whether or not the consumer should try to find a target consumer by
+         * matching the URI prefix if no exact match is found. The option will
+         * be converted to a boolean type.
+         */
+        public AtmosphereWebsocketConsumerBuilder matchOnUriPrefix(
+                String matchOnUriPrefix) {
+            this.properties.put("matchOnUriPrefix", matchOnUriPrefix);
+            return (AtmosphereWebsocketConsumerBuilder) this;
+        }
+        /**
          * To use a custom buffer size on the javax.servlet.ServletResponse. The
          * option is a java.lang.Integer type.
          */
@@ -235,6 +395,15 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
+         * To use a custom buffer size on the javax.servlet.ServletResponse. The
+         * option will be converted to a java.lang.Integer type.
+         */
+        public AtmosphereWebsocketConsumerBuilder responseBufferSize(
+                String responseBufferSize) {
+            this.properties.put("responseBufferSize", responseBufferSize);
+            return (AtmosphereWebsocketConsumerBuilder) this;
+        }
+        /**
          * Name of the servlet to use. The option is a java.lang.String type.
          */
         public AtmosphereWebsocketConsumerBuilder servletName(String servletName) {
@@ -255,6 +424,20 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
+         * Whether to automatic bind multipart/form-data as attachments on the
+         * Camel Exchange. The options attachmentMultipartBinding=true and
+         * disableStreamCache=false cannot work together. Remove
+         * disableStreamCache to use AttachmentMultipartBinding. This is turn
+         * off by default as this may require servlet specific configuration to
+         * enable this when using Servlet's. The option will be converted to a
+         * boolean type.
+         */
+        public AtmosphereWebsocketConsumerBuilder attachmentMultipartBinding(
+                String attachmentMultipartBinding) {
+            this.properties.put("attachmentMultipartBinding", attachmentMultipartBinding);
+            return (AtmosphereWebsocketConsumerBuilder) this;
+        }
+        /**
          * Whether to eager check whether the HTTP requests has content if the
          * content-length header is 0 or not present. This can be turned on in
          * case HTTP clients do not send streamed data. The option is a boolean
@@ -266,6 +449,17 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
+         * Whether to eager check whether the HTTP requests has content if the
+         * content-length header is 0 or not present. This can be turned on in
+         * case HTTP clients do not send streamed data. The option will be
+         * converted to a boolean type.
+         */
+        public AtmosphereWebsocketConsumerBuilder eagerCheckContentAvailable(
+                String eagerCheckContentAvailable) {
+            this.properties.put("eagerCheckContentAvailable", eagerCheckContentAvailable);
+            return (AtmosphereWebsocketConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -278,6 +472,18 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public AtmosphereWebsocketConsumerBuilder exceptionHandler(
+                String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (AtmosphereWebsocketConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -287,6 +493,15 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public AtmosphereWebsocketConsumerBuilder exchangePattern(
+                String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (AtmosphereWebsocketConsumerBuilder) this;
+        }
+        /**
          * Whitelist of accepted filename extensions for accepting uploaded
          * files. Multiple extensions can be separated by comma, such as
          * txt,xml. The option is a java.lang.String type.
@@ -306,6 +521,16 @@ public interface AtmosphereWebsocketEndpointBuilder {
             return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
+         * Specifies whether to enable HTTP OPTIONS for this Servlet consumer.
+         * By default OPTIONS is turned off. The option will be converted to a
+         * boolean type.
+         */
+        public AtmosphereWebsocketConsumerBuilder optionsEnabled(
+                String optionsEnabled) {
+            this.properties.put("optionsEnabled", optionsEnabled);
+            return (AtmosphereWebsocketConsumerBuilder) this;
+        }
+        /**
          * Specifies whether to enable HTTP TRACE for this Servlet consumer. By
          * default TRACE is turned off. The option is a boolean type.
          */
@@ -314,6 +539,16 @@ public interface AtmosphereWebsocketEndpointBuilder {
             this.properties.put("traceEnabled", traceEnabled);
             return (AtmosphereWebsocketConsumerBuilder) this;
         }
+        /**
+         * Specifies whether to enable HTTP TRACE for this Servlet consumer. By
+         * default TRACE is turned off. The option will be converted to a
+         * boolean type.
+         */
+        public AtmosphereWebsocketConsumerBuilder traceEnabled(
+                String traceEnabled) {
+            this.properties.put("traceEnabled", traceEnabled);
+            return (AtmosphereWebsocketConsumerBuilder) this;
+        }
     }
 
     public static class AtmosphereWebsocketProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java
index 4d1af42..6777707 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java
@@ -61,6 +61,14 @@ public interface AtomEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether to add the feed object as a header. The option will be
+         * converted to a boolean type.
+         */
+        public T feedHeader(String feedHeader) {
+            this.properties.put("feedHeader", feedHeader);
+            return (T) this;
+        }
+        /**
          * Sets whether to use filtering or not of the entries. The option is a
          * boolean type.
          */
@@ -69,6 +77,14 @@ public interface AtomEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether to use filtering or not of the entries. The option will
+         * be converted to a boolean type.
+         */
+        public T filter(String filter) {
+            this.properties.put("filter", filter);
+            return (T) this;
+        }
+        /**
          * Sets the timestamp to be used for filtering entries from the atom
          * feeds. This options is only in conjunction with the splitEntries. The
          * option is a java.util.Date type.
@@ -78,6 +94,15 @@ public interface AtomEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets the timestamp to be used for filtering entries from the atom
+         * feeds. This options is only in conjunction with the splitEntries. The
+         * option will be converted to a java.util.Date type.
+         */
+        public T lastUpdate(String lastUpdate) {
+            this.properties.put("lastUpdate", lastUpdate);
+            return (T) this;
+        }
+        /**
          * Sets the password to be used for basic authentication when polling
          * from a HTTP feed. The option is a java.lang.String type.
          */
@@ -94,6 +119,14 @@ public interface AtomEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether to sort entries by published date. Only works when
+         * splitEntries = true. The option will be converted to a boolean type.
+         */
+        public T sortEntries(String sortEntries) {
+            this.properties.put("sortEntries", sortEntries);
+            return (T) this;
+        }
+        /**
          * Sets whether or not entries should be sent individually or whether
          * the entire feed should be sent as a single message. The option is a
          * boolean type.
@@ -103,6 +136,15 @@ public interface AtomEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether or not entries should be sent individually or whether
+         * the entire feed should be sent as a single message. The option will
+         * be converted to a boolean type.
+         */
+        public T splitEntries(String splitEntries) {
+            this.properties.put("splitEntries", splitEntries);
+            return (T) this;
+        }
+        /**
          * Sets whether all entries identified in a single feed poll should be
          * delivered immediately. If true, only one entry is processed per
          * consumer.delay. Only applicable when splitEntries = true. The option
@@ -113,6 +155,16 @@ public interface AtomEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether all entries identified in a single feed poll should be
+         * delivered immediately. If true, only one entry is processed per
+         * consumer.delay. Only applicable when splitEntries = true. The option
+         * will be converted to a boolean type.
+         */
+        public T throttleEntries(String throttleEntries) {
+            this.properties.put("throttleEntries", throttleEntries);
+            return (T) this;
+        }
+        /**
          * Sets the username to be used for basic authentication when polling
          * from a HTTP feed. The option is a java.lang.String type.
          */
@@ -130,6 +182,15 @@ public interface AtomEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -138,6 +199,15 @@ public interface AtomEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class AtomConsumerBuilder
@@ -162,6 +232,19 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public AtomConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option is a
          * boolean type.
@@ -172,6 +255,16 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * If the polling consumer did not poll any files, you can enable this
+         * option to send an empty message (no body) instead. The option will be
+         * converted to a boolean type.
+         */
+        public AtomConsumerBuilder sendEmptyMessageWhenIdle(
+                String sendEmptyMessageWhenIdle) {
+            this.properties.put("sendEmptyMessageWhenIdle", sendEmptyMessageWhenIdle);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -184,6 +277,17 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public AtomConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -193,6 +297,14 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public AtomConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing
          * you to provide your custom implementation to control error handling
          * usually occurred during the poll operation before an Exchange have
@@ -205,6 +317,17 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing
+         * you to provide your custom implementation to control error handling
+         * usually occurred during the poll operation before an Exchange have
+         * been created and being routed in Camel. The option will be converted
+         * to a org.apache.camel.spi.PollingConsumerPollStrategy type.
+         */
+        public AtomConsumerBuilder pollStrategy(String pollStrategy) {
+            this.properties.put("pollStrategy", pollStrategy);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
          * is a int type.
@@ -215,6 +338,16 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * The number of subsequent error polls (failed due some error) that
+         * should happen before the backoffMultipler should kick-in. The option
+         * will be converted to a int type.
+         */
+        public AtomConsumerBuilder backoffErrorThreshold(
+                String backoffErrorThreshold) {
+            this.properties.put("backoffErrorThreshold", backoffErrorThreshold);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * The number of subsequent idle polls that should happen before the
          * backoffMultipler should kick-in. The option is a int type.
          */
@@ -223,6 +356,16 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * The number of subsequent idle polls that should happen before the
+         * backoffMultipler should kick-in. The option will be converted to a
+         * int type.
+         */
+        public AtomConsumerBuilder backoffIdleThreshold(
+                String backoffIdleThreshold) {
+            this.properties.put("backoffIdleThreshold", backoffIdleThreshold);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * To let the scheduled polling consumer backoff if there has been a
          * number of subsequent idles/errors in a row. The multiplier is then
          * the number of polls that will be skipped before the next actual
@@ -235,6 +378,18 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * To let the scheduled polling consumer backoff if there has been a
+         * number of subsequent idles/errors in a row. The multiplier is then
+         * the number of polls that will be skipped before the next actual
+         * attempt is happening again. When this option is in use then
+         * backoffIdleThreshold and/or backoffErrorThreshold must also be
+         * configured. The option will be converted to a int type.
+         */
+        public AtomConsumerBuilder backoffMultiplier(String backoffMultiplier) {
+            this.properties.put("backoffMultiplier", backoffMultiplier);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
@@ -244,6 +399,16 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * Milliseconds before the next poll. You can also specify time values
+         * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
+         * seconds), and 1h (1 hour). The option will be converted to a long
+         * type.
+         */
+        public AtomConsumerBuilder delay(String delay) {
+            this.properties.put("delay", delay);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
          * option is a boolean type.
@@ -253,6 +418,15 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * If greedy is enabled, then the ScheduledPollConsumer will run
+         * immediately again, if the previous run polled 1 or more messages. The
+         * option will be converted to a boolean type.
+         */
+        public AtomConsumerBuilder greedy(String greedy) {
+            this.properties.put("greedy", greedy);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
@@ -262,6 +436,16 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * Milliseconds before the first poll starts. You can also specify time
+         * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
+         * seconds), and 1h (1 hour). The option will be converted to a long
+         * type.
+         */
+        public AtomConsumerBuilder initialDelay(String initialDelay) {
+            this.properties.put("initialDelay", initialDelay);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
          * is a org.apache.camel.LoggingLevel type.
@@ -271,6 +455,15 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * The consumer logs a start/complete log line when it polls. This
+         * option allows you to configure the logging level for that. The option
+         * will be converted to a org.apache.camel.LoggingLevel type.
+         */
+        public AtomConsumerBuilder runLoggingLevel(String runLoggingLevel) {
+            this.properties.put("runLoggingLevel", runLoggingLevel);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * Allows for configuring a custom/shared thread pool to use for the
          * consumer. By default each consumer has its own single threaded thread
          * pool. The option is a java.util.concurrent.ScheduledExecutorService
@@ -282,6 +475,17 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * Allows for configuring a custom/shared thread pool to use for the
+         * consumer. By default each consumer has its own single threaded thread
+         * pool. The option will be converted to a
+         * java.util.concurrent.ScheduledExecutorService type.
+         */
+        public AtomConsumerBuilder scheduledExecutorService(
+                String scheduledExecutorService) {
+            this.properties.put("scheduledExecutorService", scheduledExecutorService);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option is a
          * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
@@ -292,6 +496,15 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * To use a cron scheduler from either camel-spring or camel-quartz2
+         * component. The option will be converted to a
+         * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
+         */
+        public AtomConsumerBuilder scheduler(String scheduler) {
+            this.properties.put("scheduler", scheduler);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
          * java.util.Map<java.lang.String,java.lang.Object> type.
@@ -302,6 +515,16 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * To configure additional properties when using a custom scheduler or
+         * any of the Quartz2, Spring based scheduler. The option will be
+         * converted to a java.util.Map<java.lang.String,java.lang.Object> type.
+         */
+        public AtomConsumerBuilder schedulerProperties(
+                String schedulerProperties) {
+            this.properties.put("schedulerProperties", schedulerProperties);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * Whether the scheduler should be auto started. The option is a boolean
          * type.
          */
@@ -310,6 +533,14 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * Whether the scheduler should be auto started. The option will be
+         * converted to a boolean type.
+         */
+        public AtomConsumerBuilder startScheduler(String startScheduler) {
+            this.properties.put("startScheduler", startScheduler);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * Time unit for initialDelay and delay options. The option is a
          * java.util.concurrent.TimeUnit type.
          */
@@ -318,6 +549,14 @@ public interface AtomEndpointBuilder {
             return (AtomConsumerBuilder) this;
         }
         /**
+         * Time unit for initialDelay and delay options. The option will be
+         * converted to a java.util.concurrent.TimeUnit type.
+         */
+        public AtomConsumerBuilder timeUnit(String timeUnit) {
+            this.properties.put("timeUnit", timeUnit);
+            return (AtomConsumerBuilder) this;
+        }
+        /**
          * Controls if fixed delay or fixed rate is used. See
          * ScheduledExecutorService in JDK for details. The option is a boolean
          * type.
@@ -326,6 +565,15 @@ public interface AtomEndpointBuilder {
             this.properties.put("useFixedDelay", useFixedDelay);
             return (AtomConsumerBuilder) this;
         }
+        /**
+         * Controls if fixed delay or fixed rate is used. See
+         * ScheduledExecutorService in JDK for details. The option will be
+         * converted to a boolean type.
+         */
+        public AtomConsumerBuilder useFixedDelay(String useFixedDelay) {
+            this.properties.put("useFixedDelay", useFixedDelay);
+            return (AtomConsumerBuilder) this;
+        }
     }
     public default AtomConsumerBuilder fromAtom(String path) {
         return new AtomConsumerBuilder(path);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java
index 9dafbc9..a61c9de 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java
@@ -56,6 +56,14 @@ public interface AtomixMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The Atomix instance to use. The option will be converted to a
+         * io.atomix.Atomix type.
+         */
+        public T atomix(String atomix) {
+            this.properties.put("atomix", atomix);
+            return (T) this;
+        }
+        /**
          * The Atomix configuration uri. The option is a java.lang.String type.
          */
         public T configurationUri(String configurationUri) {
@@ -71,6 +79,14 @@ public interface AtomixMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The default action. The option will be converted to a
+         * org.apache.camel.component.atomix.client.map.AtomixMap.Action type.
+         */
+        public T defaultAction(String defaultAction) {
+            this.properties.put("defaultAction", defaultAction);
+            return (T) this;
+        }
+        /**
          * The key to use if none is set in the header or to listen for events
          * for a specific key. The option is a java.lang.Object type.
          */
@@ -79,6 +95,15 @@ public interface AtomixMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The key to use if none is set in the header or to listen for events
+         * for a specific key. The option will be converted to a
+         * java.lang.Object type.
+         */
+        public T key(String key) {
+            this.properties.put("key", key);
+            return (T) this;
+        }
+        /**
          * The address of the nodes composing the cluster. The option is a
          * java.lang.String type.
          */
@@ -87,6 +112,14 @@ public interface AtomixMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The address of the nodes composing the cluster. The option will be
+         * converted to a java.lang.String type.
+         */
+        public T nodes(String nodes) {
+            this.properties.put("nodes", nodes);
+            return (T) this;
+        }
+        /**
          * The header that wil carry the result. The option is a
          * java.lang.String type.
          */
@@ -103,6 +136,14 @@ public interface AtomixMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets the Atomix transport. The option will be converted to a
+         * io.atomix.catalyst.transport.Transport type.
+         */
+        public T transport(String transport) {
+            this.properties.put("transport", transport);
+            return (T) this;
+        }
+        /**
          * The resource ttl. The option is a long type.
          */
         public T ttl(long ttl) {
@@ -110,6 +151,13 @@ public interface AtomixMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The resource ttl. The option will be converted to a long type.
+         */
+        public T ttl(String ttl) {
+            this.properties.put("ttl", ttl);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -119,6 +167,15 @@ public interface AtomixMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * The cluster wide default resource configuration. The option is a
          * java.util.Properties type.
          */
@@ -127,6 +184,14 @@ public interface AtomixMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The cluster wide default resource configuration. The option will be
+         * converted to a java.util.Properties type.
+         */
+        public T defaultResourceConfig(String defaultResourceConfig) {
+            this.properties.put("defaultResourceConfig", defaultResourceConfig);
+            return (T) this;
+        }
+        /**
          * The local default resource options. The option is a
          * java.util.Properties type.
          */
@@ -135,6 +200,14 @@ public interface AtomixMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The local default resource options. The option will be converted to a
+         * java.util.Properties type.
+         */
+        public T defaultResourceOptions(String defaultResourceOptions) {
+            this.properties.put("defaultResourceOptions", defaultResourceOptions);
+            return (T) this;
+        }
+        /**
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
          * generated ID thus the local one is ignored. The option is a boolean
@@ -145,6 +218,16 @@ public interface AtomixMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets if the local member should join groups as PersistentMember or
+         * not. If set to ephemeral the local member will receive an auto
+         * generated ID thus the local one is ignored. The option will be
+         * converted to a boolean type.
+         */
+        public T ephemeral(String ephemeral) {
+            this.properties.put("ephemeral", ephemeral);
+            return (T) this;
+        }
+        /**
          * The read consistency level. The option is a
          * io.atomix.resource.ReadConsistency type.
          */
@@ -153,6 +236,14 @@ public interface AtomixMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The read consistency level. The option will be converted to a
+         * io.atomix.resource.ReadConsistency type.
+         */
+        public T readConsistency(String readConsistency) {
+            this.properties.put("readConsistency", readConsistency);
+            return (T) this;
+        }
+        /**
          * Cluster wide resources configuration. The option is a
          * java.util.Map<java.lang.String,java.util.Properties> type.
          */
@@ -161,6 +252,14 @@ public interface AtomixMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * Cluster wide resources configuration. The option will be converted to
+         * a java.util.Map<java.lang.String,java.util.Properties> type.
+         */
+        public T resourceConfigs(String resourceConfigs) {
+            this.properties.put("resourceConfigs", resourceConfigs);
+            return (T) this;
+        }
+        /**
          * Local resources configurations. The option is a
          * java.util.Map<java.lang.String,java.util.Properties> type.
          */
@@ -169,6 +268,14 @@ public interface AtomixMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * Local resources configurations. The option will be converted to a
+         * java.util.Map<java.lang.String,java.util.Properties> type.
+         */
+        public T resourceOptions(String resourceOptions) {
+            this.properties.put("resourceOptions", resourceOptions);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -177,6 +284,15 @@ public interface AtomixMapEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class AtomixMapConsumerBuilder
@@ -202,6 +318,20 @@ public interface AtomixMapEndpointBuilder {
             return (AtomixMapConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public AtomixMapConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (AtomixMapConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -214,6 +344,17 @@ public interface AtomixMapEndpointBuilder {
             return (AtomixMapConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public AtomixMapConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (AtomixMapConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -222,6 +363,14 @@ public interface AtomixMapEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (AtomixMapConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public AtomixMapConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (AtomixMapConsumerBuilder) this;
+        }
     }
 
     public static class AtomixMapProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java
index 8a849e8..9985d1b 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java
@@ -56,6 +56,14 @@ public interface AtomixMessagingEndpointBuilder {
             return (T) this;
         }
         /**
+         * The Atomix instance to use. The option will be converted to a
+         * io.atomix.Atomix type.
+         */
+        public T atomix(String atomix) {
+            this.properties.put("atomix", atomix);
+            return (T) this;
+        }
+        /**
          * The broadcast type. The option is a
          * org.apache.camel.component.atomix.client.messaging.AtomixMessaging.BroadcastType type.
          */
@@ -64,6 +72,14 @@ public interface AtomixMessagingEndpointBuilder {
             return (T) this;
         }
         /**
+         * The broadcast type. The option will be converted to a
+         * org.apache.camel.component.atomix.client.messaging.AtomixMessaging.BroadcastType type.
+         */
+        public T broadcastType(String broadcastType) {
+            this.properties.put("broadcastType", broadcastType);
+            return (T) this;
+        }
+        /**
          * The messaging channel name. The option is a java.lang.String type.
          */
         public T channelName(String channelName) {
@@ -86,6 +102,14 @@ public interface AtomixMessagingEndpointBuilder {
             return (T) this;
         }
         /**
+         * The default action. The option will be converted to a
+         * org.apache.camel.component.atomix.client.messaging.AtomixMessaging.Action type.
+         */
+        public T defaultAction(String defaultAction) {
+            this.properties.put("defaultAction", defaultAction);
+            return (T) this;
+        }
+        /**
          * The Atomix Group member name. The option is a java.lang.String type.
          */
         public T memberName(String memberName) {
@@ -101,6 +125,14 @@ public interface AtomixMessagingEndpointBuilder {
             return (T) this;
         }
         /**
+         * The address of the nodes composing the cluster. The option will be
+         * converted to a java.lang.String type.
+         */
+        public T nodes(String nodes) {
+            this.properties.put("nodes", nodes);
+            return (T) this;
+        }
+        /**
          * The header that wil carry the result. The option is a
          * java.lang.String type.
          */
@@ -117,6 +149,14 @@ public interface AtomixMessagingEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets the Atomix transport. The option will be converted to a
+         * io.atomix.catalyst.transport.Transport type.
+         */
+        public T transport(String transport) {
+            this.properties.put("transport", transport);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -126,6 +166,15 @@ public interface AtomixMessagingEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * The cluster wide default resource configuration. The option is a
          * java.util.Properties type.
          */
@@ -134,6 +183,14 @@ public interface AtomixMessagingEndpointBuilder {
             return (T) this;
         }
         /**
+         * The cluster wide default resource configuration. The option will be
+         * converted to a java.util.Properties type.
+         */
+        public T defaultResourceConfig(String defaultResourceConfig) {
+            this.properties.put("defaultResourceConfig", defaultResourceConfig);
+            return (T) this;
+        }
+        /**
          * The local default resource options. The option is a
          * java.util.Properties type.
          */
@@ -142,6 +199,14 @@ public interface AtomixMessagingEndpointBuilder {
             return (T) this;
         }
         /**
+         * The local default resource options. The option will be converted to a
+         * java.util.Properties type.
+         */
+        public T defaultResourceOptions(String defaultResourceOptions) {
+            this.properties.put("defaultResourceOptions", defaultResourceOptions);
+            return (T) this;
+        }
+        /**
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
          * generated ID thus the local one is ignored. The option is a boolean
@@ -152,6 +217,16 @@ public interface AtomixMessagingEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets if the local member should join groups as PersistentMember or
+         * not. If set to ephemeral the local member will receive an auto
+         * generated ID thus the local one is ignored. The option will be
+         * converted to a boolean type.
+         */
+        public T ephemeral(String ephemeral) {
+            this.properties.put("ephemeral", ephemeral);
+            return (T) this;
+        }
+        /**
          * The read consistency level. The option is a
          * io.atomix.resource.ReadConsistency type.
          */
@@ -160,6 +235,14 @@ public interface AtomixMessagingEndpointBuilder {
             return (T) this;
         }
         /**
+         * The read consistency level. The option will be converted to a
+         * io.atomix.resource.ReadConsistency type.
+         */
+        public T readConsistency(String readConsistency) {
+            this.properties.put("readConsistency", readConsistency);
+            return (T) this;
+        }
+        /**
          * Cluster wide resources configuration. The option is a
          * java.util.Map<java.lang.String,java.util.Properties> type.
          */
@@ -168,6 +251,14 @@ public interface AtomixMessagingEndpointBuilder {
             return (T) this;
         }
         /**
+         * Cluster wide resources configuration. The option will be converted to
+         * a java.util.Map<java.lang.String,java.util.Properties> type.
+         */
+        public T resourceConfigs(String resourceConfigs) {
+            this.properties.put("resourceConfigs", resourceConfigs);
+            return (T) this;
+        }
+        /**
          * Local resources configurations. The option is a
          * java.util.Map<java.lang.String,java.util.Properties> type.
          */
@@ -176,6 +267,14 @@ public interface AtomixMessagingEndpointBuilder {
             return (T) this;
         }
         /**
+         * Local resources configurations. The option will be converted to a
+         * java.util.Map<java.lang.String,java.util.Properties> type.
+         */
+        public T resourceOptions(String resourceOptions) {
+            this.properties.put("resourceOptions", resourceOptions);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -184,6 +283,15 @@ public interface AtomixMessagingEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class AtomixMessagingConsumerBuilder
@@ -209,6 +317,20 @@ public interface AtomixMessagingEndpointBuilder {
             return (AtomixMessagingConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public AtomixMessagingConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (AtomixMessagingConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -221,6 +343,18 @@ public interface AtomixMessagingEndpointBuilder {
             return (AtomixMessagingConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public AtomixMessagingConsumerBuilder exceptionHandler(
+                String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (AtomixMessagingConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -229,6 +363,15 @@ public interface AtomixMessagingEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (AtomixMessagingConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public AtomixMessagingConsumerBuilder exchangePattern(
+                String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (AtomixMessagingConsumerBuilder) this;
+        }
     }
 
     public static class AtomixMessagingProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java
index 756ed85..3a34584 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java
@@ -57,6 +57,14 @@ public interface AtomixMultiMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The Atomix instance to use. The option will be converted to a
+         * io.atomix.Atomix type.
+         */
+        public T atomix(String atomix) {
+            this.properties.put("atomix", atomix);
+            return (T) this;
+        }
+        /**
          * The Atomix configuration uri. The option is a java.lang.String type.
          */
         public T configurationUri(String configurationUri) {
@@ -72,6 +80,14 @@ public interface AtomixMultiMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The default action. The option will be converted to a
+         * org.apache.camel.component.atomix.client.multimap.AtomixMultiMap.Action type.
+         */
+        public T defaultAction(String defaultAction) {
+            this.properties.put("defaultAction", defaultAction);
+            return (T) this;
+        }
+        /**
          * The key to use if none is set in the header or to listen for events
          * for a specific key. The option is a java.lang.Object type.
          */
@@ -80,6 +96,15 @@ public interface AtomixMultiMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The key to use if none is set in the header or to listen for events
+         * for a specific key. The option will be converted to a
+         * java.lang.Object type.
+         */
+        public T key(String key) {
+            this.properties.put("key", key);
+            return (T) this;
+        }
+        /**
          * The address of the nodes composing the cluster. The option is a
          * java.lang.String type.
          */
@@ -88,6 +113,14 @@ public interface AtomixMultiMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The address of the nodes composing the cluster. The option will be
+         * converted to a java.lang.String type.
+         */
+        public T nodes(String nodes) {
+            this.properties.put("nodes", nodes);
+            return (T) this;
+        }
+        /**
          * The header that wil carry the result. The option is a
          * java.lang.String type.
          */
@@ -104,6 +137,14 @@ public interface AtomixMultiMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets the Atomix transport. The option will be converted to a
+         * io.atomix.catalyst.transport.Transport type.
+         */
+        public T transport(String transport) {
+            this.properties.put("transport", transport);
+            return (T) this;
+        }
+        /**
          * The resource ttl. The option is a long type.
          */
         public T ttl(long ttl) {
@@ -111,6 +152,13 @@ public interface AtomixMultiMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The resource ttl. The option will be converted to a long type.
+         */
+        public T ttl(String ttl) {
+            this.properties.put("ttl", ttl);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -120,6 +168,15 @@ public interface AtomixMultiMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * The cluster wide default resource configuration. The option is a
          * java.util.Properties type.
          */
@@ -128,6 +185,14 @@ public interface AtomixMultiMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The cluster wide default resource configuration. The option will be
+         * converted to a java.util.Properties type.
+         */
+        public T defaultResourceConfig(String defaultResourceConfig) {
+            this.properties.put("defaultResourceConfig", defaultResourceConfig);
+            return (T) this;
+        }
+        /**
          * The local default resource options. The option is a
          * java.util.Properties type.
          */
@@ -136,6 +201,14 @@ public interface AtomixMultiMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The local default resource options. The option will be converted to a
+         * java.util.Properties type.
+         */
+        public T defaultResourceOptions(String defaultResourceOptions) {
+            this.properties.put("defaultResourceOptions", defaultResourceOptions);
+            return (T) this;
+        }
+        /**
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
          * generated ID thus the local one is ignored. The option is a boolean
@@ -146,6 +219,16 @@ public interface AtomixMultiMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets if the local member should join groups as PersistentMember or
+         * not. If set to ephemeral the local member will receive an auto
+         * generated ID thus the local one is ignored. The option will be
+         * converted to a boolean type.
+         */
+        public T ephemeral(String ephemeral) {
+            this.properties.put("ephemeral", ephemeral);
+            return (T) this;
+        }
+        /**
          * The read consistency level. The option is a
          * io.atomix.resource.ReadConsistency type.
          */
@@ -154,6 +237,14 @@ public interface AtomixMultiMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * The read consistency level. The option will be converted to a
+         * io.atomix.resource.ReadConsistency type.
+         */
+        public T readConsistency(String readConsistency) {
+            this.properties.put("readConsistency", readConsistency);
+            return (T) this;
+        }
+        /**
          * Cluster wide resources configuration. The option is a
          * java.util.Map<java.lang.String,java.util.Properties> type.
          */
@@ -162,6 +253,14 @@ public interface AtomixMultiMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * Cluster wide resources configuration. The option will be converted to
+         * a java.util.Map<java.lang.String,java.util.Properties> type.
+         */
+        public T resourceConfigs(String resourceConfigs) {
+            this.properties.put("resourceConfigs", resourceConfigs);
+            return (T) this;
+        }
+        /**
          * Local resources configurations. The option is a
          * java.util.Map<java.lang.String,java.util.Properties> type.
          */
@@ -170,6 +269,14 @@ public interface AtomixMultiMapEndpointBuilder {
             return (T) this;
         }
         /**
+         * Local resources configurations. The option will be converted to a
+         * java.util.Map<java.lang.String,java.util.Properties> type.
+         */
+        public T resourceOptions(String resourceOptions) {
+            this.properties.put("resourceOptions", resourceOptions);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -178,6 +285,15 @@ public interface AtomixMultiMapEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class AtomixMultiMapConsumerBuilder
@@ -203,6 +319,20 @@ public interface AtomixMultiMapEndpointBuilder {
             return (AtomixMultiMapConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public AtomixMultiMapConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (AtomixMultiMapConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -215,6 +345,18 @@ public interface AtomixMultiMapEndpointBuilder {
             return (AtomixMultiMapConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public AtomixMultiMapConsumerBuilder exceptionHandler(
+                String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (AtomixMultiMapConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -223,6 +365,15 @@ public interface AtomixMultiMapEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (AtomixMultiMapConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public AtomixMultiMapConsumerBuilder exchangePattern(
+                String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (AtomixMultiMapConsumerBuilder) this;
+        }
     }
 
     public static enum ReadConsistency {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java
index 998bcb8..47cbc6a 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java
@@ -56,6 +56,14 @@ public interface AtomixQueueEndpointBuilder {
             return (T) this;
         }
         /**
+         * The Atomix instance to use. The option will be converted to a
+         * io.atomix.Atomix type.
+         */
+        public T atomix(String atomix) {
+            this.properties.put("atomix", atomix);
+            return (T) this;
+        }
+        /**
          * The Atomix configuration uri. The option is a java.lang.String type.
          */
         public T configurationUri(String configurationUri) {
@@ -72,6 +80,15 @@ public interface AtomixQueueEndpointBuilder {
             return (T) this;
         }
         /**
+         * The default action. The option will be converted to a
+         * org.apache.camel.component.atomix.client.queue.AtomixQueue.Action
+         * type.
+         */
+        public T defaultAction(String defaultAction) {
+            this.properties.put("defaultAction", defaultAction);
+            return (T) this;
+        }
+        /**
          * The address of the nodes composing the cluster. The option is a
          * java.lang.String type.
          */
@@ -80,6 +97,14 @@ public interface AtomixQueueEndpointBuilder {
             return (T) this;
         }
         /**
+         * The address of the nodes composing the cluster. The option will be
+         * converted to a java.lang.String type.
+         */
+        public T nodes(String nodes) {
+            this.properties.put("nodes", nodes);
+            return (T) this;
+        }
+        /**
          * The header that wil carry the result. The option is a
          * java.lang.String type.
          */
@@ -96,6 +121,14 @@ public interface AtomixQueueEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets the Atomix transport. The option will be converted to a
+         * io.atomix.catalyst.transport.Transport type.
+         */
+        public T transport(String transport) {
+            this.properties.put("transport", transport);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -105,6 +138,15 @@ public interface AtomixQueueEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * The cluster wide default resource configuration. The option is a
          * java.util.Properties type.
          */
@@ -113,6 +155,14 @@ public interface AtomixQueueEndpointBuilder {
             return (T) this;
         }
         /**
+         * The cluster wide default resource configuration. The option will be
+         * converted to a java.util.Properties type.
+         */
+        public T defaultResourceConfig(String defaultResourceConfig) {
+            this.properties.put("defaultResourceConfig", defaultResourceConfig);
+            return (T) this;
+        }
+        /**
          * The local default resource options. The option is a
          * java.util.Properties type.
          */
@@ -121,6 +171,14 @@ public interface AtomixQueueEndpointBuilder {
             return (T) this;
         }
         /**
+         * The local default resource options. The option will be converted to a
+         * java.util.Properties type.
+         */
+        public T defaultResourceOptions(String defaultResourceOptions) {
+            this.properties.put("defaultResourceOptions", defaultResourceOptions);
+            return (T) this;
+        }
+        /**
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
          * generated ID thus the local one is ignored. The option is a boolean
@@ -131,6 +189,16 @@ public interface AtomixQueueEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets if the local member should join groups as PersistentMember or
+         * not. If set to ephemeral the local member will receive an auto
+         * generated ID thus the local one is ignored. The option will be
+         * converted to a boolean type.
+         */
+        public T ephemeral(String ephemeral) {
+            this.properties.put("ephemeral", ephemeral);
+            return (T) this;
+        }
+        /**
          * The read consistency level. The option is a
          * io.atomix.resource.ReadConsistency type.
          */
@@ -139,6 +207,14 @@ public interface AtomixQueueEndpointBuilder {
             return (T) this;
         }
         /**
+         * The read consistency level. The option will be converted to a
+         * io.atomix.resource.ReadConsistency type.
+         */
+        public T readConsistency(String readConsistency) {
+            this.properties.put("readConsistency", readConsistency);
+            return (T) this;
+        }
+        /**
          * Cluster wide resources configuration. The option is a
          * java.util.Map<java.lang.String,java.util.Properties> type.
          */
@@ -147,6 +223,14 @@ public interface AtomixQueueEndpointBuilder {
             return (T) this;
         }
         /**
+         * Cluster wide resources configuration. The option will be converted to
+         * a java.util.Map<java.lang.String,java.util.Properties> type.
+         */
+        public T resourceConfigs(String resourceConfigs) {
+            this.properties.put("resourceConfigs", resourceConfigs);
+            return (T) this;
+        }
+        /**
          * Local resources configurations. The option is a
          * java.util.Map<java.lang.String,java.util.Properties> type.
          */
@@ -155,6 +239,14 @@ public interface AtomixQueueEndpointBuilder {
             return (T) this;
         }
         /**
+         * Local resources configurations. The option will be converted to a
+         * java.util.Map<java.lang.String,java.util.Properties> type.
+         */
+        public T resourceOptions(String resourceOptions) {
+            this.properties.put("resourceOptions", resourceOptions);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -163,6 +255,15 @@ public interface AtomixQueueEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class AtomixQueueConsumerBuilder
@@ -188,6 +289,20 @@ public interface AtomixQueueEndpointBuilder {
             return (AtomixQueueConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public AtomixQueueConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (AtomixQueueConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -200,6 +315,18 @@ public interface AtomixQueueEndpointBuilder {
             return (AtomixQueueConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public AtomixQueueConsumerBuilder exceptionHandler(
+                String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (AtomixQueueConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -208,6 +335,14 @@ public interface AtomixQueueEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (AtomixQueueConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public AtomixQueueConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (AtomixQueueConsumerBuilder) this;
+        }
     }
 
     public static class AtomixQueueProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java
index ad68432..0a0ee60 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java
@@ -56,6 +56,14 @@ public interface AtomixSetEndpointBuilder {
             return (T) this;
         }
         /**
+         * The Atomix instance to use. The option will be converted to a
+         * io.atomix.Atomix type.
+         */
+        public T atomix(String atomix) {
+            this.properties.put("atomix", atomix);
+            return (T) this;
+        }
+        /**
          * The Atomix configuration uri. The option is a java.lang.String type.
          */
         public T configurationUri(String configurationUri) {
@@ -71,6 +79,14 @@ public interface AtomixSetEndpointBuilder {
             return (T) this;
         }
         /**
+         * The default action. The option will be converted to a
+         * org.apache.camel.component.atomix.client.set.AtomixSet.Action type.
+         */
+        public T defaultAction(String defaultAction) {
+            this.properties.put("defaultAction", defaultAction);
+            return (T) this;
+        }
+        /**
          * The address of the nodes composing the cluster. The option is a
          * java.lang.String type.
          */
@@ -79,6 +95,14 @@ public interface AtomixSetEndpointBuilder {
             return (T) this;
         }
         /**
+         * The address of the nodes composing the cluster. The option will be
+         * converted to a java.lang.String type.
+         */
+        public T nodes(String nodes) {
+            this.properties.put("nodes", nodes);
+            return (T) this;
+        }
+        /**
          * The header that wil carry the result. The option is a
          * java.lang.String type.
          */
@@ -95,6 +119,14 @@ public interface AtomixSetEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets the Atomix transport. The option will be converted to a
+         * io.atomix.catalyst.transport.Transport type.
+         */
+        public T transport(String transport) {
+            this.properties.put("transport", transport);
+            return (T) this;
+        }
+        /**
          * The resource ttl. The option is a long type.
          */
         public T ttl(long ttl) {
@@ -102,6 +134,13 @@ public interface AtomixSetEndpointBuilder {
             return (T) this;
         }
         /**
+         * The resource ttl. The option will be converted to a long type.
+         */
+        public T ttl(String ttl) {
+            this.properties.put("ttl", ttl);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -111,6 +150,15 @@ public interface AtomixSetEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * The cluster wide default resource configuration. The option is a
          * java.util.Properties type.
          */
@@ -119,6 +167,14 @@ public interface AtomixSetEndpointBuilder {
             return (T) this;
         }
         /**
+         * The cluster wide default resource configuration. The option will be
+         * converted to a java.util.Properties type.
+         */
+        public T defaultResourceConfig(String defaultResourceConfig) {
+            this.properties.put("defaultResourceConfig", defaultResourceConfig);
+            return (T) this;
+        }
+        /**
          * The local default resource options. The option is a
          * java.util.Properties type.
          */
@@ -127,6 +183,14 @@ public interface AtomixSetEndpointBuilder {
             return (T) this;
         }
         /**
+         * The local default resource options. The option will be converted to a
+         * java.util.Properties type.
+         */
+        public T defaultResourceOptions(String defaultResourceOptions) {
+            this.properties.put("defaultResourceOptions", defaultResourceOptions);
+            return (T) this;
+        }
+        /**
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
          * generated ID thus the local one is ignored. The option is a boolean
@@ -137,6 +201,16 @@ public interface AtomixSetEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets if the local member should join groups as PersistentMember or
+         * not. If set to ephemeral the local member will receive an auto
+         * generated ID thus the local one is ignored. The option will be
+         * converted to a boolean type.
+         */
+        public T ephemeral(String ephemeral) {
+            this.properties.put("ephemeral", ephemeral);
+            return (T) this;
+        }
+        /**
          * The read consistency level. The option is a
          * io.atomix.resource.ReadConsistency type.
          */
@@ -145,6 +219,14 @@ public interface AtomixSetEndpointBuilder {
             return (T) this;
         }
         /**
+         * The read consistency level. The option will be converted to a
+         * io.atomix.resource.ReadConsistency type.
+         */
+        public T readConsistency(String readConsistency) {
+            this.properties.put("readConsistency", readConsistency);
+            return (T) this;
+        }
+        /**
          * Cluster wide resources configuration. The option is a
          * java.util.Map<java.lang.String,java.util.Properties> type.
          */
@@ -153,6 +235,14 @@ public interface AtomixSetEndpointBuilder {
             return (T) this;
         }
         /**
+         * Cluster wide resources configuration. The option will be converted to
+         * a java.util.Map<java.lang.String,java.util.Properties> type.
+         */
+        public T resourceConfigs(String resourceConfigs) {
+            this.properties.put("resourceConfigs", resourceConfigs);
+            return (T) this;
+        }
+        /**
          * Local resources configurations. The option is a
          * java.util.Map<java.lang.String,java.util.Properties> type.
          */
@@ -161,6 +251,14 @@ public interface AtomixSetEndpointBuilder {
             return (T) this;
         }
         /**
+         * Local resources configurations. The option will be converted to a
+         * java.util.Map<java.lang.String,java.util.Properties> type.
+         */
+        public T resourceOptions(String resourceOptions) {
+            this.properties.put("resourceOptions", resourceOptions);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -169,6 +267,15 @@ public interface AtomixSetEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class AtomixSetConsumerBuilder
@@ -194,6 +301,20 @@ public interface AtomixSetEndpointBuilder {
             return (AtomixSetConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public AtomixSetConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (AtomixSetConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -206,6 +327,17 @@ public interface AtomixSetEndpointBuilder {
             return (AtomixSetConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public AtomixSetConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (AtomixSetConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -214,6 +346,14 @@ public interface AtomixSetEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (AtomixSetConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public AtomixSetConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (AtomixSetConsumerBuilder) this;
+        }
     }
 
     public static class AtomixSetProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java
index 60e0fda..3c8edf3 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java
@@ -56,6 +56,14 @@ public interface AtomixValueEndpointBuilder {
             return (T) this;
         }
         /**
+         * The Atomix instance to use. The option will be converted to a
+         * io.atomix.Atomix type.
+         */
+        public T atomix(String atomix) {
+            this.properties.put("atomix", atomix);
+            return (T) this;
+        }
+        /**
          * The Atomix configuration uri. The option is a java.lang.String type.
          */
         public T configurationUri(String configurationUri) {
@@ -72,6 +80,15 @@ public interface AtomixValueEndpointBuilder {
             return (T) this;
         }
         /**
+         * The default action. The option will be converted to a
+         * org.apache.camel.component.atomix.client.value.AtomixValue.Action
+         * type.
+         */
+        public T defaultAction(String defaultAction) {
+            this.properties.put("defaultAction", defaultAction);
+            return (T) this;
+        }
+        /**
          * The address of the nodes composing the cluster. The option is a
          * java.lang.String type.
          */
@@ -80,6 +97,14 @@ public interface AtomixValueEndpointBuilder {
             return (T) this;
         }
         /**
+         * The address of the nodes composing the cluster. The option will be
+         * converted to a java.lang.String type.
+         */
+        public T nodes(String nodes) {
+            this.properties.put("nodes", nodes);
+            return (T) this;
+        }
+        /**
          * The header that wil carry the result. The option is a
          * java.lang.String type.
          */
@@ -96,6 +121,14 @@ public interface AtomixValueEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets the Atomix transport. The option will be converted to a
+         * io.atomix.catalyst.transport.Transport type.
+         */
+        public T transport(String transport) {
+            this.properties.put("transport", transport);
+            return (T) this;
+        }
+        /**
          * The resource ttl. The option is a long type.
          */
         public T ttl(long ttl) {
@@ -103,6 +136,13 @@ public interface AtomixValueEndpointBuilder {
             return (T) this;
         }
         /**
+         * The resource ttl. The option will be converted to a long type.
+         */
+        public T ttl(String ttl) {
+            this.properties.put("ttl", ttl);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -112,6 +152,15 @@ public interface AtomixValueEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * The cluster wide default resource configuration. The option is a
          * java.util.Properties type.
          */
@@ -120,6 +169,14 @@ public interface AtomixValueEndpointBuilder {
             return (T) this;
         }
         /**
+         * The cluster wide default resource configuration. The option will be
+         * converted to a java.util.Properties type.
+         */
+        public T defaultResourceConfig(String defaultResourceConfig) {
+            this.properties.put("defaultResourceConfig", defaultResourceConfig);
+            return (T) this;
+        }
+        /**
          * The local default resource options. The option is a
          * java.util.Properties type.
          */
@@ -128,6 +185,14 @@ public interface AtomixValueEndpointBuilder {
             return (T) this;
         }
         /**
+         * The local default resource options. The option will be converted to a
+         * java.util.Properties type.
+         */
+        public T defaultResourceOptions(String defaultResourceOptions) {
+            this.properties.put("defaultResourceOptions", defaultResourceOptions);
+            return (T) this;
+        }
+        /**
          * Sets if the local member should join groups as PersistentMember or
          * not. If set to ephemeral the local member will receive an auto
          * generated ID thus the local one is ignored. The option is a boolean
@@ -138,6 +203,16 @@ public interface AtomixValueEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets if the local member should join groups as PersistentMember or
+         * not. If set to ephemeral the local member will receive an auto
+         * generated ID thus the local one is ignored. The option will be
+         * converted to a boolean type.
+         */
+        public T ephemeral(String ephemeral) {
+            this.properties.put("ephemeral", ephemeral);
+            return (T) this;
+        }
+        /**
          * The read consistency level. The option is a
          * io.atomix.resource.ReadConsistency type.
          */
@@ -146,6 +221,14 @@ public interface AtomixValueEndpointBuilder {
             return (T) this;
         }
         /**
+         * The read consistency level. The option will be converted to a
+         * io.atomix.resource.ReadConsistency type.
+         */
+        public T readConsistency(String readConsistency) {
+            this.properties.put("readConsistency", readConsistency);
+            return (T) this;
+        }
+        /**
          * Cluster wide resources configuration. The option is a
          * java.util.Map<java.lang.String,java.util.Properties> type.
          */
@@ -154,6 +237,14 @@ public interface AtomixValueEndpointBuilder {
             return (T) this;
         }
         /**
+         * Cluster wide resources configuration. The option will be converted to
+         * a java.util.Map<java.lang.String,java.util.Properties> type.
+         */
+        public T resourceConfigs(String resourceConfigs) {
+            this.properties.put("resourceConfigs", resourceConfigs);
+            return (T) this;
+        }
+        /**
          * Local resources configurations. The option is a
          * java.util.Map<java.lang.String,java.util.Properties> type.
          */
@@ -162,6 +253,14 @@ public interface AtomixValueEndpointBuilder {
             return (T) this;
         }
         /**
+         * Local resources configurations. The option will be converted to a
+         * java.util.Map<java.lang.String,java.util.Properties> type.
+         */
+        public T resourceOptions(String resourceOptions) {
+            this.properties.put("resourceOptions", resourceOptions);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -170,6 +269,15 @@ public interface AtomixValueEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class AtomixValueConsumerBuilder
@@ -195,6 +303,20 @@ public interface AtomixValueEndpointBuilder {
             return (AtomixValueConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public AtomixValueConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (AtomixValueConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -207,6 +329,18 @@ public interface AtomixValueEndpointBuilder {
             return (AtomixValueConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public AtomixValueConsumerBuilder exceptionHandler(
+                String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (AtomixValueConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -215,6 +349,14 @@ public interface AtomixValueEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (AtomixValueConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public AtomixValueConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (AtomixValueConsumerBuilder) this;
+        }
     }
 
     public static class AtomixValueProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpointBuilder.java
index bc77d77..1516430 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpointBuilder.java
@@ -47,6 +47,14 @@ public interface AvroEndpointBuilder {
             return (T) this;
         }
         /**
+         * Transport to use, can be either http or netty. The option will be
+         * converted to a org.apache.camel.component.avro.AvroTransport type.
+         */
+        public T transport(String transport) {
+            this.properties.put("transport", transport);
+            return (T) this;
+        }
+        /**
          * Port number to use. The option is a int type.
          */
         public T port(int port) {
@@ -54,6 +62,13 @@ public interface AvroEndpointBuilder {
             return (T) this;
         }
         /**
+         * Port number to use. The option will be converted to a int type.
+         */
+        public T port(String port) {
+            this.properties.put("port", port);
+            return (T) this;
+        }
+        /**
          * Hostname to use. The option is a java.lang.String type.
          */
         public T host(String host) {
@@ -76,6 +91,14 @@ public interface AvroEndpointBuilder {
             return (T) this;
         }
         /**
+         * Avro protocol to use. The option will be converted to a
+         * org.apache.avro.Protocol type.
+         */
+        public T protocol(String protocol) {
+            this.properties.put("protocol", protocol);
+            return (T) this;
+        }
+        /**
          * Avro protocol to use defined by the FQN class name. The option is a
          * java.lang.String type.
          */
@@ -100,6 +123,16 @@ public interface AvroEndpointBuilder {
             return (T) this;
         }
         /**
+         * If protocol object provided is reflection protocol. Should be used
+         * only with protocol parameter because for protocolClassName protocol
+         * type will be auto detected. The option will be converted to a boolean
+         * type.
+         */
+        public T reflectionProtocol(String reflectionProtocol) {
+            this.properties.put("reflectionProtocol", reflectionProtocol);
+            return (T) this;
+        }
+        /**
          * If true, consumer parameter won't be wrapped into array. Will fail if
          * protocol specifies more then 1 parameter for the message. The option
          * is a boolean type.
@@ -109,6 +142,15 @@ public interface AvroEndpointBuilder {
             return (T) this;
         }
         /**
+         * If true, consumer parameter won't be wrapped into array. Will fail if
+         * protocol specifies more then 1 parameter for the message. The option
+         * will be converted to a boolean type.
+         */
+        public T singleParameter(String singleParameter) {
+            this.properties.put("singleParameter", singleParameter);
+            return (T) this;
+        }
+        /**
          * Authority to use (username and password). The option is a
          * java.lang.String type.
          */
@@ -126,6 +168,15 @@ public interface AvroEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -134,6 +185,15 @@ public interface AvroEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class AvroConsumerBuilder
@@ -158,6 +218,19 @@ public interface AvroEndpointBuilder {
             return (AvroConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public AvroConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (AvroConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -170,6 +243,17 @@ public interface AvroEndpointBuilder {
             return (AvroConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public AvroConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (AvroConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -178,6 +262,14 @@ public interface AvroEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (AvroConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public AvroConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (AvroConsumerBuilder) this;
+        }
     }
 
     public static class AvroProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java
index d356bec..403af92 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java
@@ -63,6 +63,15 @@ public interface BeanEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * If enabled, Camel will cache the result of the first Registry
          * look-up. Cache can be enabled if the bean in the Registry is defined
          * as a singleton scope. The option is a java.lang.Boolean type.
@@ -72,6 +81,16 @@ public interface BeanEndpointBuilder {
             return (T) this;
         }
         /**
+         * If enabled, Camel will cache the result of the first Registry
+         * look-up. Cache can be enabled if the bean in the Registry is defined
+         * as a singleton scope. The option will be converted to a
+         * java.lang.Boolean type.
+         */
+        public T cache(String cache) {
+            this.properties.put("cache", cache);
+            return (T) this;
+        }
+        /**
          * Used for configuring additional properties on the bean. The option is
          * a java.util.Map<java.lang.String,java.lang.Object> type.
          */
@@ -80,6 +99,15 @@ public interface BeanEndpointBuilder {
             return (T) this;
         }
         /**
+         * Used for configuring additional properties on the bean. The option
+         * will be converted to a
+         * java.util.Map<java.lang.String,java.lang.Object> type.
+         */
+        public T parameters(String parameters) {
+            this.properties.put("parameters", parameters);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -88,6 +116,15 @@ public interface BeanEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class BeanProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpointBuilder.java
index bbecb82..53d756a 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpointBuilder.java
@@ -54,6 +54,14 @@ public interface BeanValidatorEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use a custom ConstraintValidatorFactory. The option will be
+         * converted to a javax.validation.ConstraintValidatorFactory type.
+         */
+        public T constraintValidatorFactory(String constraintValidatorFactory) {
+            this.properties.put("constraintValidatorFactory", constraintValidatorFactory);
+            return (T) this;
+        }
+        /**
          * To use a custom validation group. The option is a java.lang.String
          * type.
          */
@@ -70,6 +78,14 @@ public interface BeanValidatorEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use a custom MessageInterpolator. The option will be converted to
+         * a javax.validation.MessageInterpolator type.
+         */
+        public T messageInterpolator(String messageInterpolator) {
+            this.properties.put("messageInterpolator", messageInterpolator);
+            return (T) this;
+        }
+        /**
          * To use a custom TraversableResolver. The option is a
          * javax.validation.TraversableResolver type.
          */
@@ -78,6 +94,14 @@ public interface BeanValidatorEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use a custom TraversableResolver. The option will be converted to
+         * a javax.validation.TraversableResolver type.
+         */
+        public T traversableResolver(String traversableResolver) {
+            this.properties.put("traversableResolver", traversableResolver);
+            return (T) this;
+        }
+        /**
          * To use a a custom ValidationProviderResolver. The option is a
          * javax.validation.ValidationProviderResolver type.
          */
@@ -86,6 +110,14 @@ public interface BeanValidatorEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use a a custom ValidationProviderResolver. The option will be
+         * converted to a javax.validation.ValidationProviderResolver type.
+         */
+        public T validationProviderResolver(String validationProviderResolver) {
+            this.properties.put("validationProviderResolver", validationProviderResolver);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -95,6 +127,15 @@ public interface BeanValidatorEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -103,6 +144,15 @@ public interface BeanValidatorEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class BeanValidatorProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java
index bd1044b..90dfe0f 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java
@@ -68,6 +68,21 @@ public interface BeanstalkEndpointBuilder {
             return (T) this;
         }
         /**
+         * put means to put the job into Beanstalk. Job body is specified in the
+         * Camel message body. Job ID will be returned in beanstalk.jobId
+         * message header. delete, release, touch or bury expect Job ID in the
+         * message header beanstalk.jobId. Result of the operation is returned
+         * in beanstalk.result message header kick expects the number of jobs to
+         * kick in the message body and returns the number of jobs actually
+         * kicked out in the message header beanstalk.result. The option will be
+         * converted to a org.apache.camel.component.beanstalk.BeanstalkCommand
+         * type.
+         */
+        public T command(String command) {
+            this.properties.put("command", command);
+            return (T) this;
+        }
+        /**
          * Job delay in seconds. The option is a int type.
          */
         public T jobDelay(int jobDelay) {
@@ -75,6 +90,13 @@ public interface BeanstalkEndpointBuilder {
             return (T) this;
         }
         /**
+         * Job delay in seconds. The option will be converted to a int type.
+         */
+        public T jobDelay(String jobDelay) {
+            this.properties.put("jobDelay", jobDelay);
+            return (T) this;
+        }
+        /**
          * Job priority. (0 is the highest, see Beanstalk protocol). The option
          * is a long type.
          */
@@ -83,6 +105,14 @@ public interface BeanstalkEndpointBuilder {
             return (T) this;
         }
         /**
+         * Job priority. (0 is the highest, see Beanstalk protocol). The option
+         * will be converted to a long type.
+         */
+        public T jobPriority(String jobPriority) {
+            this.properties.put("jobPriority", jobPriority);
+            return (T) this;
+        }
+        /**
          * Job time to run in seconds. (when 0, the beanstalkd daemon raises it
          * to 1 automatically, see Beanstalk protocol). The option is a int
          * type.
@@ -92,6 +122,15 @@ public interface BeanstalkEndpointBuilder {
             return (T) this;
         }
         /**
+         * Job time to run in seconds. (when 0, the beanstalkd daemon raises it
+         * to 1 automatically, see Beanstalk protocol). The option will be
+         * converted to a int type.
+         */
+        public T jobTimeToRun(String jobTimeToRun) {
+            this.properties.put("jobTimeToRun", jobTimeToRun);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -101,6 +140,15 @@ public interface BeanstalkEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -109,6 +157,15 @@ public interface BeanstalkEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class BeanstalkConsumerBuilder
@@ -128,6 +185,14 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * Whether to wait for job to complete before ack the job from
+         * beanstalk. The option will be converted to a boolean type.
+         */
+        public BeanstalkConsumerBuilder awaitJob(String awaitJob) {
+            this.properties.put("awaitJob", awaitJob);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * Allows for bridging the consumer to the Camel routing Error Handler,
          * which mean any exceptions occurred while the consumer is trying to
          * pickup incoming messages, or the likes, will now be processed as a
@@ -142,6 +207,20 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public BeanstalkConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * Command to use when processing failed. The option is a
          * org.apache.camel.component.beanstalk.BeanstalkCommand type.
          */
@@ -150,6 +229,14 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * Command to use when processing failed. The option will be converted
+         * to a org.apache.camel.component.beanstalk.BeanstalkCommand type.
+         */
+        public BeanstalkConsumerBuilder onFailure(String onFailure) {
+            this.properties.put("onFailure", onFailure);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option is a
          * boolean type.
@@ -160,6 +247,16 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * If the polling consumer did not poll any files, you can enable this
+         * option to send an empty message (no body) instead. The option will be
+         * converted to a boolean type.
+         */
+        public BeanstalkConsumerBuilder sendEmptyMessageWhenIdle(
+                String sendEmptyMessageWhenIdle) {
+            this.properties.put("sendEmptyMessageWhenIdle", sendEmptyMessageWhenIdle);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * Whether to use blockIO. The option is a boolean type.
          */
         public BeanstalkConsumerBuilder useBlockIO(boolean useBlockIO) {
@@ -167,6 +264,14 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * Whether to use blockIO. The option will be converted to a boolean
+         * type.
+         */
+        public BeanstalkConsumerBuilder useBlockIO(String useBlockIO) {
+            this.properties.put("useBlockIO", useBlockIO);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -179,6 +284,17 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public BeanstalkConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -188,6 +304,14 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public BeanstalkConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing
          * you to provide your custom implementation to control error handling
          * usually occurred during the poll operation before an Exchange have
@@ -200,6 +324,17 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing
+         * you to provide your custom implementation to control error handling
+         * usually occurred during the poll operation before an Exchange have
+         * been created and being routed in Camel. The option will be converted
+         * to a org.apache.camel.spi.PollingConsumerPollStrategy type.
+         */
+        public BeanstalkConsumerBuilder pollStrategy(String pollStrategy) {
+            this.properties.put("pollStrategy", pollStrategy);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
          * is a int type.
@@ -210,6 +345,16 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * The number of subsequent error polls (failed due some error) that
+         * should happen before the backoffMultipler should kick-in. The option
+         * will be converted to a int type.
+         */
+        public BeanstalkConsumerBuilder backoffErrorThreshold(
+                String backoffErrorThreshold) {
+            this.properties.put("backoffErrorThreshold", backoffErrorThreshold);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * The number of subsequent idle polls that should happen before the
          * backoffMultipler should kick-in. The option is a int type.
          */
@@ -219,6 +364,16 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * The number of subsequent idle polls that should happen before the
+         * backoffMultipler should kick-in. The option will be converted to a
+         * int type.
+         */
+        public BeanstalkConsumerBuilder backoffIdleThreshold(
+                String backoffIdleThreshold) {
+            this.properties.put("backoffIdleThreshold", backoffIdleThreshold);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * To let the scheduled polling consumer backoff if there has been a
          * number of subsequent idles/errors in a row. The multiplier is then
          * the number of polls that will be skipped before the next actual
@@ -231,6 +386,19 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * To let the scheduled polling consumer backoff if there has been a
+         * number of subsequent idles/errors in a row. The multiplier is then
+         * the number of polls that will be skipped before the next actual
+         * attempt is happening again. When this option is in use then
+         * backoffIdleThreshold and/or backoffErrorThreshold must also be
+         * configured. The option will be converted to a int type.
+         */
+        public BeanstalkConsumerBuilder backoffMultiplier(
+                String backoffMultiplier) {
+            this.properties.put("backoffMultiplier", backoffMultiplier);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
@@ -240,6 +408,16 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * Milliseconds before the next poll. You can also specify time values
+         * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
+         * seconds), and 1h (1 hour). The option will be converted to a long
+         * type.
+         */
+        public BeanstalkConsumerBuilder delay(String delay) {
+            this.properties.put("delay", delay);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
          * option is a boolean type.
@@ -249,6 +427,15 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * If greedy is enabled, then the ScheduledPollConsumer will run
+         * immediately again, if the previous run polled 1 or more messages. The
+         * option will be converted to a boolean type.
+         */
+        public BeanstalkConsumerBuilder greedy(String greedy) {
+            this.properties.put("greedy", greedy);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
@@ -258,6 +445,16 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * Milliseconds before the first poll starts. You can also specify time
+         * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
+         * seconds), and 1h (1 hour). The option will be converted to a long
+         * type.
+         */
+        public BeanstalkConsumerBuilder initialDelay(String initialDelay) {
+            this.properties.put("initialDelay", initialDelay);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
          * is a org.apache.camel.LoggingLevel type.
@@ -268,6 +465,15 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * The consumer logs a start/complete log line when it polls. This
+         * option allows you to configure the logging level for that. The option
+         * will be converted to a org.apache.camel.LoggingLevel type.
+         */
+        public BeanstalkConsumerBuilder runLoggingLevel(String runLoggingLevel) {
+            this.properties.put("runLoggingLevel", runLoggingLevel);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * Allows for configuring a custom/shared thread pool to use for the
          * consumer. By default each consumer has its own single threaded thread
          * pool. The option is a java.util.concurrent.ScheduledExecutorService
@@ -279,6 +485,17 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * Allows for configuring a custom/shared thread pool to use for the
+         * consumer. By default each consumer has its own single threaded thread
+         * pool. The option will be converted to a
+         * java.util.concurrent.ScheduledExecutorService type.
+         */
+        public BeanstalkConsumerBuilder scheduledExecutorService(
+                String scheduledExecutorService) {
+            this.properties.put("scheduledExecutorService", scheduledExecutorService);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option is a
          * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
@@ -289,6 +506,15 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * To use a cron scheduler from either camel-spring or camel-quartz2
+         * component. The option will be converted to a
+         * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
+         */
+        public BeanstalkConsumerBuilder scheduler(String scheduler) {
+            this.properties.put("scheduler", scheduler);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
          * java.util.Map<java.lang.String,java.lang.Object> type.
@@ -299,6 +525,16 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * To configure additional properties when using a custom scheduler or
+         * any of the Quartz2, Spring based scheduler. The option will be
+         * converted to a java.util.Map<java.lang.String,java.lang.Object> type.
+         */
+        public BeanstalkConsumerBuilder schedulerProperties(
+                String schedulerProperties) {
+            this.properties.put("schedulerProperties", schedulerProperties);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * Whether the scheduler should be auto started. The option is a boolean
          * type.
          */
@@ -307,6 +543,14 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * Whether the scheduler should be auto started. The option will be
+         * converted to a boolean type.
+         */
+        public BeanstalkConsumerBuilder startScheduler(String startScheduler) {
+            this.properties.put("startScheduler", startScheduler);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * Time unit for initialDelay and delay options. The option is a
          * java.util.concurrent.TimeUnit type.
          */
@@ -315,6 +559,14 @@ public interface BeanstalkEndpointBuilder {
             return (BeanstalkConsumerBuilder) this;
         }
         /**
+         * Time unit for initialDelay and delay options. The option will be
+         * converted to a java.util.concurrent.TimeUnit type.
+         */
+        public BeanstalkConsumerBuilder timeUnit(String timeUnit) {
+            this.properties.put("timeUnit", timeUnit);
+            return (BeanstalkConsumerBuilder) this;
+        }
+        /**
          * Controls if fixed delay or fixed rate is used. See
          * ScheduledExecutorService in JDK for details. The option is a boolean
          * type.
@@ -323,6 +575,15 @@ public interface BeanstalkEndpointBuilder {
             this.properties.put("useFixedDelay", useFixedDelay);
             return (BeanstalkConsumerBuilder) this;
         }
+        /**
+         * Controls if fixed delay or fixed rate is used. See
+         * ScheduledExecutorService in JDK for details. The option will be
+         * converted to a boolean type.
+         */
+        public BeanstalkConsumerBuilder useFixedDelay(String useFixedDelay) {
+            this.properties.put("useFixedDelay", useFixedDelay);
+            return (BeanstalkConsumerBuilder) this;
+        }
     }
 
     public static class BeanstalkProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java
index 172bc6c..257226b 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java
@@ -56,6 +56,14 @@ public interface BlobServiceEndpointBuilder {
             return (T) this;
         }
         /**
+         * The blob service client. The option will be converted to a
+         * com.microsoft.azure.storage.blob.CloudBlob type.
+         */
+        public T azureBlobClient(String azureBlobClient) {
+            this.properties.put("azureBlobClient", azureBlobClient);
+            return (T) this;
+        }
+        /**
          * Set the blob offset for the upload or download operations, default is
          * 0. The option is a java.lang.Long type.
          */
@@ -64,6 +72,14 @@ public interface BlobServiceEndpointBuilder {
             return (T) this;
         }
         /**
+         * Set the blob offset for the upload or download operations, default is
+         * 0. The option will be converted to a java.lang.Long type.
+         */
+        public T blobOffset(String blobOffset) {
+            this.properties.put("blobOffset", blobOffset);
+            return (T) this;
+        }
+        /**
          * Set a blob type, 'blockblob' is default. The option is a
          * org.apache.camel.component.azure.blob.BlobType type.
          */
@@ -72,6 +88,14 @@ public interface BlobServiceEndpointBuilder {
             return (T) this;
         }
         /**
+         * Set a blob type, 'blockblob' is default. The option will be converted
+         * to a org.apache.camel.component.azure.blob.BlobType type.
+         */
+        public T blobType(String blobType) {
+            this.properties.put("blobType", blobType);
+            return (T) this;
+        }
+        /**
          * Close the stream after read or keep it open, default is true. The
          * option is a boolean type.
          */
@@ -80,6 +104,14 @@ public interface BlobServiceEndpointBuilder {
             return (T) this;
         }
         /**
+         * Close the stream after read or keep it open, default is true. The
+         * option will be converted to a boolean type.
+         */
+        public T closeStreamAfterRead(String closeStreamAfterRead) {
+            this.properties.put("closeStreamAfterRead", closeStreamAfterRead);
+            return (T) this;
+        }
+        /**
          * Set the storage credentials, required in most cases. The option is a
          * com.microsoft.azure.storage.StorageCredentials type.
          */
@@ -88,6 +120,15 @@ public interface BlobServiceEndpointBuilder {
             return (T) this;
         }
         /**
+         * Set the storage credentials, required in most cases. The option will
+         * be converted to a com.microsoft.azure.storage.StorageCredentials
+         * type.
+         */
+        public T credentials(String credentials) {
+            this.properties.put("credentials", credentials);
+            return (T) this;
+        }
+        /**
          * Set the data length for the download or page blob upload operations.
          * The option is a java.lang.Long type.
          */
@@ -96,6 +137,14 @@ public interface BlobServiceEndpointBuilder {
             return (T) this;
         }
         /**
+         * Set the data length for the download or page blob upload operations.
+         * The option will be converted to a java.lang.Long type.
+         */
+        public T dataLength(String dataLength) {
+            this.properties.put("dataLength", dataLength);
+            return (T) this;
+        }
+        /**
          * Set the file directory where the downloaded blobs will be saved to.
          * The option is a java.lang.String type.
          */
@@ -113,6 +162,15 @@ public interface BlobServiceEndpointBuilder {
             return (T) this;
         }
         /**
+         * Storage resources can be public for reading their content, if this
+         * property is enabled then the credentials do not have to be set. The
+         * option will be converted to a boolean type.
+         */
+        public T publicForRead(String publicForRead) {
+            this.properties.put("publicForRead", publicForRead);
+            return (T) this;
+        }
+        /**
          * Set the minimum read size in bytes when reading the blob content. The
          * option is a int type.
          */
@@ -121,6 +179,14 @@ public interface BlobServiceEndpointBuilder {
             return (T) this;
         }
         /**
+         * Set the minimum read size in bytes when reading the blob content. The
+         * option will be converted to a int type.
+         */
+        public T streamReadSize(String streamReadSize) {
+            this.properties.put("streamReadSize", streamReadSize);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -130,6 +196,15 @@ public interface BlobServiceEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -138,6 +213,15 @@ public interface BlobServiceEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class BlobServiceConsumerBuilder
@@ -163,6 +247,20 @@ public interface BlobServiceEndpointBuilder {
             return (BlobServiceConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public BlobServiceConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (BlobServiceConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -175,6 +273,18 @@ public interface BlobServiceEndpointBuilder {
             return (BlobServiceConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public BlobServiceConsumerBuilder exceptionHandler(
+                String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (BlobServiceConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -183,6 +293,14 @@ public interface BlobServiceEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (BlobServiceConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public BlobServiceConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (BlobServiceConsumerBuilder) this;
+        }
     }
 
     public static class BlobServiceProducerBuilder
@@ -203,6 +321,14 @@ public interface BlobServiceEndpointBuilder {
             return (BlobServiceProducerBuilder) this;
         }
         /**
+         * Set the blob meta-data. The option will be converted to a
+         * java.util.Map<java.lang.String,java.lang.String> type.
+         */
+        public BlobServiceProducerBuilder blobMetadata(String blobMetadata) {
+            this.properties.put("blobMetadata", blobMetadata);
+            return (BlobServiceProducerBuilder) this;
+        }
+        /**
          * Set a prefix which can be used for listing the blobs. The option is a
          * java.lang.String type.
          */
@@ -220,6 +346,15 @@ public interface BlobServiceEndpointBuilder {
             return (BlobServiceProducerBuilder) this;
         }
         /**
+         * Close the stream after write or keep it open, default is true. The
+         * option will be converted to a boolean type.
+         */
+        public BlobServiceProducerBuilder closeStreamAfterWrite(
+                String closeStreamAfterWrite) {
+            this.properties.put("closeStreamAfterWrite", closeStreamAfterWrite);
+            return (BlobServiceProducerBuilder) this;
+        }
+        /**
          * Blob service operation hint to the producer. The option is a
          * org.apache.camel.component.azure.blob.BlobServiceOperations type.
          */
@@ -229,6 +364,15 @@ public interface BlobServiceEndpointBuilder {
             return (BlobServiceProducerBuilder) this;
         }
         /**
+         * Blob service operation hint to the producer. The option will be
+         * converted to a
+         * org.apache.camel.component.azure.blob.BlobServiceOperations type.
+         */
+        public BlobServiceProducerBuilder operation(String operation) {
+            this.properties.put("operation", operation);
+            return (BlobServiceProducerBuilder) this;
+        }
+        /**
          * Set the size of the buffer for writing block and page blocks. The
          * option is a int type.
          */
@@ -237,6 +381,14 @@ public interface BlobServiceEndpointBuilder {
             return (BlobServiceProducerBuilder) this;
         }
         /**
+         * Set the size of the buffer for writing block and page blocks. The
+         * option will be converted to a int type.
+         */
+        public BlobServiceProducerBuilder streamWriteSize(String streamWriteSize) {
+            this.properties.put("streamWriteSize", streamWriteSize);
+            return (BlobServiceProducerBuilder) this;
+        }
+        /**
          * Specify if the flat or hierarchical blob listing should be used. The
          * option is a boolean type.
          */
@@ -244,6 +396,14 @@ public interface BlobServiceEndpointBuilder {
             this.properties.put("useFlatListing", useFlatListing);
             return (BlobServiceProducerBuilder) this;
         }
+        /**
+         * Specify if the flat or hierarchical blob listing should be used. The
+         * option will be converted to a boolean type.
+         */
+        public BlobServiceProducerBuilder useFlatListing(String useFlatListing) {
+            this.properties.put("useFlatListing", useFlatListing);
+            return (BlobServiceProducerBuilder) this;
+        }
     }
 
     public static enum BlobType {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpointBuilder.java
index 6fed5d1..678a1b4e 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpointBuilder.java
@@ -47,6 +47,14 @@ public interface BonitaEndpointBuilder {
             return (T) this;
         }
         /**
+         * Operation to use. The option will be converted to a
+         * org.apache.camel.component.bonita.util.BonitaOperation type.
+         */
+        public T operation(String operation) {
+            this.properties.put("operation", operation);
+            return (T) this;
+        }
+        /**
          * Hostname where Bonita engine runs. The option is a java.lang.String
          * type.
          */
@@ -80,6 +88,15 @@ public interface BonitaEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -89,6 +106,15 @@ public interface BonitaEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
+        /**
          * Password to authenticate to Bonita engine. The option is a
          * java.lang.String type.
          */
@@ -129,6 +155,20 @@ public interface BonitaEndpointBuilder {
             return (BonitaConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public BonitaConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (BonitaConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -141,6 +181,17 @@ public interface BonitaEndpointBuilder {
             return (BonitaConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public BonitaConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (BonitaConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -149,6 +200,14 @@ public interface BonitaEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (BonitaConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public BonitaConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (BonitaConsumerBuilder) this;
+        }
     }
 
     public static enum BonitaOperation {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java
index ca7a180..1322227 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java
@@ -49,6 +49,14 @@ public interface BoxEndpointBuilder {
             return (T) this;
         }
         /**
+         * What kind of operation to perform. The option will be converted to a
+         * org.apache.camel.component.box.internal.BoxApiName type.
+         */
+        public T apiName(String apiName) {
+            this.properties.put("apiName", apiName);
+            return (T) this;
+        }
+        /**
          * What sub operation to use for the selected operation. The option is a
          * java.lang.String type.
          */
@@ -97,6 +105,15 @@ public interface BoxEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Custom HTTP params for settings like proxy host. The option is a
          * java.util.Map<java.lang.String,java.lang.Object> type.
          */
@@ -105,6 +122,14 @@ public interface BoxEndpointBuilder {
             return (T) this;
         }
         /**
+         * Custom HTTP params for settings like proxy host. The option will be
+         * converted to a java.util.Map<java.lang.String,java.lang.Object> type.
+         */
+        public T httpParams(String httpParams) {
+            this.properties.put("httpParams", httpParams);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -114,6 +139,15 @@ public interface BoxEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
+        /**
          * Custom Access Token Cache for storing and retrieving access tokens.
          * The option is a com.box.sdk.IAccessTokenCache type.
          */
@@ -122,6 +156,14 @@ public interface BoxEndpointBuilder {
             return (T) this;
         }
         /**
+         * Custom Access Token Cache for storing and retrieving access tokens.
+         * The option will be converted to a com.box.sdk.IAccessTokenCache type.
+         */
+        public T accessTokenCache(String accessTokenCache) {
+            this.properties.put("accessTokenCache", accessTokenCache);
+            return (T) this;
+        }
+        /**
          * Box application client secret. The option is a java.lang.String type.
          */
         public T clientSecret(String clientSecret) {
@@ -138,6 +180,15 @@ public interface BoxEndpointBuilder {
             return (T) this;
         }
         /**
+         * The type of encryption algorithm for JWT. Supported Algorithms:
+         * RSA_SHA_256 RSA_SHA_384 RSA_SHA_512. The option will be converted to
+         * a com.box.sdk.EncryptionAlgorithm type.
+         */
+        public T encryptionAlgorithm(String encryptionAlgorithm) {
+            this.properties.put("encryptionAlgorithm", encryptionAlgorithm);
+            return (T) this;
+        }
+        /**
          * The maximum number of access tokens in cache. The option is a int
          * type.
          */
@@ -146,6 +197,14 @@ public interface BoxEndpointBuilder {
             return (T) this;
         }
         /**
+         * The maximum number of access tokens in cache. The option will be
+         * converted to a int type.
+         */
+        public T maxCacheEntries(String maxCacheEntries) {
+            this.properties.put("maxCacheEntries", maxCacheEntries);
+            return (T) this;
+        }
+        /**
          * The type of authentication for connection. Types of Authentication:
          * STANDARD_AUTHENTICATION - OAuth 2.0 (3-legged) SERVER_AUTHENTICATION
          * - OAuth 2.0 with JSON Web Tokens. The option is a java.lang.String
@@ -188,6 +247,15 @@ public interface BoxEndpointBuilder {
             return (T) this;
         }
         /**
+         * To configure security using SSLContextParameters. The option will be
+         * converted to a org.apache.camel.support.jsse.SSLContextParameters
+         * type.
+         */
+        public T sslContextParameters(String sslContextParameters) {
+            this.properties.put("sslContextParameters", sslContextParameters);
+            return (T) this;
+        }
+        /**
          * Box user name, MUST be provided. The option is a java.lang.String
          * type.
          */
@@ -227,6 +295,19 @@ public interface BoxEndpointBuilder {
             return (BoxConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public BoxConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (BoxConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -239,6 +320,17 @@ public interface BoxEndpointBuilder {
             return (BoxConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public BoxConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (BoxConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -247,6 +339,14 @@ public interface BoxEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (BoxConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public BoxConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (BoxConsumerBuilder) this;
+        }
     }
 
     public static class BoxProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BraintreeEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BraintreeEndpointBuilder.java
index 20bd91a..d330849 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BraintreeEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BraintreeEndpointBuilder.java
@@ -49,6 +49,14 @@ public interface BraintreeEndpointBuilder {
             return (T) this;
         }
         /**
+         * What kind of operation to perform. The option will be converted to a
+         * org.apache.camel.component.braintree.internal.BraintreeApiName type.
+         */
+        public T apiName(String apiName) {
+            this.properties.put("apiName", apiName);
+            return (T) this;
+        }
+        /**
          * What sub operation to use for the selected operation. The option is a
          * java.lang.String type.
          */
@@ -116,6 +124,15 @@ public interface BraintreeEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Set read timeout for http calls. The option is a java.lang.Integer
          * type.
          */
@@ -124,6 +141,14 @@ public interface BraintreeEndpointBuilder {
             return (T) this;
         }
         /**
+         * Set read timeout for http calls. The option will be converted to a
+         * java.lang.Integer type.
+         */
+        public T httpReadTimeout(String httpReadTimeout) {
+            this.properties.put("httpReadTimeout", httpReadTimeout);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -133,6 +158,15 @@ public interface BraintreeEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
+        /**
          * Set logging level for http calls, see java.util.logging.Level. The
          * option is a java.lang.String type.
          */
@@ -141,6 +175,14 @@ public interface BraintreeEndpointBuilder {
             return (T) this;
         }
         /**
+         * Set logging level for http calls, see java.util.logging.Level. The
+         * option will be converted to a java.lang.String type.
+         */
+        public T httpLogLevel(String httpLogLevel) {
+            this.properties.put("httpLogLevel", httpLogLevel);
+            return (T) this;
+        }
+        /**
          * The proxy host. The option is a java.lang.String type.
          */
         public T proxyHost(String proxyHost) {
@@ -154,6 +196,14 @@ public interface BraintreeEndpointBuilder {
             this.properties.put("proxyPort", proxyPort);
             return (T) this;
         }
+        /**
+         * The proxy port. The option will be converted to a java.lang.Integer
+         * type.
+         */
+        public T proxyPort(String proxyPort) {
+            this.properties.put("proxyPort", proxyPort);
+            return (T) this;
+        }
     }
 
     public static class BraintreeConsumerBuilder
@@ -179,6 +229,20 @@ public interface BraintreeEndpointBuilder {
             return (BraintreeConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public BraintreeConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (BraintreeConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -191,6 +255,17 @@ public interface BraintreeEndpointBuilder {
             return (BraintreeConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public BraintreeConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (BraintreeConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -199,6 +274,14 @@ public interface BraintreeEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (BraintreeConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public BraintreeConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (BraintreeConsumerBuilder) this;
+        }
     }
 
     public static class BraintreeProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BrowseEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BrowseEndpointBuilder.java
index eec3049..202a0df 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BrowseEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BrowseEndpointBuilder.java
@@ -57,6 +57,15 @@ public interface BrowseEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -65,6 +74,15 @@ public interface BrowseEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class BrowseConsumerBuilder
@@ -90,6 +108,20 @@ public interface BrowseEndpointBuilder {
             return (BrowseConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public BrowseConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (BrowseConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -102,6 +134,17 @@ public interface BrowseEndpointBuilder {
             return (BrowseConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public BrowseConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (BrowseConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -110,6 +153,14 @@ public interface BrowseEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (BrowseConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public BrowseConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (BrowseConsumerBuilder) this;
+        }
     }
 
     public static class BrowseProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMEndpointBuilder.java
index 280aba5..7811fd3 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMEndpointBuilder.java
@@ -65,6 +65,18 @@ public interface CMEndpointBuilder {
             return (T) this;
         }
         /**
+         * If it is a multipart message forces the max number. Message can be
+         * truncated. Technically the gateway will first check if a message is
+         * larger than 160 characters, if so, the message will be cut into
+         * multiple 153 characters parts limited by these parameters. The option
+         * will be converted to a
+         * (@javax.validation.constraints.Min(1L),@javax.validation.constraints.Max(8L) :: int) type.
+         */
+        public T defaultMaxNumberOfParts(String defaultMaxNumberOfParts) {
+            this.properties.put("defaultMaxNumberOfParts", defaultMaxNumberOfParts);
+            return (T) this;
+        }
+        /**
          * The unique token to use. The option is a
          * (@javax.validation.constraints.NotNull :: java.lang.String) type.
          */
@@ -81,6 +93,14 @@ public interface CMEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether to test the connection to the SMS Gateway on startup. The
+         * option will be converted to a boolean type.
+         */
+        public T testConnectionOnStartup(String testConnectionOnStartup) {
+            this.properties.put("testConnectionOnStartup", testConnectionOnStartup);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -90,6 +110,15 @@ public interface CMEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -98,6 +127,15 @@ public interface CMEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class CMProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMISEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMISEndpointBuilder.java
index bcfff67..3ffa203 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMISEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMISEndpointBuilder.java
@@ -54,6 +54,14 @@ public interface CMISEndpointBuilder {
             return (T) this;
         }
         /**
+         * Number of nodes to retrieve per page. The option will be converted to
+         * a int type.
+         */
+        public T pageSize(String pageSize) {
+            this.properties.put("pageSize", pageSize);
+            return (T) this;
+        }
+        /**
          * If set to true, the content of document node will be retrieved in
          * addition to the properties. The option is a boolean type.
          */
@@ -62,6 +70,15 @@ public interface CMISEndpointBuilder {
             return (T) this;
         }
         /**
+         * If set to true, the content of document node will be retrieved in
+         * addition to the properties. The option will be converted to a boolean
+         * type.
+         */
+        public T readContent(String readContent) {
+            this.properties.put("readContent", readContent);
+            return (T) this;
+        }
+        /**
          * Max number of nodes to read. The option is a int type.
          */
         public T readCount(int readCount) {
@@ -69,6 +86,14 @@ public interface CMISEndpointBuilder {
             return (T) this;
         }
         /**
+         * Max number of nodes to read. The option will be converted to a int
+         * type.
+         */
+        public T readCount(String readCount) {
+            this.properties.put("readCount", readCount);
+            return (T) this;
+        }
+        /**
          * The Id of the repository to use. If not specified the first available
          * repository is used. The option is a java.lang.String type.
          */
@@ -86,6 +111,15 @@ public interface CMISEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * To use a custom CMISSessionFacadeFactory to create the
          * CMISSessionFacade instances. The option is a
          * org.apache.camel.component.cmis.CMISSessionFacadeFactory type.
@@ -95,6 +129,15 @@ public interface CMISEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use a custom CMISSessionFacadeFactory to create the
+         * CMISSessionFacade instances. The option will be converted to a
+         * org.apache.camel.component.cmis.CMISSessionFacadeFactory type.
+         */
+        public T sessionFacadeFactory(String sessionFacadeFactory) {
+            this.properties.put("sessionFacadeFactory", sessionFacadeFactory);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -104,6 +147,15 @@ public interface CMISEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
+        /**
          * Password for the cmis repository. The option is a java.lang.String
          * type.
          */
@@ -143,6 +195,19 @@ public interface CMISEndpointBuilder {
             return (CMISConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public CMISConsumerBuilder bridgeErrorHandler(String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (CMISConsumerBuilder) this;
+        }
+        /**
          * The cmis query to execute against the repository. If not specified,
          * the consumer will retrieve every node from the content repository by
          * iterating the content tree recursively. The option is a
@@ -165,6 +230,17 @@ public interface CMISEndpointBuilder {
             return (CMISConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public CMISConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (CMISConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -173,6 +249,14 @@ public interface CMISEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (CMISConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public CMISConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (CMISConsumerBuilder) this;
+        }
     }
 
     public static class CMISProducerBuilder
@@ -192,6 +276,15 @@ public interface CMISEndpointBuilder {
             this.properties.put("queryMode", queryMode);
             return (CMISProducerBuilder) this;
         }
+        /**
+         * If true, will execute the cmis query from the message body and return
+         * result, otherwise will create a node in the cmis repository. The
+         * option will be converted to a boolean type.
+         */
+        public CMISProducerBuilder queryMode(String queryMode) {
+            this.properties.put("queryMode", queryMode);
+            return (CMISProducerBuilder) this;
+        }
     }
     public default CMISConsumerBuilder fromCMIS(String path) {
         return new CMISConsumerBuilder(path);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpointBuilder.java
index f6921c7..e07a553 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpointBuilder.java
@@ -54,6 +54,14 @@ public interface CaffeineCacheEndpointBuilder {
             return (T) this;
         }
         /**
+         * Configure if a cache need to be created if it does exist or can't be
+         * pre-configured. The option will be converted to a boolean type.
+         */
+        public T createCacheIfNotExist(String createCacheIfNotExist) {
+            this.properties.put("createCacheIfNotExist", createCacheIfNotExist);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -63,6 +71,15 @@ public interface CaffeineCacheEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * The cache key type, default java.lang.Object. The option is a
          * java.lang.String type.
          */
@@ -71,6 +88,14 @@ public interface CaffeineCacheEndpointBuilder {
             return (T) this;
         }
         /**
+         * The cache key type, default java.lang.Object. The option will be
+         * converted to a java.lang.String type.
+         */
+        public T keyType(String keyType) {
+            this.properties.put("keyType", keyType);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -80,6 +105,15 @@ public interface CaffeineCacheEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
+        /**
          * The cache value type, default java.lang.Object. The option is a
          * java.lang.String type.
          */
@@ -87,6 +121,14 @@ public interface CaffeineCacheEndpointBuilder {
             this.properties.put("valueType", valueType);
             return (T) this;
         }
+        /**
+         * The cache value type, default java.lang.Object. The option will be
+         * converted to a java.lang.String type.
+         */
+        public T valueType(String valueType) {
+            this.properties.put("valueType", valueType);
+            return (T) this;
+        }
     }
 
     public static class CaffeineCacheConsumerBuilder
@@ -112,6 +154,20 @@ public interface CaffeineCacheEndpointBuilder {
             return (CaffeineCacheConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public CaffeineCacheConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (CaffeineCacheConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -124,6 +180,18 @@ public interface CaffeineCacheEndpointBuilder {
             return (CaffeineCacheConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public CaffeineCacheConsumerBuilder exceptionHandler(
+                String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (CaffeineCacheConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -132,6 +200,15 @@ public interface CaffeineCacheEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (CaffeineCacheConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public CaffeineCacheConsumerBuilder exchangePattern(
+                String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (CaffeineCacheConsumerBuilder) this;
+        }
     }
 
     public static class CaffeineCacheProducerBuilder
@@ -160,6 +237,14 @@ public interface CaffeineCacheEndpointBuilder {
             return (CaffeineCacheProducerBuilder) this;
         }
         /**
+         * To configure an already instantiated cache to be used. The option
+         * will be converted to a com.github.benmanes.caffeine.cache.Cache type.
+         */
+        public CaffeineCacheProducerBuilder cache(String cache) {
+            this.properties.put("cache", cache);
+            return (CaffeineCacheProducerBuilder) this;
+        }
+        /**
          * To configure a CacheLoader in case of a LoadCache use. The option is
          * a com.github.benmanes.caffeine.cache.CacheLoader type.
          */
@@ -168,6 +253,15 @@ public interface CaffeineCacheEndpointBuilder {
             return (CaffeineCacheProducerBuilder) this;
         }
         /**
+         * To configure a CacheLoader in case of a LoadCache use. The option
+         * will be converted to a com.github.benmanes.caffeine.cache.CacheLoader
+         * type.
+         */
+        public CaffeineCacheProducerBuilder cacheLoader(String cacheLoader) {
+            this.properties.put("cacheLoader", cacheLoader);
+            return (CaffeineCacheProducerBuilder) this;
+        }
+        /**
          * Set the eviction Type for this cache. The option is a
          * org.apache.camel.component.caffeine.EvictionType type.
          */
@@ -177,6 +271,14 @@ public interface CaffeineCacheEndpointBuilder {
             return (CaffeineCacheProducerBuilder) this;
         }
         /**
+         * Set the eviction Type for this cache. The option will be converted to
+         * a org.apache.camel.component.caffeine.EvictionType type.
+         */
+        public CaffeineCacheProducerBuilder evictionType(String evictionType) {
+            this.properties.put("evictionType", evictionType);
+            return (CaffeineCacheProducerBuilder) this;
+        }
+        /**
          * Set the expire After Access Time in case of time based Eviction (in
          * seconds). The option is a int type.
          */
@@ -186,6 +288,15 @@ public interface CaffeineCacheEndpointBuilder {
             return (CaffeineCacheProducerBuilder) this;
         }
         /**
+         * Set the expire After Access Time in case of time based Eviction (in
+         * seconds). The option will be converted to a int type.
+         */
+        public CaffeineCacheProducerBuilder expireAfterAccessTime(
+                String expireAfterAccessTime) {
+            this.properties.put("expireAfterAccessTime", expireAfterAccessTime);
+            return (CaffeineCacheProducerBuilder) this;
+        }
+        /**
          * Set the expire After Access Write in case of time based Eviction (in
          * seconds). The option is a int type.
          */
@@ -195,6 +306,15 @@ public interface CaffeineCacheEndpointBuilder {
             return (CaffeineCacheProducerBuilder) this;
         }
         /**
+         * Set the expire After Access Write in case of time based Eviction (in
+         * seconds). The option will be converted to a int type.
+         */
+        public CaffeineCacheProducerBuilder expireAfterWriteTime(
+                String expireAfterWriteTime) {
+            this.properties.put("expireAfterWriteTime", expireAfterWriteTime);
+            return (CaffeineCacheProducerBuilder) this;
+        }
+        /**
          * Set the initial Capacity for the cache. The option is a int type.
          */
         public CaffeineCacheProducerBuilder initialCapacity(int initialCapacity) {
@@ -202,6 +322,15 @@ public interface CaffeineCacheEndpointBuilder {
             return (CaffeineCacheProducerBuilder) this;
         }
         /**
+         * Set the initial Capacity for the cache. The option will be converted
+         * to a int type.
+         */
+        public CaffeineCacheProducerBuilder initialCapacity(
+                String initialCapacity) {
+            this.properties.put("initialCapacity", initialCapacity);
+            return (CaffeineCacheProducerBuilder) this;
+        }
+        /**
          * To configure the default action key. If a key is set in the message
          * header, then the key from the header takes precedence. The option is
          * a java.lang.Object type.
@@ -211,6 +340,15 @@ public interface CaffeineCacheEndpointBuilder {
             return (CaffeineCacheProducerBuilder) this;
         }
         /**
+         * To configure the default action key. If a key is set in the message
+         * header, then the key from the header takes precedence. The option
+         * will be converted to a java.lang.Object type.
+         */
+        public CaffeineCacheProducerBuilder key(String key) {
+            this.properties.put("key", key);
+            return (CaffeineCacheProducerBuilder) this;
+        }
+        /**
          * Set the maximum size for the cache. The option is a int type.
          */
         public CaffeineCacheProducerBuilder maximumSize(int maximumSize) {
@@ -218,6 +356,14 @@ public interface CaffeineCacheEndpointBuilder {
             return (CaffeineCacheProducerBuilder) this;
         }
         /**
+         * Set the maximum size for the cache. The option will be converted to a
+         * int type.
+         */
+        public CaffeineCacheProducerBuilder maximumSize(String maximumSize) {
+            this.properties.put("maximumSize", maximumSize);
+            return (CaffeineCacheProducerBuilder) this;
+        }
+        /**
          * Set a specific removal Listener for the cache. The option is a
          * com.github.benmanes.caffeine.cache.RemovalListener type.
          */
@@ -227,6 +373,16 @@ public interface CaffeineCacheEndpointBuilder {
             return (CaffeineCacheProducerBuilder) this;
         }
         /**
+         * Set a specific removal Listener for the cache. The option will be
+         * converted to a com.github.benmanes.caffeine.cache.RemovalListener
+         * type.
+         */
+        public CaffeineCacheProducerBuilder removalListener(
+                String removalListener) {
+            this.properties.put("removalListener", removalListener);
+            return (CaffeineCacheProducerBuilder) this;
+        }
+        /**
          * Set a specific Stats Counter for the cache stats. The option is a
          * com.github.benmanes.caffeine.cache.stats.StatsCounter type.
          */
@@ -235,12 +391,29 @@ public interface CaffeineCacheEndpointBuilder {
             return (CaffeineCacheProducerBuilder) this;
         }
         /**
+         * Set a specific Stats Counter for the cache stats. The option will be
+         * converted to a com.github.benmanes.caffeine.cache.stats.StatsCounter
+         * type.
+         */
+        public CaffeineCacheProducerBuilder statsCounter(String statsCounter) {
+            this.properties.put("statsCounter", statsCounter);
+            return (CaffeineCacheProducerBuilder) this;
+        }
+        /**
          * To enable stats on the cache. The option is a boolean type.
          */
         public CaffeineCacheProducerBuilder statsEnabled(boolean statsEnabled) {
             this.properties.put("statsEnabled", statsEnabled);
             return (CaffeineCacheProducerBuilder) this;
         }
+        /**
+         * To enable stats on the cache. The option will be converted to a
+         * boolean type.
+         */
+        public CaffeineCacheProducerBuilder statsEnabled(String statsEnabled) {
+            this.properties.put("statsEnabled", statsEnabled);
+            return (CaffeineCacheProducerBuilder) this;
+        }
     }
 
     public static enum EvictionType {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpointBuilder.java
index df85803..b25b6c0 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpointBuilder.java
@@ -55,6 +55,14 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (T) this;
         }
         /**
+         * Configure if a cache need to be created if it does exist or can't be
+         * pre-configured. The option will be converted to a boolean type.
+         */
+        public T createCacheIfNotExist(String createCacheIfNotExist) {
+            this.properties.put("createCacheIfNotExist", createCacheIfNotExist);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -64,6 +72,15 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * The cache key type, default java.lang.Object. The option is a
          * java.lang.String type.
          */
@@ -72,6 +89,14 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (T) this;
         }
         /**
+         * The cache key type, default java.lang.Object. The option will be
+         * converted to a java.lang.String type.
+         */
+        public T keyType(String keyType) {
+            this.properties.put("keyType", keyType);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -81,6 +106,15 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
+        /**
          * The cache value type, default java.lang.Object. The option is a
          * java.lang.String type.
          */
@@ -88,6 +122,14 @@ public interface CaffeineLoadCacheEndpointBuilder {
             this.properties.put("valueType", valueType);
             return (T) this;
         }
+        /**
+         * The cache value type, default java.lang.Object. The option will be
+         * converted to a java.lang.String type.
+         */
+        public T valueType(String valueType) {
+            this.properties.put("valueType", valueType);
+            return (T) this;
+        }
     }
 
     public static class CaffeineLoadCacheConsumerBuilder
@@ -113,6 +155,20 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (CaffeineLoadCacheConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public CaffeineLoadCacheConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (CaffeineLoadCacheConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -125,6 +181,18 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (CaffeineLoadCacheConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public CaffeineLoadCacheConsumerBuilder exceptionHandler(
+                String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (CaffeineLoadCacheConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -133,6 +201,15 @@ public interface CaffeineLoadCacheEndpointBuilder {
             this.properties.put("exchangePattern", exchangePattern);
             return (CaffeineLoadCacheConsumerBuilder) this;
         }
+        /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public CaffeineLoadCacheConsumerBuilder exchangePattern(
+                String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (CaffeineLoadCacheConsumerBuilder) this;
+        }
     }
 
     public static class CaffeineLoadCacheProducerBuilder
@@ -161,6 +238,14 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
+         * To configure an already instantiated cache to be used. The option
+         * will be converted to a com.github.benmanes.caffeine.cache.Cache type.
+         */
+        public CaffeineLoadCacheProducerBuilder cache(String cache) {
+            this.properties.put("cache", cache);
+            return (CaffeineLoadCacheProducerBuilder) this;
+        }
+        /**
          * To configure a CacheLoader in case of a LoadCache use. The option is
          * a com.github.benmanes.caffeine.cache.CacheLoader type.
          */
@@ -169,6 +254,15 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
+         * To configure a CacheLoader in case of a LoadCache use. The option
+         * will be converted to a com.github.benmanes.caffeine.cache.CacheLoader
+         * type.
+         */
+        public CaffeineLoadCacheProducerBuilder cacheLoader(String cacheLoader) {
+            this.properties.put("cacheLoader", cacheLoader);
+            return (CaffeineLoadCacheProducerBuilder) this;
+        }
+        /**
          * Set the eviction Type for this cache. The option is a
          * org.apache.camel.component.caffeine.EvictionType type.
          */
@@ -178,6 +272,14 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
+         * Set the eviction Type for this cache. The option will be converted to
+         * a org.apache.camel.component.caffeine.EvictionType type.
+         */
+        public CaffeineLoadCacheProducerBuilder evictionType(String evictionType) {
+            this.properties.put("evictionType", evictionType);
+            return (CaffeineLoadCacheProducerBuilder) this;
+        }
+        /**
          * Set the expire After Access Time in case of time based Eviction (in
          * seconds). The option is a int type.
          */
@@ -187,6 +289,15 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
+         * Set the expire After Access Time in case of time based Eviction (in
+         * seconds). The option will be converted to a int type.
+         */
+        public CaffeineLoadCacheProducerBuilder expireAfterAccessTime(
+                String expireAfterAccessTime) {
+            this.properties.put("expireAfterAccessTime", expireAfterAccessTime);
+            return (CaffeineLoadCacheProducerBuilder) this;
+        }
+        /**
          * Set the expire After Access Write in case of time based Eviction (in
          * seconds). The option is a int type.
          */
@@ -196,6 +307,15 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
+         * Set the expire After Access Write in case of time based Eviction (in
+         * seconds). The option will be converted to a int type.
+         */
+        public CaffeineLoadCacheProducerBuilder expireAfterWriteTime(
+                String expireAfterWriteTime) {
+            this.properties.put("expireAfterWriteTime", expireAfterWriteTime);
+            return (CaffeineLoadCacheProducerBuilder) this;
+        }
+        /**
          * Set the initial Capacity for the cache. The option is a int type.
          */
         public CaffeineLoadCacheProducerBuilder initialCapacity(
@@ -204,6 +324,15 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
+         * Set the initial Capacity for the cache. The option will be converted
+         * to a int type.
+         */
+        public CaffeineLoadCacheProducerBuilder initialCapacity(
+                String initialCapacity) {
+            this.properties.put("initialCapacity", initialCapacity);
+            return (CaffeineLoadCacheProducerBuilder) this;
+        }
+        /**
          * To configure the default action key. If a key is set in the message
          * header, then the key from the header takes precedence. The option is
          * a java.lang.Object type.
@@ -213,6 +342,15 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
+         * To configure the default action key. If a key is set in the message
+         * header, then the key from the header takes precedence. The option
+         * will be converted to a java.lang.Object type.
+         */
+        public CaffeineLoadCacheProducerBuilder key(String key) {
+            this.properties.put("key", key);
+            return (CaffeineLoadCacheProducerBuilder) this;
+        }
+        /**
          * Set the maximum size for the cache. The option is a int type.
          */
         public CaffeineLoadCacheProducerBuilder maximumSize(int maximumSize) {
@@ -220,6 +358,14 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
+         * Set the maximum size for the cache. The option will be converted to a
+         * int type.
+         */
+        public CaffeineLoadCacheProducerBuilder maximumSize(String maximumSize) {
+            this.properties.put("maximumSize", maximumSize);
+            return (CaffeineLoadCacheProducerBuilder) this;
+        }
+        /**
          * Set a specific removal Listener for the cache. The option is a
          * com.github.benmanes.caffeine.cache.RemovalListener type.
          */
@@ -229,6 +375,16 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
+         * Set a specific removal Listener for the cache. The option will be
+         * converted to a com.github.benmanes.caffeine.cache.RemovalListener
+         * type.
+         */
+        public CaffeineLoadCacheProducerBuilder removalListener(
+                String removalListener) {
+            this.properties.put("removalListener", removalListener);
+            return (CaffeineLoadCacheProducerBuilder) this;
+        }
+        /**
          * Set a specific Stats Counter for the cache stats. The option is a
          * com.github.benmanes.caffeine.cache.stats.StatsCounter type.
          */
@@ -237,6 +393,15 @@ public interface CaffeineLoadCacheEndpointBuilder {
             return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
+         * Set a specific Stats Counter for the cache stats. The option will be
+         * converted to a com.github.benmanes.caffeine.cache.stats.StatsCounter
+         * type.
+         */
+        public CaffeineLoadCacheProducerBuilder statsCounter(String statsCounter) {
+            this.properties.put("statsCounter", statsCounter);
+            return (CaffeineLoadCacheProducerBuilder) this;
+        }
+        /**
          * To enable stats on the cache. The option is a boolean type.
          */
         public CaffeineLoadCacheProducerBuilder statsEnabled(
@@ -244,6 +409,14 @@ public interface CaffeineLoadCacheEndpointBuilder {
             this.properties.put("statsEnabled", statsEnabled);
             return (CaffeineLoadCacheProducerBuilder) this;
         }
+        /**
+         * To enable stats on the cache. The option will be converted to a
+         * boolean type.
+         */
+        public CaffeineLoadCacheProducerBuilder statsEnabled(String statsEnabled) {
+            this.properties.put("statsEnabled", statsEnabled);
+            return (CaffeineLoadCacheProducerBuilder) this;
+        }
     }
 
     public static enum EvictionType {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpointBuilder.java
index cd4ab79..8f23867 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpointBuilder.java
@@ -70,6 +70,14 @@ public interface CassandraEndpointBuilder {
             return (T) this;
         }
         /**
+         * Port number of cassansdra server(s). The option will be converted to
+         * a java.lang.Integer type.
+         */
+        public T port(String port) {
+            this.properties.put("port", port);
+            return (T) this;
+        }
+        /**
          * Keyspace to use. The option is a java.lang.String type.
          */
         public T keyspace(String keyspace) {
@@ -85,6 +93,15 @@ public interface CassandraEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use the Cluster instance (you would normally not use this option).
+         * The option will be converted to a com.datastax.driver.core.Cluster
+         * type.
+         */
+        public T cluster(String cluster) {
+            this.properties.put("cluster", cluster);
+            return (T) this;
+        }
+        /**
          * Cluster name. The option is a java.lang.String type.
          */
         public T clusterName(String clusterName) {
@@ -100,6 +117,14 @@ public interface CassandraEndpointBuilder {
             return (T) this;
         }
         /**
+         * Consistency level to use. The option will be converted to a
+         * com.datastax.driver.core.ConsistencyLevel type.
+         */
+        public T consistencyLevel(String consistencyLevel) {
+            this.properties.put("consistencyLevel", consistencyLevel);
+            return (T) this;
+        }
+        /**
          * CQL query to perform. Can be overridden with the message header with
          * key CamelCqlQuery. The option is a java.lang.String type.
          */
@@ -132,6 +157,14 @@ public interface CassandraEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether to use PreparedStatements or regular Statements. The option
+         * will be converted to a boolean type.
+         */
+        public T prepareStatements(String prepareStatements) {
+            this.properties.put("prepareStatements", prepareStatements);
+            return (T) this;
+        }
+        /**
          * To use a custom class that implements logic for converting ResultSet
          * into message body ALL, ONE, LIMIT_10, LIMIT_100... The option is a
          * java.lang.String type.
@@ -141,6 +174,15 @@ public interface CassandraEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use a custom class that implements logic for converting ResultSet
+         * into message body ALL, ONE, LIMIT_10, LIMIT_100... The option will be
+         * converted to a java.lang.String type.
+         */
+        public T resultSetConversionStrategy(String resultSetConversionStrategy) {
+            this.properties.put("resultSetConversionStrategy", resultSetConversionStrategy);
+            return (T) this;
+        }
+        /**
          * To use the Session instance (you would normally not use this option).
          * The option is a com.datastax.driver.core.Session type.
          */
@@ -149,6 +191,15 @@ public interface CassandraEndpointBuilder {
             return (T) this;
         }
         /**
+         * To use the Session instance (you would normally not use this option).
+         * The option will be converted to a com.datastax.driver.core.Session
+         * type.
+         */
+        public T session(String session) {
+            this.properties.put("session", session);
+            return (T) this;
+        }
+        /**
          * Username for session authentication. The option is a java.lang.String
          * type.
          */
@@ -166,6 +217,15 @@ public interface CassandraEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -174,6 +234,15 @@ public interface CassandraEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class CassandraConsumerBuilder
@@ -199,6 +268,20 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * Allows for bridging the consumer to the Camel routing Error Handler,
+         * which mean any exceptions occurred while the consumer is trying to
+         * pickup incoming messages, or the likes, will now be processed as a
+         * message and handled by the routing Error Handler. By default the
+         * consumer will use the org.apache.camel.spi.ExceptionHandler to deal
+         * with exceptions, that will be logged at WARN or ERROR level and
+         * ignored. The option will be converted to a boolean type.
+         */
+        public CassandraConsumerBuilder bridgeErrorHandler(
+                String bridgeErrorHandler) {
+            this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option is a
          * boolean type.
@@ -209,6 +292,16 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * If the polling consumer did not poll any files, you can enable this
+         * option to send an empty message (no body) instead. The option will be
+         * converted to a boolean type.
+         */
+        public CassandraConsumerBuilder sendEmptyMessageWhenIdle(
+                String sendEmptyMessageWhenIdle) {
+            this.properties.put("sendEmptyMessageWhenIdle", sendEmptyMessageWhenIdle);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
          * option bridgeErrorHandler is enabled then this option is not in use.
          * By default the consumer will deal with exceptions, that will be
@@ -221,6 +314,17 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * To let the consumer use a custom ExceptionHandler. Notice if the
+         * option bridgeErrorHandler is enabled then this option is not in use.
+         * By default the consumer will deal with exceptions, that will be
+         * logged at WARN or ERROR level and ignored. The option will be
+         * converted to a org.apache.camel.spi.ExceptionHandler type.
+         */
+        public CassandraConsumerBuilder exceptionHandler(String exceptionHandler) {
+            this.properties.put("exceptionHandler", exceptionHandler);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
@@ -230,6 +334,14 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * Sets the exchange pattern when the consumer creates an exchange. The
+         * option will be converted to a org.apache.camel.ExchangePattern type.
+         */
+        public CassandraConsumerBuilder exchangePattern(String exchangePattern) {
+            this.properties.put("exchangePattern", exchangePattern);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing
          * you to provide your custom implementation to control error handling
          * usually occurred during the poll operation before an Exchange have
@@ -242,6 +354,17 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing
+         * you to provide your custom implementation to control error handling
+         * usually occurred during the poll operation before an Exchange have
+         * been created and being routed in Camel. The option will be converted
+         * to a org.apache.camel.spi.PollingConsumerPollStrategy type.
+         */
+        public CassandraConsumerBuilder pollStrategy(String pollStrategy) {
+            this.properties.put("pollStrategy", pollStrategy);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
          * is a int type.
@@ -252,6 +375,16 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * The number of subsequent error polls (failed due some error) that
+         * should happen before the backoffMultipler should kick-in. The option
+         * will be converted to a int type.
+         */
+        public CassandraConsumerBuilder backoffErrorThreshold(
+                String backoffErrorThreshold) {
+            this.properties.put("backoffErrorThreshold", backoffErrorThreshold);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * The number of subsequent idle polls that should happen before the
          * backoffMultipler should kick-in. The option is a int type.
          */
@@ -261,6 +394,16 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * The number of subsequent idle polls that should happen before the
+         * backoffMultipler should kick-in. The option will be converted to a
+         * int type.
+         */
+        public CassandraConsumerBuilder backoffIdleThreshold(
+                String backoffIdleThreshold) {
+            this.properties.put("backoffIdleThreshold", backoffIdleThreshold);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * To let the scheduled polling consumer backoff if there has been a
          * number of subsequent idles/errors in a row. The multiplier is then
          * the number of polls that will be skipped before the next actual
@@ -273,6 +416,19 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * To let the scheduled polling consumer backoff if there has been a
+         * number of subsequent idles/errors in a row. The multiplier is then
+         * the number of polls that will be skipped before the next actual
+         * attempt is happening again. When this option is in use then
+         * backoffIdleThreshold and/or backoffErrorThreshold must also be
+         * configured. The option will be converted to a int type.
+         */
+        public CassandraConsumerBuilder backoffMultiplier(
+                String backoffMultiplier) {
+            this.properties.put("backoffMultiplier", backoffMultiplier);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
@@ -282,6 +438,16 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * Milliseconds before the next poll. You can also specify time values
+         * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
+         * seconds), and 1h (1 hour). The option will be converted to a long
+         * type.
+         */
+        public CassandraConsumerBuilder delay(String delay) {
+            this.properties.put("delay", delay);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
          * option is a boolean type.
@@ -291,6 +457,15 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * If greedy is enabled, then the ScheduledPollConsumer will run
+         * immediately again, if the previous run polled 1 or more messages. The
+         * option will be converted to a boolean type.
+         */
+        public CassandraConsumerBuilder greedy(String greedy) {
+            this.properties.put("greedy", greedy);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
@@ -300,6 +475,16 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * Milliseconds before the first poll starts. You can also specify time
+         * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
+         * seconds), and 1h (1 hour). The option will be converted to a long
+         * type.
+         */
+        public CassandraConsumerBuilder initialDelay(String initialDelay) {
+            this.properties.put("initialDelay", initialDelay);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
          * is a org.apache.camel.LoggingLevel type.
@@ -310,6 +495,15 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * The consumer logs a start/complete log line when it polls. This
+         * option allows you to configure the logging level for that. The option
+         * will be converted to a org.apache.camel.LoggingLevel type.
+         */
+        public CassandraConsumerBuilder runLoggingLevel(String runLoggingLevel) {
+            this.properties.put("runLoggingLevel", runLoggingLevel);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * Allows for configuring a custom/shared thread pool to use for the
          * consumer. By default each consumer has its own single threaded thread
          * pool. The option is a java.util.concurrent.ScheduledExecutorService
@@ -321,6 +515,17 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * Allows for configuring a custom/shared thread pool to use for the
+         * consumer. By default each consumer has its own single threaded thread
+         * pool. The option will be converted to a
+         * java.util.concurrent.ScheduledExecutorService type.
+         */
+        public CassandraConsumerBuilder scheduledExecutorService(
+                String scheduledExecutorService) {
+            this.properties.put("scheduledExecutorService", scheduledExecutorService);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option is a
          * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
@@ -331,6 +536,15 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * To use a cron scheduler from either camel-spring or camel-quartz2
+         * component. The option will be converted to a
+         * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
+         */
+        public CassandraConsumerBuilder scheduler(String scheduler) {
+            this.properties.put("scheduler", scheduler);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
          * java.util.Map<java.lang.String,java.lang.Object> type.
@@ -341,6 +555,16 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * To configure additional properties when using a custom scheduler or
+         * any of the Quartz2, Spring based scheduler. The option will be
+         * converted to a java.util.Map<java.lang.String,java.lang.Object> type.
+         */
+        public CassandraConsumerBuilder schedulerProperties(
+                String schedulerProperties) {
+            this.properties.put("schedulerProperties", schedulerProperties);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * Whether the scheduler should be auto started. The option is a boolean
          * type.
          */
@@ -349,6 +573,14 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * Whether the scheduler should be auto started. The option will be
+         * converted to a boolean type.
+         */
+        public CassandraConsumerBuilder startScheduler(String startScheduler) {
+            this.properties.put("startScheduler", startScheduler);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * Time unit for initialDelay and delay options. The option is a
          * java.util.concurrent.TimeUnit type.
          */
@@ -357,6 +589,14 @@ public interface CassandraEndpointBuilder {
             return (CassandraConsumerBuilder) this;
         }
         /**
+         * Time unit for initialDelay and delay options. The option will be
+         * converted to a java.util.concurrent.TimeUnit type.
+         */
+        public CassandraConsumerBuilder timeUnit(String timeUnit) {
+            this.properties.put("timeUnit", timeUnit);
+            return (CassandraConsumerBuilder) this;
+        }
+        /**
          * Controls if fixed delay or fixed rate is used. See
          * ScheduledExecutorService in JDK for details. The option is a boolean
          * type.
@@ -365,6 +605,15 @@ public interface CassandraEndpointBuilder {
             this.properties.put("useFixedDelay", useFixedDelay);
             return (CassandraConsumerBuilder) this;
         }
+        /**
+         * Controls if fixed delay or fixed rate is used. See
+         * ScheduledExecutorService in JDK for details. The option will be
+         * converted to a boolean type.
+         */
+        public CassandraConsumerBuilder useFixedDelay(String useFixedDelay) {
+            this.properties.put("useFixedDelay", useFixedDelay);
+            return (CassandraConsumerBuilder) this;
+        }
     }
 
     public static class CassandraProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChatScriptEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChatScriptEndpointBuilder.java
index b902f0b..9540b43 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChatScriptEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChatScriptEndpointBuilder.java
@@ -52,6 +52,14 @@ public interface ChatScriptEndpointBuilder {
             return (T) this;
         }
         /**
+         * Port on which ChatScript is listening to. The option will be
+         * converted to a int type.
+         */
+        public T port(String port) {
+            this.properties.put("port", port);
+            return (T) this;
+        }
+        /**
          * Name of the Bot in CS to converse with. The option is a
          * java.lang.String type.
          */
@@ -69,6 +77,15 @@ public interface ChatScriptEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -78,6 +95,15 @@ public interface ChatScriptEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
+        /**
          * Issues :reset command to start a new conversation everytime. The
          * option is a boolean type.
          */
@@ -86,6 +112,14 @@ public interface ChatScriptEndpointBuilder {
             return (T) this;
         }
         /**
+         * Issues :reset command to start a new conversation everytime. The
+         * option will be converted to a boolean type.
+         */
+        public T resetchat(String resetchat) {
+            this.properties.put("resetchat", resetchat);
+            return (T) this;
+        }
+        /**
          * Username who initializes the CS conversation. To be set when chat is
          * initialized from camel route. The option is a java.lang.String type.
          */
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChunkEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChunkEndpointBuilder.java
index 6efa021..880645f 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChunkEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChunkEndpointBuilder.java
@@ -57,6 +57,14 @@ public interface ChunkEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether to use resource content cache or not. The option will be
+         * converted to a boolean type.
+         */
+        public T contentCache(String contentCache) {
+            this.properties.put("contentCache", contentCache);
+            return (T) this;
+        }
+        /**
          * Define the encoding of the body. The option is a java.lang.String
          * type.
          */
@@ -106,6 +114,15 @@ public interface ChunkEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -114,6 +131,15 @@ public interface ChunkEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class ChunkProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CinderEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CinderEndpointBuilder.java
index e6650f2..a242b47 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CinderEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CinderEndpointBuilder.java
@@ -60,6 +60,14 @@ public interface CinderEndpointBuilder {
             return (T) this;
         }
         /**
+         * OpenStack configuration. The option will be converted to a
+         * org.openstack4j.core.transport.Config type.
+         */
+        public T config(String config) {
+            this.properties.put("config", config);
+            return (T) this;
+        }
+        /**
          * Authentication domain. The option is a java.lang.String type.
          */
         public T domain(String domain) {
@@ -111,6 +119,15 @@ public interface CinderEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -119,6 +136,15 @@ public interface CinderEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class CinderProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClassEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClassEndpointBuilder.java
index 03ad30b..6588393 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClassEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClassEndpointBuilder.java
@@ -63,6 +63,15 @@ public interface ClassEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * If enabled, Camel will cache the result of the first Registry
          * look-up. Cache can be enabled if the bean in the Registry is defined
          * as a singleton scope. The option is a java.lang.Boolean type.
@@ -72,6 +81,16 @@ public interface ClassEndpointBuilder {
             return (T) this;
         }
         /**
+         * If enabled, Camel will cache the result of the first Registry
+         * look-up. Cache can be enabled if the bean in the Registry is defined
+         * as a singleton scope. The option will be converted to a
+         * java.lang.Boolean type.
+         */
+        public T cache(String cache) {
+            this.properties.put("cache", cache);
+            return (T) this;
+        }
+        /**
          * Used for configuring additional properties on the bean. The option is
          * a java.util.Map<java.lang.String,java.lang.Object> type.
          */
@@ -80,6 +99,15 @@ public interface ClassEndpointBuilder {
             return (T) this;
         }
         /**
+         * Used for configuring additional properties on the bean. The option
+         * will be converted to a
+         * java.util.Map<java.lang.String,java.lang.Object> type.
+         */
+        public T parameters(String parameters) {
+            this.properties.put("parameters", parameters);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -88,6 +116,15 @@ public interface ClassEndpointBuilder {
             this.properties.put("synchronous", synchronous);
             return (T) this;
         }
+        /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
     }
 
     public static class ClassProducerBuilder
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClientEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClientEndpointBuilder.java
index 9bbdfa1..0580aff 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClientEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClientEndpointBuilder.java
@@ -50,6 +50,14 @@ public interface ClientEndpointBuilder {
             return (T) this;
         }
         /**
+         * The object information address. The option will be converted to a
+         * org.apache.camel.component.iec60870.ObjectAddress type.
+         */
+        public T uriPath(String uriPath) {
+            this.properties.put("uriPath", uriPath);
+            return (T) this;
+        }
+        /**
          * Data module options. The option is a DataModuleOptions type.
          */
         public T dataModuleOptions(Object dataModuleOptions) {
@@ -57,6 +65,14 @@ public interface ClientEndpointBuilder {
             return (T) this;
         }
         /**
+         * Data module options. The option will be converted to a
+         * DataModuleOptions type.
+         */
+        public T dataModuleOptions(String dataModuleOptions) {
+            this.properties.put("dataModuleOptions", dataModuleOptions);
+            return (T) this;
+        }
+        /**
          * Protocol options. The option is a ProtocolOptions type.
          */
         public T protocolOptions(Object protocolOptions) {
@@ -64,6 +80,14 @@ public interface ClientEndpointBuilder {
             return (T) this;
         }
         /**
+         * Protocol options. The option will be converted to a ProtocolOptions
+         * type.
+         */
+        public T protocolOptions(String protocolOptions) {
+            this.properties.put("protocolOptions", protocolOptions);
+            return (T) this;
+        }
+        /**
          * Whether the endpoint should use basic property binding (Camel 2.x) or
          * the newer property binding with additional capabilities. The option
          * is a boolean type.
@@ -73,6 +97,15 @@ public interface ClientEndpointBuilder {
             return (T) this;
         }
         /**
+         * Whether the endpoint should use basic property binding (Camel 2.x) or
+         * the newer property binding with additional capabilities. The option
+         * will be converted to a boolean type.
+         */
+        public T basicPropertyBinding(String basicPropertyBinding) {
+            this.properties.put("basicPropertyBinding", basicPropertyBinding);
+            return (T) this;
+        }
+        /**
          * Sets whether synchronous processing should be strictly used, or Camel
          * is allowed to use asynchronous processing (if supported). The option
          * is a boolean type.
@@ -82,6 +115,15 @@ public interface ClientEndpointBuilder {
             return (T) this;
         }
         /**
+         * Sets whether synchronous processing should be strictly used, or Camel
+         * is allowed to use asynchronous processing (if supported). The option
+         * will be converted to a boolean type.
+         */
+        public T synchronous(String synchronous) {
+            this.properties.put("synchronous", synchronous);
+            return (T) this;
+        }
+        /**
          * Parameter W - Acknowledgment window. The option is a short type.
          */
         public T acknowledgeWindow(short acknowledgeWindow) {
@@ -89,6 +131,14 @@ public interface ClientEndpointBuilder {
             return (T) this;
         }
         /**
+         * Parameter W - Acknowledgment window. The option will be converted to
+         * a short type.
+         */
+        public T acknowledgeWindow(String acknowledgeWindow) {
+            this.properties.put("acknowledgeWindow", acknowledgeWindow);
+            return (T) this;
+        }
+        /**
          * The common ASDU address size. May be either SIZE_1 or SIZE_2. The
          * option is a org.eclipse.neoscada.protocol.iec60870.ASDUAddressType
          * type.
@@ -98,6 +148,15 @@ public interface ClientEndpointBuilder {
             return (T) this;
         }
         /**
+         * The common ASDU address size. May be either SIZE_1 or SIZE_2. The
+         * option will be converted to a
+         * org.eclipse.neoscada.protocol.iec60870.ASDUAddressType type.
+         */
+        public T adsuAddressType(String adsuAddressType) {
+            this.properties.put("adsuAddressType", adsuAddressType);
+            return (T) this;
+        }
+        /**
          * The cause of transmission type. May be either SIZE_1 or SIZE_2. The
          * option is a
          * org.eclipse.neoscada.protocol.iec60870.CauseOfTransmissionType type.
@@ -108,6 +167,15 @@ public interface ClientEndpointBuilder {
             return (T) this;
         }
         /**
+         * The cause of transmission type. May be either SIZE_1 or SIZE_2. The
+         * option will be converted to a
+         * org.eclipse.neoscada.protocol.iec60870.CauseOfTransmissionType type.
+         */
+        public T causeOfTransmissionType(String causeOfTransmissionType) {
+            this.properties.put("causeOfTransmissionType", causeOfTransmissionType);
+            return (T) this;
+        }
+        /**
          * The information address size. May be either SIZE_1, SIZE_2 or SIZE_3.
          * The option is a
          * org.eclipse.neoscada.protocol.iec60870.InformationObjectAddressType
@@ -119,6 +187,17 @@ public interface ClientEndpointBuilder {
             return (T) this;
         }
         /**
+         * The information address size. May be either SIZE_1, SIZE_2 or SIZE_3.
+         * The option will be converted to a
+         * org.eclipse.neoscada.protocol.iec60870.InformationObjectAddressType
+         * type.
+         */
+        public T informationObjectAddressType(
+                String informationObjectAddressType) {
+            this.properties.put("informationObjectAddressType", informationObjectAddressType);
+            return (T) this;
+        }
+        /**
          * Parameter K - Maximum number of un-acknowledged messages. The option
          * is a short type.
          */
@@ -127,6 +206,14 @@ public interface ClientEndpointBuilder {
             return (T) this;
         }
         /**
+         * Parameter K - Maximum number of un-acknowledged messages. The option
+         * will be converted to a short type.
+         */
+        public T maxUnacknowledged(String maxUnacknowledged) {
+            this.properties.put("maxUnacknowledged", maxUnacknowledged);
+            return (T) this;
+        }
+        /**
          * Timeout T1 in milliseconds. The option is a int type.
          */
         public T timeout1(int timeout1) {
@@ -134,6 +221,14 @@ public interface ClientEndpointBuilder {
             return (T) this;
         }
         /**
+         * Timeout T1 in milliseconds. The option will be converted to a int
+         * type.
+         */
+        public T timeout1(String timeout1) {
+            this.properties.put("timeout1", timeout1);
... 70303 lines suppressed ...


[camel] 05/05: Fix javadoc generated for the type to use < and >

Posted by gn...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

gnodet pushed a commit to branch endpoint-dsl
in repository https://gitbox.apache.org/repos/asf/camel.git

commit b56e661ff260d8d17b56059283020b8ca0e6299a
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Tue Jun 11 18:12:57 2019 +0200

    Fix javadoc generated for the type to use &lt; and &gt;
---
 .../camel/model/endpoint/AhcEndpointBuilder.java   | 15 +++---
 .../camel/model/endpoint/ApnsEndpointBuilder.java  |  7 +--
 .../camel/model/endpoint/AtomEndpointBuilder.java  |  7 +--
 .../model/endpoint/AtomixMapEndpointBuilder.java   | 28 +++++------
 .../endpoint/AtomixMessagingEndpointBuilder.java   | 28 +++++------
 .../endpoint/AtomixMultiMapEndpointBuilder.java    | 28 +++++------
 .../model/endpoint/AtomixQueueEndpointBuilder.java | 28 +++++------
 .../model/endpoint/AtomixSetEndpointBuilder.java   | 28 +++++------
 .../model/endpoint/AtomixValueEndpointBuilder.java | 28 +++++------
 .../camel/model/endpoint/BeanEndpointBuilder.java  |  8 ++--
 .../model/endpoint/BeanstalkEndpointBuilder.java   |  7 +--
 .../model/endpoint/BlobServiceEndpointBuilder.java |  6 ++-
 .../camel/model/endpoint/BoxEndpointBuilder.java   |  7 +--
 .../endpoint/CaffeineCacheEndpointBuilder.java     | 10 ++--
 .../endpoint/CaffeineLoadCacheEndpointBuilder.java | 10 ++--
 .../model/endpoint/CassandraEndpointBuilder.java   |  7 +--
 .../camel/model/endpoint/ClassEndpointBuilder.java |  8 ++--
 .../model/endpoint/CouchbaseEndpointBuilder.java   |  7 +--
 .../model/endpoint/CryptoCmsEndpointBuilder.java   |  8 ++--
 .../camel/model/endpoint/CxfEndpointBuilder.java   | 11 +++--
 .../camel/model/endpoint/CxfRsEndpointBuilder.java | 22 +++++----
 .../model/endpoint/DdbStreamEndpointBuilder.java   |  7 +--
 .../model/endpoint/EhcacheEndpointBuilder.java     | 26 ++++++-----
 .../camel/model/endpoint/EjbEndpointBuilder.java   |  8 ++--
 .../camel/model/endpoint/ElsqlEndpointBuilder.java | 14 +++---
 .../camel/model/endpoint/EtcdEndpointBuilder.java  |  7 +--
 .../model/endpoint/FacebookEndpointBuilder.java    | 31 +++++++------
 .../camel/model/endpoint/FileEndpointBuilder.java  | 29 ++++++------
 .../model/endpoint/FlatpackEndpointBuilder.java    |  7 +--
 .../camel/model/endpoint/FtpEndpointBuilder.java   | 42 +++++++++--------
 .../camel/model/endpoint/FtpsEndpointBuilder.java  | 54 +++++++++++++---------
 .../GoogleCalendarStreamEndpointBuilder.java       | 13 +++---
 .../model/endpoint/GoogleDriveEndpointBuilder.java |  4 +-
 .../endpoint/GoogleMailStreamEndpointBuilder.java  |  7 +--
 .../GoogleSheetsStreamEndpointBuilder.java         | 11 +++--
 .../endpoint/GuavaEventBusEndpointBuilder.java     |  9 ++--
 .../camel/model/endpoint/HBaseEndpointBuilder.java | 15 +++---
 .../camel/model/endpoint/HdfsEndpointBuilder.java  |  7 +--
 .../model/endpoint/HipchatEndpointBuilder.java     |  7 +--
 .../camel/model/endpoint/HttpEndpointBuilder.java  |  9 ++--
 .../model/endpoint/IgniteCacheEndpointBuilder.java |  8 ++--
 .../endpoint/IgniteEventsEndpointBuilder.java      |  6 +--
 .../model/endpoint/InfinispanEndpointBuilder.java  | 12 ++---
 .../model/endpoint/IronMQEndpointBuilder.java      |  7 +--
 .../camel/model/endpoint/JBPMEndpointBuilder.java  | 17 +++----
 .../model/endpoint/JCacheEndpointBuilder.java      | 22 ++++-----
 .../camel/model/endpoint/JMXEndpointBuilder.java   |  6 ++-
 .../camel/model/endpoint/JdbcEndpointBuilder.java  |  6 ++-
 .../model/endpoint/JettyHttpEndpointBuilder9.java  | 26 +++++++----
 .../camel/model/endpoint/JooqEndpointBuilder.java  | 11 +++--
 .../camel/model/endpoint/JpaEndpointBuilder.java   | 38 ++++++++-------
 .../camel/model/endpoint/Jt400EndpointBuilder.java |  7 +--
 .../camel/model/endpoint/KafkaEndpointBuilder.java |  8 ++--
 .../model/endpoint/KinesisEndpointBuilder.java     |  7 +--
 .../model/endpoint/LinkedInEndpointBuilder.java    |  6 ++-
 .../camel/model/endpoint/MailEndpointBuilder.java  |  7 +--
 .../model/endpoint/MicrometerEndpointBuilder.java  |  6 +--
 .../model/endpoint/MiloClientEndpointBuilder.java  |  4 +-
 .../camel/model/endpoint/Mina2EndpointBuilder.java |  4 +-
 .../model/endpoint/MyBatisEndpointBuilder.java     |  7 +--
 .../camel/model/endpoint/NettyEndpointBuilder.java | 18 +++++---
 .../model/endpoint/NettyHttpEndpointBuilder.java   | 26 +++++++----
 .../model/endpoint/Olingo2EndpointBuilder.java     |  6 ++-
 .../model/endpoint/Olingo4EndpointBuilder.java     |  6 ++-
 .../model/endpoint/PropertiesEndpointBuilder.java  |  4 +-
 .../model/endpoint/QuartzEndpointBuilder.java      | 14 +++---
 .../model/endpoint/RabbitMQEndpointBuilder.java    | 11 +++--
 .../model/endpoint/RestletEndpointBuilder.java     |  7 +--
 .../camel/model/endpoint/RssEndpointBuilder.java   |  7 +--
 .../camel/model/endpoint/S3EndpointBuilder.java    |  7 +--
 .../camel/model/endpoint/SWFEndpointBuilder.java   | 21 +++++----
 .../model/endpoint/SalesforceEndpointBuilder.java  | 13 ++++--
 .../model/endpoint/SchedulerEndpointBuilder.java   |  7 +--
 .../model/endpoint/ServiceNowEndpointBuilder.java  | 24 +++++-----
 .../camel/model/endpoint/SesEndpointBuilder.java   |  8 ++--
 .../camel/model/endpoint/SftpEndpointBuilder.java  | 29 ++++++------
 .../camel/model/endpoint/SipEndpointBuilder.java   |  4 +-
 .../camel/model/endpoint/SlackEndpointBuilder.java |  7 +--
 .../camel/model/endpoint/SmppEndpointBuilder.java  |  8 ++--
 .../camel/model/endpoint/SnmpEndpointBuilder.java  |  7 +--
 .../model/endpoint/SplunkEndpointBuilder.java      |  7 +--
 .../camel/model/endpoint/SqlEndpointBuilder.java   | 14 +++---
 .../camel/model/endpoint/SqsEndpointBuilder.java   |  7 +--
 .../camel/model/endpoint/SshEndpointBuilder.java   |  7 +--
 .../model/endpoint/StreamEndpointBuilder.java      |  9 ++--
 .../model/endpoint/TelegramEndpointBuilder.java    |  7 +--
 .../TwitterDirectMessageEndpointBuilder.java       |  7 +--
 .../endpoint/TwitterSearchEndpointBuilder.java     |  7 +--
 .../endpoint/TwitterStreamingEndpointBuilder.java  |  7 +--
 .../endpoint/TwitterTimelineEndpointBuilder.java   |  7 +--
 .../model/endpoint/UndertowEndpointBuilder.java    |  7 +--
 .../model/endpoint/WeatherEndpointBuilder.java     | 13 +++---
 .../camel/model/endpoint/Web3jEndpointBuilder.java | 14 +++---
 .../model/endpoint/WordpressEndpointBuilder.java   |  7 +--
 .../camel/model/endpoint/WsEndpointBuilder.java    | 15 +++---
 .../model/endpoint/XQueryEndpointBuilder.java      | 31 ++++++++-----
 .../endpoint/XmlSignatureEndpointBuilder.java      | 17 ++++---
 .../camel/model/endpoint/XsltEndpointBuilder.java  |  5 +-
 .../model/endpoint/YammerEndpointBuilder.java      |  7 +--
 .../camel/maven/packaging/EndpointDslMojo.java     |  8 +++-
 100 files changed, 694 insertions(+), 573 deletions(-)

diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java
index 3b1c6f5..749e5ab 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java
@@ -220,8 +220,8 @@ public interface AhcEndpointBuilder {
         }
         /**
          * To configure the AsyncHttpClientConfig using the key/values from the
-         * Map. The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * Map. The option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T clientConfigOptions(Map<String, Object> clientConfigOptions) {
             this.properties.put("clientConfigOptions", clientConfigOptions);
@@ -230,7 +230,8 @@ public interface AhcEndpointBuilder {
         /**
          * To configure the AsyncHttpClientConfig using the key/values from the
          * Map. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T clientConfigOptions(String clientConfigOptions) {
             this.properties.put("clientConfigOptions", clientConfigOptions);
@@ -256,8 +257,9 @@ public interface AhcEndpointBuilder {
         }
         /**
          * To configure the AsyncHttpClientConfig Realm using the key/values
-         * from the Map. The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * from the Map. The option is a
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T clientConfigRealmOptions(
                 Map<String, Object> clientConfigRealmOptions) {
@@ -267,7 +269,8 @@ public interface AhcEndpointBuilder {
         /**
          * To configure the AsyncHttpClientConfig Realm using the key/values
          * from the Map. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T clientConfigRealmOptions(String clientConfigRealmOptions) {
             this.properties.put("clientConfigRealmOptions", clientConfigRealmOptions);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java
index aa3612c..274961f 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java
@@ -403,7 +403,8 @@ public interface ApnsEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public ApnsConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -413,8 +414,8 @@ public interface ApnsEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public ApnsConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java
index a84fd8c..98acdaf 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java
@@ -516,7 +516,8 @@ public interface AtomEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public AtomConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -526,8 +527,8 @@ public interface AtomEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public AtomConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java
index 51a8cf3..051de76 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java
@@ -109,8 +109,7 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option is a
-         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
-         * type.
+         * <code>java.util.List&lt;io.atomix.catalyst.transport.Address&gt;</code> type.
          */
         public T nodes(List<Object> nodes) {
             this.properties.put("nodes", nodes);
@@ -119,8 +118,7 @@ public interface AtomixMapEndpointBuilder {
         /**
          * The address of the nodes composing the cluster. The option will be
          * converted to a
-         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
-         * type.
+         * <code>java.util.List&lt;io.atomix.catalyst.transport.Address&gt;</code> type.
          */
         public T nodes(String nodes) {
             this.properties.put("nodes", nodes);
@@ -136,8 +134,7 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option is a
-         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
-         * type.
+         * <code>java.lang.Class&lt;io.atomix.catalyst.transport.Transport&gt;</code> type.
          */
         public T transport(Class<Object> transport) {
             this.properties.put("transport", transport);
@@ -145,8 +142,7 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option will be converted to a
-         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
-         * type.
+         * <code>java.lang.Class&lt;io.atomix.catalyst.transport.Transport&gt;</code> type.
          */
         public T transport(String transport) {
             this.properties.put("transport", transport);
@@ -255,8 +251,8 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option is a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceConfigs(Map<String, Properties> resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -264,8 +260,8 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option will be converted to
-         * a <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * a <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceConfigs(String resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -273,8 +269,8 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * Local resources configurations. The option is a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceOptions(Map<String, Properties> resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -282,8 +278,8 @@ public interface AtomixMapEndpointBuilder {
         }
         /**
          * Local resources configurations. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceOptions(String resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java
index 9d92a86..67429cb 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java
@@ -123,8 +123,7 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option is a
-         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
-         * type.
+         * <code>java.util.List&lt;io.atomix.catalyst.transport.Address&gt;</code> type.
          */
         public T nodes(List<Object> nodes) {
             this.properties.put("nodes", nodes);
@@ -133,8 +132,7 @@ public interface AtomixMessagingEndpointBuilder {
         /**
          * The address of the nodes composing the cluster. The option will be
          * converted to a
-         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
-         * type.
+         * <code>java.util.List&lt;io.atomix.catalyst.transport.Address&gt;</code> type.
          */
         public T nodes(String nodes) {
             this.properties.put("nodes", nodes);
@@ -150,8 +148,7 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option is a
-         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
-         * type.
+         * <code>java.lang.Class&lt;io.atomix.catalyst.transport.Transport&gt;</code> type.
          */
         public T transport(Class<Object> transport) {
             this.properties.put("transport", transport);
@@ -159,8 +156,7 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option will be converted to a
-         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
-         * type.
+         * <code>java.lang.Class&lt;io.atomix.catalyst.transport.Transport&gt;</code> type.
          */
         public T transport(String transport) {
             this.properties.put("transport", transport);
@@ -254,8 +250,8 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option is a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceConfigs(Map<String, Properties> resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -263,8 +259,8 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option will be converted to
-         * a <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * a <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceConfigs(String resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -272,8 +268,8 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * Local resources configurations. The option is a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceOptions(Map<String, Properties> resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -281,8 +277,8 @@ public interface AtomixMessagingEndpointBuilder {
         }
         /**
          * Local resources configurations. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceOptions(String resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java
index b55183b..6414326 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java
@@ -110,8 +110,7 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option is a
-         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
-         * type.
+         * <code>java.util.List&lt;io.atomix.catalyst.transport.Address&gt;</code> type.
          */
         public T nodes(List<Object> nodes) {
             this.properties.put("nodes", nodes);
@@ -120,8 +119,7 @@ public interface AtomixMultiMapEndpointBuilder {
         /**
          * The address of the nodes composing the cluster. The option will be
          * converted to a
-         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
-         * type.
+         * <code>java.util.List&lt;io.atomix.catalyst.transport.Address&gt;</code> type.
          */
         public T nodes(String nodes) {
             this.properties.put("nodes", nodes);
@@ -137,8 +135,7 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option is a
-         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
-         * type.
+         * <code>java.lang.Class&lt;io.atomix.catalyst.transport.Transport&gt;</code> type.
          */
         public T transport(Class<Object> transport) {
             this.properties.put("transport", transport);
@@ -146,8 +143,7 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option will be converted to a
-         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
-         * type.
+         * <code>java.lang.Class&lt;io.atomix.catalyst.transport.Transport&gt;</code> type.
          */
         public T transport(String transport) {
             this.properties.put("transport", transport);
@@ -256,8 +252,8 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option is a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceConfigs(Map<String, Properties> resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -265,8 +261,8 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option will be converted to
-         * a <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * a <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceConfigs(String resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -274,8 +270,8 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * Local resources configurations. The option is a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceOptions(Map<String, Properties> resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -283,8 +279,8 @@ public interface AtomixMultiMapEndpointBuilder {
         }
         /**
          * Local resources configurations. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceOptions(String resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java
index e16feb2..f3f2fe1 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java
@@ -91,8 +91,7 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option is a
-         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
-         * type.
+         * <code>java.util.List&lt;io.atomix.catalyst.transport.Address&gt;</code> type.
          */
         public T nodes(List<Object> nodes) {
             this.properties.put("nodes", nodes);
@@ -101,8 +100,7 @@ public interface AtomixQueueEndpointBuilder {
         /**
          * The address of the nodes composing the cluster. The option will be
          * converted to a
-         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
-         * type.
+         * <code>java.util.List&lt;io.atomix.catalyst.transport.Address&gt;</code> type.
          */
         public T nodes(String nodes) {
             this.properties.put("nodes", nodes);
@@ -118,8 +116,7 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option is a
-         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
-         * type.
+         * <code>java.lang.Class&lt;io.atomix.catalyst.transport.Transport&gt;</code> type.
          */
         public T transport(Class<Object> transport) {
             this.properties.put("transport", transport);
@@ -127,8 +124,7 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option will be converted to a
-         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
-         * type.
+         * <code>java.lang.Class&lt;io.atomix.catalyst.transport.Transport&gt;</code> type.
          */
         public T transport(String transport) {
             this.properties.put("transport", transport);
@@ -222,8 +218,8 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option is a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceConfigs(Map<String, Properties> resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -231,8 +227,8 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option will be converted to
-         * a <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * a <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceConfigs(String resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -240,8 +236,8 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * Local resources configurations. The option is a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceOptions(Map<String, Properties> resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -249,8 +245,8 @@ public interface AtomixQueueEndpointBuilder {
         }
         /**
          * Local resources configurations. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceOptions(String resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java
index cca708a..8c60726 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java
@@ -91,8 +91,7 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option is a
-         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
-         * type.
+         * <code>java.util.List&lt;io.atomix.catalyst.transport.Address&gt;</code> type.
          */
         public T nodes(List<Object> nodes) {
             this.properties.put("nodes", nodes);
@@ -101,8 +100,7 @@ public interface AtomixSetEndpointBuilder {
         /**
          * The address of the nodes composing the cluster. The option will be
          * converted to a
-         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
-         * type.
+         * <code>java.util.List&lt;io.atomix.catalyst.transport.Address&gt;</code> type.
          */
         public T nodes(String nodes) {
             this.properties.put("nodes", nodes);
@@ -118,8 +116,7 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option is a
-         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
-         * type.
+         * <code>java.lang.Class&lt;io.atomix.catalyst.transport.Transport&gt;</code> type.
          */
         public T transport(Class<Object> transport) {
             this.properties.put("transport", transport);
@@ -127,8 +124,7 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option will be converted to a
-         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
-         * type.
+         * <code>java.lang.Class&lt;io.atomix.catalyst.transport.Transport&gt;</code> type.
          */
         public T transport(String transport) {
             this.properties.put("transport", transport);
@@ -237,8 +233,8 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option is a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceConfigs(Map<String, Properties> resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -246,8 +242,8 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option will be converted to
-         * a <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * a <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceConfigs(String resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -255,8 +251,8 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * Local resources configurations. The option is a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceOptions(Map<String, Properties> resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -264,8 +260,8 @@ public interface AtomixSetEndpointBuilder {
         }
         /**
          * Local resources configurations. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceOptions(String resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java
index a94a6dd..b9f43de 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java
@@ -91,8 +91,7 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * The address of the nodes composing the cluster. The option is a
-         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
-         * type.
+         * <code>java.util.List&lt;io.atomix.catalyst.transport.Address&gt;</code> type.
          */
         public T nodes(List<Object> nodes) {
             this.properties.put("nodes", nodes);
@@ -101,8 +100,7 @@ public interface AtomixValueEndpointBuilder {
         /**
          * The address of the nodes composing the cluster. The option will be
          * converted to a
-         * <code>java.util.List<io.atomix.catalyst.transport.Address></code>
-         * type.
+         * <code>java.util.List&lt;io.atomix.catalyst.transport.Address&gt;</code> type.
          */
         public T nodes(String nodes) {
             this.properties.put("nodes", nodes);
@@ -118,8 +116,7 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option is a
-         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
-         * type.
+         * <code>java.lang.Class&lt;io.atomix.catalyst.transport.Transport&gt;</code> type.
          */
         public T transport(Class<Object> transport) {
             this.properties.put("transport", transport);
@@ -127,8 +124,7 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * Sets the Atomix transport. The option will be converted to a
-         * <code>java.lang.Class<io.atomix.catalyst.transport.Transport></code>
-         * type.
+         * <code>java.lang.Class&lt;io.atomix.catalyst.transport.Transport&gt;</code> type.
          */
         public T transport(String transport) {
             this.properties.put("transport", transport);
@@ -237,8 +233,8 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option is a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceConfigs(Map<String, Properties> resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -246,8 +242,8 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * Cluster wide resources configuration. The option will be converted to
-         * a <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * a <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceConfigs(String resourceConfigs) {
             this.properties.put("resourceConfigs", resourceConfigs);
@@ -255,8 +251,8 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * Local resources configurations. The option is a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceOptions(Map<String, Properties> resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
@@ -264,8 +260,8 @@ public interface AtomixValueEndpointBuilder {
         }
         /**
          * Local resources configurations. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.util.Properties></code>
-         * type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.util.Properties&gt;</code> type.
          */
         public T resourceOptions(String resourceOptions) {
             this.properties.put("resourceOptions", resourceOptions);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java
index 8f7de8e..b321765 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java
@@ -93,8 +93,8 @@ public interface BeanEndpointBuilder {
         }
         /**
          * Used for configuring additional properties on the bean. The option is
-         * a <code>java.util.Map<java.lang.String, java.lang.Object></code>
-         * type.
+         * a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T parameters(Map<String, Object> parameters) {
             this.properties.put("parameters", parameters);
@@ -102,8 +102,8 @@ public interface BeanEndpointBuilder {
         }
         /**
          * Used for configuring additional properties on the bean. The option
-         * will be converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * will be converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T parameters(String parameters) {
             this.properties.put("parameters", parameters);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java
index 1a105c2..4b7e0e3 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java
@@ -531,7 +531,8 @@ public interface BeanstalkEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public BeanstalkConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -541,8 +542,8 @@ public interface BeanstalkEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public BeanstalkConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java
index fda407a..be8d509 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java
@@ -318,7 +318,8 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the blob meta-data. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public BlobServiceProducerBuilder blobMetadata(
                 Map<String, String> blobMetadata) {
@@ -327,7 +328,8 @@ public interface BlobServiceEndpointBuilder {
         }
         /**
          * Set the blob meta-data. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public BlobServiceProducerBuilder blobMetadata(String blobMetadata) {
             this.properties.put("blobMetadata", blobMetadata);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java
index eae5e9d..df53493 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java
@@ -116,7 +116,8 @@ public interface BoxEndpointBuilder {
         }
         /**
          * Custom HTTP params for settings like proxy host. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T httpParams(Map<String, Object> httpParams) {
             this.properties.put("httpParams", httpParams);
@@ -124,8 +125,8 @@ public interface BoxEndpointBuilder {
         }
         /**
          * Custom HTTP params for settings like proxy host. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T httpParams(String httpParams) {
             this.properties.put("httpParams", httpParams);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpointBuilder.java
index bfb753d..ce50adf 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpointBuilder.java
@@ -82,7 +82,7 @@ public interface CaffeineCacheEndpointBuilder {
         }
         /**
          * The cache key type, default java.lang.Object. The option is a
-         * <code>java.lang.Class<java.lang.Object></code> type.
+         * <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T keyType(Class<Object> keyType) {
             this.properties.put("keyType", keyType);
@@ -90,7 +90,8 @@ public interface CaffeineCacheEndpointBuilder {
         }
         /**
          * The cache key type, default java.lang.Object. The option will be
-         * converted to a <code>java.lang.Class<java.lang.Object></code> type.
+         * converted to a <code>java.lang.Class&lt;java.lang.Object&gt;</code>
+         * type.
          */
         public T keyType(String keyType) {
             this.properties.put("keyType", keyType);
@@ -116,7 +117,7 @@ public interface CaffeineCacheEndpointBuilder {
         }
         /**
          * The cache value type, default java.lang.Object. The option is a
-         * <code>java.lang.Class<java.lang.Object></code> type.
+         * <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T valueType(Class<Object> valueType) {
             this.properties.put("valueType", valueType);
@@ -124,7 +125,8 @@ public interface CaffeineCacheEndpointBuilder {
         }
         /**
          * The cache value type, default java.lang.Object. The option will be
-         * converted to a <code>java.lang.Class<java.lang.Object></code> type.
+         * converted to a <code>java.lang.Class&lt;java.lang.Object&gt;</code>
+         * type.
          */
         public T valueType(String valueType) {
             this.properties.put("valueType", valueType);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpointBuilder.java
index d326e1b..7b97530 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpointBuilder.java
@@ -83,7 +83,7 @@ public interface CaffeineLoadCacheEndpointBuilder {
         }
         /**
          * The cache key type, default java.lang.Object. The option is a
-         * <code>java.lang.Class<java.lang.Object></code> type.
+         * <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T keyType(Class<Object> keyType) {
             this.properties.put("keyType", keyType);
@@ -91,7 +91,8 @@ public interface CaffeineLoadCacheEndpointBuilder {
         }
         /**
          * The cache key type, default java.lang.Object. The option will be
-         * converted to a <code>java.lang.Class<java.lang.Object></code> type.
+         * converted to a <code>java.lang.Class&lt;java.lang.Object&gt;</code>
+         * type.
          */
         public T keyType(String keyType) {
             this.properties.put("keyType", keyType);
@@ -117,7 +118,7 @@ public interface CaffeineLoadCacheEndpointBuilder {
         }
         /**
          * The cache value type, default java.lang.Object. The option is a
-         * <code>java.lang.Class<java.lang.Object></code> type.
+         * <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T valueType(Class<Object> valueType) {
             this.properties.put("valueType", valueType);
@@ -125,7 +126,8 @@ public interface CaffeineLoadCacheEndpointBuilder {
         }
         /**
          * The cache value type, default java.lang.Object. The option will be
-         * converted to a <code>java.lang.Class<java.lang.Object></code> type.
+         * converted to a <code>java.lang.Class&lt;java.lang.Object&gt;</code>
+         * type.
          */
         public T valueType(String valueType) {
             this.properties.put("valueType", valueType);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpointBuilder.java
index 6c26c82..38b760b 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpointBuilder.java
@@ -556,7 +556,8 @@ public interface CassandraEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public CassandraConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -566,8 +567,8 @@ public interface CassandraEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public CassandraConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClassEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClassEndpointBuilder.java
index 39579f0..75a6ab8 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClassEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClassEndpointBuilder.java
@@ -93,8 +93,8 @@ public interface ClassEndpointBuilder {
         }
         /**
          * Used for configuring additional properties on the bean. The option is
-         * a <code>java.util.Map<java.lang.String, java.lang.Object></code>
-         * type.
+         * a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T parameters(Map<String, Object> parameters) {
             this.properties.put("parameters", parameters);
@@ -102,8 +102,8 @@ public interface ClassEndpointBuilder {
         }
         /**
          * Used for configuring additional properties on the bean. The option
-         * will be converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * will be converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T parameters(String parameters) {
             this.properties.put("parameters", parameters);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchbaseEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchbaseEndpointBuilder.java
index c72a40b..b3138d6 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchbaseEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchbaseEndpointBuilder.java
@@ -676,7 +676,8 @@ public interface CouchbaseEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public CouchbaseConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -686,8 +687,8 @@ public interface CouchbaseEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public CouchbaseConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CryptoCmsEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CryptoCmsEndpointBuilder.java
index 407e63c..f6b2e98 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CryptoCmsEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CryptoCmsEndpointBuilder.java
@@ -229,7 +229,7 @@ public interface CryptoCmsEndpointBuilder {
          * Recipient Info: reference to a bean which implements the interface
          * org.apache.camel.component.crypto.cms.api.TransRecipientInfo. The
          * option is a
-         * <code>java.util.List<org.apache.camel.component.crypto.cms.crypt.RecipientInfo></code> type.
+         * <code>java.util.List&lt;org.apache.camel.component.crypto.cms.crypt.RecipientInfo&gt;</code> type.
          */
         public T recipient(List<Object> recipient) {
             this.properties.put("recipient", recipient);
@@ -239,7 +239,7 @@ public interface CryptoCmsEndpointBuilder {
          * Recipient Info: reference to a bean which implements the interface
          * org.apache.camel.component.crypto.cms.api.TransRecipientInfo. The
          * option will be converted to a
-         * <code>java.util.List<org.apache.camel.component.crypto.cms.crypt.RecipientInfo></code> type.
+         * <code>java.util.List&lt;org.apache.camel.component.crypto.cms.crypt.RecipientInfo&gt;</code> type.
          */
         public T recipient(String recipient) {
             this.properties.put("recipient", recipient);
@@ -342,7 +342,7 @@ public interface CryptoCmsEndpointBuilder {
          * Signer information: reference to bean(s) which implements
          * org.apache.camel.component.crypto.cms.api.SignerInfo. Multiple values
          * can be separated by comma. The option is a
-         * <code>java.util.List<org.apache.camel.component.crypto.cms.sig.SignerInfo></code> type.
+         * <code>java.util.List&lt;org.apache.camel.component.crypto.cms.sig.SignerInfo&gt;</code> type.
          */
         public T signer(List<Object> signer) {
             this.properties.put("signer", signer);
@@ -352,7 +352,7 @@ public interface CryptoCmsEndpointBuilder {
          * Signer information: reference to bean(s) which implements
          * org.apache.camel.component.crypto.cms.api.SignerInfo. Multiple values
          * can be separated by comma. The option will be converted to a
-         * <code>java.util.List<org.apache.camel.component.crypto.cms.sig.SignerInfo></code> type.
+         * <code>java.util.List&lt;org.apache.camel.component.crypto.cms.sig.SignerInfo&gt;</code> type.
          */
         public T signer(String signer) {
             this.properties.put("signer", signer);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfEndpointBuilder.java
index 2d5e517..1341398 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfEndpointBuilder.java
@@ -289,7 +289,8 @@ public interface CxfEndpointBuilder {
          * To set additional CXF options using the key/value pairs from the Map.
          * For example to turn on stacktraces in SOAP faults,
          * properties.faultStackTraceEnabled=true. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T properties(Map<String, Object> properties) {
             this.properties.put("properties", properties);
@@ -299,8 +300,8 @@ public interface CxfEndpointBuilder {
          * To set additional CXF options using the key/value pairs from the Map.
          * For example to turn on stacktraces in SOAP faults,
          * properties.faultStackTraceEnabled=true. The option will be converted
-         * to a <code>java.util.Map<java.lang.String, java.lang.Object></code>
-         * type.
+         * to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T properties(String properties) {
             this.properties.put("properties", properties);
@@ -441,7 +442,7 @@ public interface CxfEndpointBuilder {
         /**
          * The class name of the SEI (Service Endpoint Interface) class which
          * could have JSR181 annotation or not. The option is a
-         * <code>java.lang.Class<java.lang.Object></code> type.
+         * <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T serviceClass(Class<Object> serviceClass) {
             this.properties.put("serviceClass", serviceClass);
@@ -450,7 +451,7 @@ public interface CxfEndpointBuilder {
         /**
          * The class name of the SEI (Service Endpoint Interface) class which
          * could have JSR181 annotation or not. The option will be converted to
-         * a <code>java.lang.Class<java.lang.Object></code> type.
+         * a <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T serviceClass(String serviceClass) {
             this.properties.put("serviceClass", serviceClass);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfRsEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfRsEndpointBuilder.java
index a912ee7..618af39 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfRsEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfRsEndpointBuilder.java
@@ -58,7 +58,8 @@ public interface CxfRsEndpointBuilder {
         }
         /**
          * Set the feature list to the CxfRs endpoint. The option is a
-         * <code>java.util.List<org.apache.cxf.feature.Feature></code> type.
+         * <code>java.util.List&lt;org.apache.cxf.feature.Feature&gt;</code>
+         * type.
          */
         public T features(List<Object> features) {
             this.properties.put("features", features);
@@ -67,7 +68,8 @@ public interface CxfRsEndpointBuilder {
         /**
          * Set the feature list to the CxfRs endpoint. The option will be
          * converted to a
-         * <code>java.util.List<org.apache.cxf.feature.Feature></code> type.
+         * <code>java.util.List&lt;org.apache.cxf.feature.Feature&gt;</code>
+         * type.
          */
         public T features(String features) {
             this.properties.put("features", features);
@@ -123,7 +125,7 @@ public interface CxfRsEndpointBuilder {
          * Set custom JAX-RS provider(s) list to the CxfRs endpoint. You can
          * specify a string with a list of providers to lookup in the registy
          * separated by comma. The option is a
-         * <code>java.util.List<java.lang.Object></code> type.
+         * <code>java.util.List&lt;java.lang.Object&gt;</code> type.
          */
         public T providers(List<Object> providers) {
             this.properties.put("providers", providers);
@@ -133,7 +135,7 @@ public interface CxfRsEndpointBuilder {
          * Set custom JAX-RS provider(s) list to the CxfRs endpoint. You can
          * specify a string with a list of providers to lookup in the registy
          * separated by comma. The option will be converted to a
-         * <code>java.util.List<java.lang.Object></code> type.
+         * <code>java.util.List&lt;java.lang.Object&gt;</code> type.
          */
         public T providers(String providers) {
             this.properties.put("providers", providers);
@@ -142,7 +144,7 @@ public interface CxfRsEndpointBuilder {
         /**
          * The resource classes which you want to export as REST service.
          * Multiple classes can be separated by comma. The option is a
-         * <code>java.util.List<java.lang.Class<java.lang.Object>></code> type.
+         * <code>java.util.List&lt;java.lang.Class&lt;java.lang.Object&gt;&gt;</code> type.
          */
         public T resourceClasses(List<Class<Object>> resourceClasses) {
             this.properties.put("resourceClasses", resourceClasses);
@@ -152,7 +154,7 @@ public interface CxfRsEndpointBuilder {
          * The resource classes which you want to export as REST service.
          * Multiple classes can be separated by comma. The option will be
          * converted to a
-         * <code>java.util.List<java.lang.Class<java.lang.Object>></code> type.
+         * <code>java.util.List&lt;java.lang.Class&lt;java.lang.Object&gt;&gt;</code> type.
          */
         public T resourceClasses(String resourceClasses) {
             this.properties.put("resourceClasses", resourceClasses);
@@ -161,7 +163,7 @@ public interface CxfRsEndpointBuilder {
         /**
          * Sets the locations of the schema(s) which can be used to validate the
          * incoming XML or JAXB-driven JSON. The option is a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T schemaLocations(List<String> schemaLocations) {
             this.properties.put("schemaLocations", schemaLocations);
@@ -170,7 +172,7 @@ public interface CxfRsEndpointBuilder {
         /**
          * Sets the locations of the schema(s) which can be used to validate the
          * incoming XML or JAXB-driven JSON. The option will be converted to a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T schemaLocations(String schemaLocations) {
             this.properties.put("schemaLocations", schemaLocations);
@@ -519,7 +521,7 @@ public interface CxfRsEndpointBuilder {
         /**
          * The service beans which you want to export as REST service. Multiple
          * beans can be separated by comma. The option is a
-         * <code>java.util.List<java.lang.Object></code> type.
+         * <code>java.util.List&lt;java.lang.Object&gt;</code> type.
          */
         public CxfRsConsumerBuilder serviceBeans(List<Object> serviceBeans) {
             this.properties.put("serviceBeans", serviceBeans);
@@ -528,7 +530,7 @@ public interface CxfRsEndpointBuilder {
         /**
          * The service beans which you want to export as REST service. Multiple
          * beans can be separated by comma. The option will be converted to a
-         * <code>java.util.List<java.lang.Object></code> type.
+         * <code>java.util.List&lt;java.lang.Object&gt;</code> type.
          */
         public CxfRsConsumerBuilder serviceBeans(String serviceBeans) {
             this.properties.put("serviceBeans", serviceBeans);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbStreamEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbStreamEndpointBuilder.java
index 8fa0a5f..a54aded 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbStreamEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbStreamEndpointBuilder.java
@@ -534,7 +534,8 @@ public interface DdbStreamEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public DdbStreamConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -544,8 +545,8 @@ public interface DdbStreamEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public DdbStreamConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/EhcacheEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/EhcacheEndpointBuilder.java
index a6098dc..2d1195a 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/EhcacheEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/EhcacheEndpointBuilder.java
@@ -145,9 +145,9 @@ public interface EhcacheEndpointBuilder {
         }
         /**
          * A map of cache configuration to be used to create caches. The option
-         * is a <code>java.util.Map<java.lang.String,
-         * org.ehcache.config.CacheConfiguration<java.lang.Object,
-         * java.lang.Object>></code> type.
+         * is a <code>java.util.Map&lt;java.lang.String,
+         * org.ehcache.config.CacheConfiguration&lt;java.lang.Object,
+         * java.lang.Object&gt;&gt;</code> type.
          */
         public T configurations(Map<String, Object> configurations) {
             this.properties.put("configurations", configurations);
@@ -155,9 +155,9 @@ public interface EhcacheEndpointBuilder {
         }
         /**
          * A map of cache configuration to be used to create caches. The option
-         * will be converted to a <code>java.util.Map<java.lang.String,
-         * org.ehcache.config.CacheConfiguration<java.lang.Object,
-         * java.lang.Object>></code> type.
+         * will be converted to a <code>java.util.Map&lt;java.lang.String,
+         * org.ehcache.config.CacheConfiguration&lt;java.lang.Object,
+         * java.lang.Object&gt;&gt;</code> type.
          */
         public T configurations(String configurations) {
             this.properties.put("configurations", configurations);
@@ -165,7 +165,7 @@ public interface EhcacheEndpointBuilder {
         }
         /**
          * The cache key type, default java.lang.Object. The option is a
-         * <code>java.lang.Class<java.lang.Object></code> type.
+         * <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T keyType(Class<Object> keyType) {
             this.properties.put("keyType", keyType);
@@ -173,7 +173,8 @@ public interface EhcacheEndpointBuilder {
         }
         /**
          * The cache key type, default java.lang.Object. The option will be
-         * converted to a <code>java.lang.Class<java.lang.Object></code> type.
+         * converted to a <code>java.lang.Class&lt;java.lang.Object&gt;</code>
+         * type.
          */
         public T keyType(String keyType) {
             this.properties.put("keyType", keyType);
@@ -199,7 +200,7 @@ public interface EhcacheEndpointBuilder {
         }
         /**
          * The cache value type, default java.lang.Object. The option is a
-         * <code>java.lang.Class<java.lang.Object></code> type.
+         * <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T valueType(Class<Object> valueType) {
             this.properties.put("valueType", valueType);
@@ -207,7 +208,8 @@ public interface EhcacheEndpointBuilder {
         }
         /**
          * The cache value type, default java.lang.Object. The option will be
-         * converted to a <code>java.lang.Class<java.lang.Object></code> type.
+         * converted to a <code>java.lang.Class&lt;java.lang.Object&gt;</code>
+         * type.
          */
         public T valueType(String valueType) {
             this.properties.put("valueType", valueType);
@@ -285,7 +287,7 @@ public interface EhcacheEndpointBuilder {
         }
         /**
          * Set the type of events to listen for. The option is a
-         * <code>java.util.Set<org.ehcache.event.EventType></code> type.
+         * <code>java.util.Set&lt;org.ehcache.event.EventType&gt;</code> type.
          */
         public EhcacheConsumerBuilder eventTypes(Set<EventType> eventTypes) {
             this.properties.put("eventTypes", eventTypes);
@@ -293,7 +295,7 @@ public interface EhcacheEndpointBuilder {
         }
         /**
          * Set the type of events to listen for. The option will be converted to
-         * a <code>java.util.Set<org.ehcache.event.EventType></code> type.
+         * a <code>java.util.Set&lt;org.ehcache.event.EventType&gt;</code> type.
          */
         public EhcacheConsumerBuilder eventTypes(String eventTypes) {
             this.properties.put("eventTypes", eventTypes);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/EjbEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/EjbEndpointBuilder.java
index b7ff3a8..3a2519b 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/EjbEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/EjbEndpointBuilder.java
@@ -93,8 +93,8 @@ public interface EjbEndpointBuilder {
         }
         /**
          * Used for configuring additional properties on the bean. The option is
-         * a <code>java.util.Map<java.lang.String, java.lang.Object></code>
-         * type.
+         * a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T parameters(Map<String, Object> parameters) {
             this.properties.put("parameters", parameters);
@@ -102,8 +102,8 @@ public interface EjbEndpointBuilder {
         }
         /**
          * Used for configuring additional properties on the bean. The option
-         * will be converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * will be converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T parameters(String parameters) {
             this.properties.put("parameters", parameters);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ElsqlEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ElsqlEndpointBuilder.java
index 42af62d..abf8e4f 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ElsqlEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ElsqlEndpointBuilder.java
@@ -344,8 +344,8 @@ public interface ElsqlEndpointBuilder {
         }
         /**
          * Configures the Spring JdbcTemplate with the key/values from the Map.
-         * The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * The option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T templateOptions(Map<String, Object> templateOptions) {
             this.properties.put("templateOptions", templateOptions);
@@ -354,7 +354,8 @@ public interface ElsqlEndpointBuilder {
         /**
          * Configures the Spring JdbcTemplate with the key/values from the Map.
          * The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T templateOptions(String templateOptions) {
             this.properties.put("templateOptions", templateOptions);
@@ -847,7 +848,8 @@ public interface ElsqlEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public ElsqlConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -857,8 +859,8 @@ public interface ElsqlEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public ElsqlConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/EtcdEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/EtcdEndpointBuilder.java
index fa5b899..aaa11ba 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/EtcdEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/EtcdEndpointBuilder.java
@@ -526,7 +526,8 @@ public interface EtcdEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public EtcdConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -536,8 +537,8 @@ public interface EtcdEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public EtcdConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FacebookEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FacebookEndpointBuilder.java
index 20738ac..2200447 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FacebookEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FacebookEndpointBuilder.java
@@ -236,7 +236,7 @@ public interface FacebookEndpointBuilder {
         }
         /**
          * The domain names. The option is a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T domainNames(List<String> domainNames) {
             this.properties.put("domainNames", domainNames);
@@ -244,7 +244,7 @@ public interface FacebookEndpointBuilder {
         }
         /**
          * The domain names. The option will be converted to a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T domainNames(String domainNames) {
             this.properties.put("domainNames", domainNames);
@@ -441,7 +441,7 @@ public interface FacebookEndpointBuilder {
         }
         /**
          * The ids of users. The option is a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T ids(List<String> ids) {
             this.properties.put("ids", ids);
@@ -449,7 +449,7 @@ public interface FacebookEndpointBuilder {
         }
         /**
          * The ids of users. The option will be converted to a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T ids(String ids) {
             this.properties.put("ids", ids);
@@ -763,8 +763,8 @@ public interface FacebookEndpointBuilder {
             return (T) this;
         }
         /**
-         * FQL queries. The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.String></code> type.
+         * FQL queries. The option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.String&gt;</code> type.
          */
         public T queries(Map<String, String> queries) {
             this.properties.put("queries", queries);
@@ -772,7 +772,8 @@ public interface FacebookEndpointBuilder {
         }
         /**
          * FQL queries. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public T queries(String queries) {
             this.properties.put("queries", queries);
@@ -811,8 +812,8 @@ public interface FacebookEndpointBuilder {
         }
         /**
          * To configure Reading using key/value pairs from the Map. The option
-         * is a <code>java.util.Map<java.lang.String, java.lang.Object></code>
-         * type.
+         * is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T readingOptions(Map<String, Object> readingOptions) {
             this.properties.put("readingOptions", readingOptions);
@@ -820,8 +821,8 @@ public interface FacebookEndpointBuilder {
         }
         /**
          * To configure Reading using key/value pairs from the Map. The option
-         * will be converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * will be converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T readingOptions(String readingOptions) {
             this.properties.put("readingOptions", readingOptions);
@@ -968,7 +969,7 @@ public interface FacebookEndpointBuilder {
         }
         /**
          * The IDs of the users to tag. The option is a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T toUserIds(List<String> toUserIds) {
             this.properties.put("toUserIds", toUserIds);
@@ -976,7 +977,7 @@ public interface FacebookEndpointBuilder {
         }
         /**
          * The IDs of the users to tag. The option will be converted to a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T toUserIds(String toUserIds) {
             this.properties.put("toUserIds", toUserIds);
@@ -1008,7 +1009,7 @@ public interface FacebookEndpointBuilder {
         }
         /**
          * The IDs of users to invite to event. The option is a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T userIds(List<String> userIds) {
             this.properties.put("userIds", userIds);
@@ -1016,7 +1017,7 @@ public interface FacebookEndpointBuilder {
         }
         /**
          * The IDs of users to invite to event. The option will be converted to
-         * a <code>java.util.List<java.lang.String></code> type.
+         * a <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T userIds(String userIds) {
             this.properties.put("userIds", userIds);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FileEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FileEndpointBuilder.java
index a0a26bd..73c589b 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FileEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FileEndpointBuilder.java
@@ -622,7 +622,7 @@ public interface FileEndpointBuilder {
          * used when special conditions must be met before a file can be
          * consumed, such as a special ready file exists. If this option is set
          * then the readLock option does not apply. The option is a
-         * <code>org.apache.camel.component.file.GenericFileProcessStrategy<java.io.File></code> type.
+         * <code>org.apache.camel.component.file.GenericFileProcessStrategy&lt;java.io.File&gt;</code> type.
          */
         public FileConsumerBuilder processStrategy(Object processStrategy) {
             this.properties.put("processStrategy", processStrategy);
@@ -636,7 +636,7 @@ public interface FileEndpointBuilder {
          * consumed, such as a special ready file exists. If this option is set
          * then the readLock option does not apply. The option will be converted
          * to a
-         * <code>org.apache.camel.component.file.GenericFileProcessStrategy<java.io.File></code> type.
+         * <code>org.apache.camel.component.file.GenericFileProcessStrategy&lt;java.io.File&gt;</code> type.
          */
         public FileConsumerBuilder processStrategy(String processStrategy) {
             this.properties.put("processStrategy", processStrategy);
@@ -773,7 +773,7 @@ public interface FileEndpointBuilder {
          * Pluggable filter as a
          * org.apache.camel.component.file.GenericFileFilter class. Will skip
          * files if filter returns false in its accept() method. The option is a
-         * <code>org.apache.camel.component.file.GenericFileFilter<java.io.File></code> type.
+         * <code>org.apache.camel.component.file.GenericFileFilter&lt;java.io.File&gt;</code> type.
          */
         public FileConsumerBuilder filter(Object filter) {
             this.properties.put("filter", filter);
@@ -784,7 +784,7 @@ public interface FileEndpointBuilder {
          * org.apache.camel.component.file.GenericFileFilter class. Will skip
          * files if filter returns false in its accept() method. The option will
          * be converted to a
-         * <code>org.apache.camel.component.file.GenericFileFilter<java.io.File></code> type.
+         * <code>org.apache.camel.component.file.GenericFileFilter&lt;java.io.File&gt;</code> type.
          */
         public FileConsumerBuilder filter(String filter) {
             this.properties.put("filter", filter);
@@ -998,7 +998,7 @@ public interface FileEndpointBuilder {
          * Pluggable read-lock as a
          * org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy
          * implementation. The option is a
-         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy<java.io.File></code> type.
+         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy&lt;java.io.File&gt;</code> type.
          */
         public FileConsumerBuilder exclusiveReadLockStrategy(
                 Object exclusiveReadLockStrategy) {
@@ -1009,7 +1009,7 @@ public interface FileEndpointBuilder {
          * Pluggable read-lock as a
          * org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy
          * implementation. The option will be converted to a
-         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy<java.io.File></code> type.
+         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy&lt;java.io.File&gt;</code> type.
          */
         public FileConsumerBuilder exclusiveReadLockStrategy(
                 String exclusiveReadLockStrategy) {
@@ -1611,7 +1611,8 @@ public interface FileEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public FileConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -1621,8 +1622,8 @@ public interface FileEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public FileConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
@@ -1699,7 +1700,8 @@ public interface FileEndpointBuilder {
          * Built-in sort by using the File Language. Supports nested sorts, so
          * you can have a sort by file name and as a 2nd group sort by modified
          * date. The option is a
-         * <code>java.util.Comparator<org.apache.camel.Exchange></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.Exchange&gt;</code>
+         * type.
          */
         public FileConsumerBuilder sortBy(Comparator<Exchange> sortBy) {
             this.properties.put("sortBy", sortBy);
@@ -1709,7 +1711,8 @@ public interface FileEndpointBuilder {
          * Built-in sort by using the File Language. Supports nested sorts, so
          * you can have a sort by file name and as a 2nd group sort by modified
          * date. The option will be converted to a
-         * <code>java.util.Comparator<org.apache.camel.Exchange></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.Exchange&gt;</code>
+         * type.
          */
         public FileConsumerBuilder sortBy(String sortBy) {
             this.properties.put("sortBy", sortBy);
@@ -1717,7 +1720,7 @@ public interface FileEndpointBuilder {
         }
         /**
          * Pluggable sorter as a java.util.Comparator class. The option is a
-         * <code>java.util.Comparator<org.apache.camel.component.file.GenericFile<java.io.File>></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.component.file.GenericFile&lt;java.io.File&gt;&gt;</code> type.
          */
         public FileConsumerBuilder sorter(Comparator<Object> sorter) {
             this.properties.put("sorter", sorter);
@@ -1726,7 +1729,7 @@ public interface FileEndpointBuilder {
         /**
          * Pluggable sorter as a java.util.Comparator class. The option will be
          * converted to a
-         * <code>java.util.Comparator<org.apache.camel.component.file.GenericFile<java.io.File>></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.component.file.GenericFile&lt;java.io.File&gt;&gt;</code> type.
          */
         public FileConsumerBuilder sorter(String sorter) {
             this.properties.put("sorter", sorter);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FlatpackEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FlatpackEndpointBuilder.java
index b595ef0..cfb65de 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FlatpackEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FlatpackEndpointBuilder.java
@@ -515,7 +515,8 @@ public interface FlatpackEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public FlatpackConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -525,8 +526,8 @@ public interface FlatpackEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public FlatpackConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FtpEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FtpEndpointBuilder.java
index 2dcfc8a..3f8406c 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FtpEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FtpEndpointBuilder.java
@@ -439,7 +439,8 @@ public interface FtpEndpointBuilder {
         /**
          * Used by FtpComponent to provide additional parameters for the
          * FTPClientConfig. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T ftpClientConfigParameters(
                 Map<String, Object> ftpClientConfigParameters) {
@@ -449,7 +450,8 @@ public interface FtpEndpointBuilder {
         /**
          * Used by FtpComponent to provide additional parameters for the
          * FTPClientConfig. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T ftpClientConfigParameters(String ftpClientConfigParameters) {
             this.properties.put("ftpClientConfigParameters", ftpClientConfigParameters);
@@ -457,8 +459,8 @@ public interface FtpEndpointBuilder {
         }
         /**
          * Used by FtpComponent to provide additional parameters for the
-         * FTPClient. The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * FTPClient. The option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T ftpClientParameters(Map<String, Object> ftpClientParameters) {
             this.properties.put("ftpClientParameters", ftpClientParameters);
@@ -467,7 +469,8 @@ public interface FtpEndpointBuilder {
         /**
          * Used by FtpComponent to provide additional parameters for the
          * FTPClient. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T ftpClientParameters(String ftpClientParameters) {
             this.properties.put("ftpClientParameters", ftpClientParameters);
@@ -1077,7 +1080,7 @@ public interface FtpEndpointBuilder {
          * used when special conditions must be met before a file can be
          * consumed, such as a special ready file exists. If this option is set
          * then the readLock option does not apply. The option is a
-         * <code>org.apache.camel.component.file.GenericFileProcessStrategy<org.apache.commons.net.ftp.FTPFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileProcessStrategy&lt;org.apache.commons.net.ftp.FTPFile&gt;</code> type.
          */
         public FtpConsumerBuilder processStrategy(Object processStrategy) {
             this.properties.put("processStrategy", processStrategy);
@@ -1091,7 +1094,7 @@ public interface FtpEndpointBuilder {
          * consumed, such as a special ready file exists. If this option is set
          * then the readLock option does not apply. The option will be converted
          * to a
-         * <code>org.apache.camel.component.file.GenericFileProcessStrategy<org.apache.commons.net.ftp.FTPFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileProcessStrategy&lt;org.apache.commons.net.ftp.FTPFile&gt;</code> type.
          */
         public FtpConsumerBuilder processStrategy(String processStrategy) {
             this.properties.put("processStrategy", processStrategy);
@@ -1222,7 +1225,7 @@ public interface FtpEndpointBuilder {
          * Pluggable filter as a
          * org.apache.camel.component.file.GenericFileFilter class. Will skip
          * files if filter returns false in its accept() method. The option is a
-         * <code>org.apache.camel.component.file.GenericFileFilter<org.apache.commons.net.ftp.FTPFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileFilter&lt;org.apache.commons.net.ftp.FTPFile&gt;</code> type.
          */
         public FtpConsumerBuilder filter(Object filter) {
             this.properties.put("filter", filter);
@@ -1233,7 +1236,7 @@ public interface FtpEndpointBuilder {
          * org.apache.camel.component.file.GenericFileFilter class. Will skip
          * files if filter returns false in its accept() method. The option will
          * be converted to a
-         * <code>org.apache.camel.component.file.GenericFileFilter<org.apache.commons.net.ftp.FTPFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileFilter&lt;org.apache.commons.net.ftp.FTPFile&gt;</code> type.
          */
         public FtpConsumerBuilder filter(String filter) {
             this.properties.put("filter", filter);
@@ -1447,7 +1450,7 @@ public interface FtpEndpointBuilder {
          * Pluggable read-lock as a
          * org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy
          * implementation. The option is a
-         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy<org.apache.commons.net.ftp.FTPFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy&lt;org.apache.commons.net.ftp.FTPFile&gt;</code> type.
          */
         public FtpConsumerBuilder exclusiveReadLockStrategy(
                 Object exclusiveReadLockStrategy) {
@@ -1458,7 +1461,7 @@ public interface FtpEndpointBuilder {
          * Pluggable read-lock as a
          * org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy
          * implementation. The option will be converted to a
-         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy<org.apache.commons.net.ftp.FTPFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy&lt;org.apache.commons.net.ftp.FTPFile&gt;</code> type.
          */
         public FtpConsumerBuilder exclusiveReadLockStrategy(
                 String exclusiveReadLockStrategy) {
@@ -1954,7 +1957,8 @@ public interface FtpEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public FtpConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -1964,8 +1968,8 @@ public interface FtpEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public FtpConsumerBuilder schedulerProperties(String schedulerProperties) {
             this.properties.put("schedulerProperties", schedulerProperties);
@@ -2041,7 +2045,8 @@ public interface FtpEndpointBuilder {
          * Built-in sort by using the File Language. Supports nested sorts, so
          * you can have a sort by file name and as a 2nd group sort by modified
          * date. The option is a
-         * <code>java.util.Comparator<org.apache.camel.Exchange></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.Exchange&gt;</code>
+         * type.
          */
         public FtpConsumerBuilder sortBy(Comparator<Exchange> sortBy) {
             this.properties.put("sortBy", sortBy);
@@ -2051,7 +2056,8 @@ public interface FtpEndpointBuilder {
          * Built-in sort by using the File Language. Supports nested sorts, so
          * you can have a sort by file name and as a 2nd group sort by modified
          * date. The option will be converted to a
-         * <code>java.util.Comparator<org.apache.camel.Exchange></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.Exchange&gt;</code>
+         * type.
          */
         public FtpConsumerBuilder sortBy(String sortBy) {
             this.properties.put("sortBy", sortBy);
@@ -2059,7 +2065,7 @@ public interface FtpEndpointBuilder {
         }
         /**
          * Pluggable sorter as a java.util.Comparator class. The option is a
-         * <code>java.util.Comparator<org.apache.camel.component.file.GenericFile<org.apache.commons.net.ftp.FTPFile>></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.component.file.GenericFile&lt;org.apache.commons.net.ftp.FTPFile&gt;&gt;</code> type.
          */
         public FtpConsumerBuilder sorter(Comparator<Object> sorter) {
             this.properties.put("sorter", sorter);
@@ -2068,7 +2074,7 @@ public interface FtpEndpointBuilder {
         /**
          * Pluggable sorter as a java.util.Comparator class. The option will be
          * converted to a
-         * <code>java.util.Comparator<org.apache.camel.component.file.GenericFile<org.apache.commons.net.ftp.FTPFile>></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.component.file.GenericFile&lt;org.apache.commons.net.ftp.FTPFile&gt;&gt;</code> type.
          */
         public FtpConsumerBuilder sorter(String sorter) {
             this.properties.put("sorter", sorter);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FtpsEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FtpsEndpointBuilder.java
index 351b5b6..265b00b 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FtpsEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/FtpsEndpointBuilder.java
@@ -439,7 +439,8 @@ public interface FtpsEndpointBuilder {
         /**
          * Used by FtpComponent to provide additional parameters for the
          * FTPClientConfig. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T ftpClientConfigParameters(
                 Map<String, Object> ftpClientConfigParameters) {
@@ -449,7 +450,8 @@ public interface FtpsEndpointBuilder {
         /**
          * Used by FtpComponent to provide additional parameters for the
          * FTPClientConfig. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T ftpClientConfigParameters(String ftpClientConfigParameters) {
             this.properties.put("ftpClientConfigParameters", ftpClientConfigParameters);
@@ -457,8 +459,8 @@ public interface FtpsEndpointBuilder {
         }
         /**
          * Used by FtpComponent to provide additional parameters for the
-         * FTPClient. The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * FTPClient. The option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T ftpClientParameters(Map<String, Object> ftpClientParameters) {
             this.properties.put("ftpClientParameters", ftpClientParameters);
@@ -467,7 +469,8 @@ public interface FtpsEndpointBuilder {
         /**
          * Used by FtpComponent to provide additional parameters for the
          * FTPClient. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T ftpClientParameters(String ftpClientParameters) {
             this.properties.put("ftpClientParameters", ftpClientParameters);
@@ -678,7 +681,8 @@ public interface FtpsEndpointBuilder {
         }
         /**
          * Set the key store parameters. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T ftpClientKeyStoreParameters(
                 Map<String, Object> ftpClientKeyStoreParameters) {
@@ -687,7 +691,8 @@ public interface FtpsEndpointBuilder {
         }
         /**
          * Set the key store parameters. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T ftpClientKeyStoreParameters(String ftpClientKeyStoreParameters) {
             this.properties.put("ftpClientKeyStoreParameters", ftpClientKeyStoreParameters);
@@ -695,7 +700,8 @@ public interface FtpsEndpointBuilder {
         }
         /**
          * Set the trust store parameters. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T ftpClientTrustStoreParameters(
                 Map<String, Object> ftpClientTrustStoreParameters) {
@@ -704,7 +710,8 @@ public interface FtpsEndpointBuilder {
         }
         /**
          * Set the trust store parameters. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T ftpClientTrustStoreParameters(
                 String ftpClientTrustStoreParameters) {
@@ -1208,7 +1215,7 @@ public interface FtpsEndpointBuilder {
          * used when special conditions must be met before a file can be
          * consumed, such as a special ready file exists. If this option is set
          * then the readLock option does not apply. The option is a
-         * <code>org.apache.camel.component.file.GenericFileProcessStrategy<org.apache.commons.net.ftp.FTPFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileProcessStrategy&lt;org.apache.commons.net.ftp.FTPFile&gt;</code> type.
          */
         public FtpsConsumerBuilder processStrategy(Object processStrategy) {
             this.properties.put("processStrategy", processStrategy);
@@ -1222,7 +1229,7 @@ public interface FtpsEndpointBuilder {
          * consumed, such as a special ready file exists. If this option is set
          * then the readLock option does not apply. The option will be converted
          * to a
-         * <code>org.apache.camel.component.file.GenericFileProcessStrategy<org.apache.commons.net.ftp.FTPFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileProcessStrategy&lt;org.apache.commons.net.ftp.FTPFile&gt;</code> type.
          */
         public FtpsConsumerBuilder processStrategy(String processStrategy) {
             this.properties.put("processStrategy", processStrategy);
@@ -1353,7 +1360,7 @@ public interface FtpsEndpointBuilder {
          * Pluggable filter as a
          * org.apache.camel.component.file.GenericFileFilter class. Will skip
          * files if filter returns false in its accept() method. The option is a
-         * <code>org.apache.camel.component.file.GenericFileFilter<org.apache.commons.net.ftp.FTPFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileFilter&lt;org.apache.commons.net.ftp.FTPFile&gt;</code> type.
          */
         public FtpsConsumerBuilder filter(Object filter) {
             this.properties.put("filter", filter);
@@ -1364,7 +1371,7 @@ public interface FtpsEndpointBuilder {
          * org.apache.camel.component.file.GenericFileFilter class. Will skip
          * files if filter returns false in its accept() method. The option will
          * be converted to a
-         * <code>org.apache.camel.component.file.GenericFileFilter<org.apache.commons.net.ftp.FTPFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileFilter&lt;org.apache.commons.net.ftp.FTPFile&gt;</code> type.
          */
         public FtpsConsumerBuilder filter(String filter) {
             this.properties.put("filter", filter);
@@ -1578,7 +1585,7 @@ public interface FtpsEndpointBuilder {
          * Pluggable read-lock as a
          * org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy
          * implementation. The option is a
-         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy<org.apache.commons.net.ftp.FTPFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy&lt;org.apache.commons.net.ftp.FTPFile&gt;</code> type.
          */
         public FtpsConsumerBuilder exclusiveReadLockStrategy(
                 Object exclusiveReadLockStrategy) {
@@ -1589,7 +1596,7 @@ public interface FtpsEndpointBuilder {
          * Pluggable read-lock as a
          * org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy
          * implementation. The option will be converted to a
-         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy<org.apache.commons.net.ftp.FTPFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy&lt;org.apache.commons.net.ftp.FTPFile&gt;</code> type.
          */
         public FtpsConsumerBuilder exclusiveReadLockStrategy(
                 String exclusiveReadLockStrategy) {
@@ -2191,7 +2198,8 @@ public interface FtpsEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public FtpsConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -2201,8 +2209,8 @@ public interface FtpsEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public FtpsConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
@@ -2279,7 +2287,8 @@ public interface FtpsEndpointBuilder {
          * Built-in sort by using the File Language. Supports nested sorts, so
          * you can have a sort by file name and as a 2nd group sort by modified
          * date. The option is a
-         * <code>java.util.Comparator<org.apache.camel.Exchange></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.Exchange&gt;</code>
+         * type.
          */
         public FtpsConsumerBuilder sortBy(Comparator<Exchange> sortBy) {
             this.properties.put("sortBy", sortBy);
@@ -2289,7 +2298,8 @@ public interface FtpsEndpointBuilder {
          * Built-in sort by using the File Language. Supports nested sorts, so
          * you can have a sort by file name and as a 2nd group sort by modified
          * date. The option will be converted to a
-         * <code>java.util.Comparator<org.apache.camel.Exchange></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.Exchange&gt;</code>
+         * type.
          */
         public FtpsConsumerBuilder sortBy(String sortBy) {
             this.properties.put("sortBy", sortBy);
@@ -2297,7 +2307,7 @@ public interface FtpsEndpointBuilder {
         }
         /**
          * Pluggable sorter as a java.util.Comparator class. The option is a
-         * <code>java.util.Comparator<org.apache.camel.component.file.GenericFile<org.apache.commons.net.ftp.FTPFile>></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.component.file.GenericFile&lt;org.apache.commons.net.ftp.FTPFile&gt;&gt;</code> type.
          */
         public FtpsConsumerBuilder sorter(Comparator<Object> sorter) {
             this.properties.put("sorter", sorter);
@@ -2306,7 +2316,7 @@ public interface FtpsEndpointBuilder {
         /**
          * Pluggable sorter as a java.util.Comparator class. The option will be
          * converted to a
-         * <code>java.util.Comparator<org.apache.camel.component.file.GenericFile<org.apache.commons.net.ftp.FTPFile>></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.component.file.GenericFile&lt;org.apache.commons.net.ftp.FTPFile&gt;&gt;</code> type.
          */
         public FtpsConsumerBuilder sorter(String sorter) {
             this.properties.put("sorter", sorter);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleCalendarStreamEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleCalendarStreamEndpointBuilder.java
index f3570a7..ff047f1 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleCalendarStreamEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleCalendarStreamEndpointBuilder.java
@@ -166,7 +166,7 @@ public interface GoogleCalendarStreamEndpointBuilder {
          * Specifies the level of permissions you want a calendar application to
          * have to a user account. See
          * https://developers.google.com/calendar/auth for more info. The option
-         * is a <code>java.util.List<java.lang.String></code> type.
+         * is a <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T scopes(List<String> scopes) {
             this.properties.put("scopes", scopes);
@@ -176,8 +176,8 @@ public interface GoogleCalendarStreamEndpointBuilder {
          * Specifies the level of permissions you want a calendar application to
          * have to a user account. See
          * https://developers.google.com/calendar/auth for more info. The option
-         * will be converted to a <code>java.util.List<java.lang.String></code>
-         * type.
+         * will be converted to a
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T scopes(String scopes) {
             this.properties.put("scopes", scopes);
@@ -537,7 +537,8 @@ public interface GoogleCalendarStreamEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public GoogleCalendarStreamConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -547,8 +548,8 @@ public interface GoogleCalendarStreamEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public GoogleCalendarStreamConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleDriveEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleDriveEndpointBuilder.java
index 7d3b711..60be552 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleDriveEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleDriveEndpointBuilder.java
@@ -140,7 +140,7 @@ public interface GoogleDriveEndpointBuilder {
          * Specifies the level of permissions you want a drive application to
          * have to a user account. See
          * https://developers.google.com/drive/web/scopes for more info. The
-         * option is a <code>java.util.List<java.lang.String></code> type.
+         * option is a <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T scopes(List<String> scopes) {
             this.properties.put("scopes", scopes);
@@ -151,7 +151,7 @@ public interface GoogleDriveEndpointBuilder {
          * have to a user account. See
          * https://developers.google.com/drive/web/scopes for more info. The
          * option will be converted to a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T scopes(String scopes) {
             this.properties.put("scopes", scopes);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleMailStreamEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleMailStreamEndpointBuilder.java
index 005f4cd..65850f2 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleMailStreamEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleMailStreamEndpointBuilder.java
@@ -493,7 +493,8 @@ public interface GoogleMailStreamEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public GoogleMailStreamConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -503,8 +504,8 @@ public interface GoogleMailStreamEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public GoogleMailStreamConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleSheetsStreamEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleSheetsStreamEndpointBuilder.java
index 591c686..fa03dc3 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleSheetsStreamEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GoogleSheetsStreamEndpointBuilder.java
@@ -153,7 +153,7 @@ public interface GoogleSheetsStreamEndpointBuilder {
          * have to a user account. See
          * https://developers.google.com/identity/protocols/googlescopes for
          * more info. The option is a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T scopes(List<String> scopes) {
             this.properties.put("scopes", scopes);
@@ -164,7 +164,7 @@ public interface GoogleSheetsStreamEndpointBuilder {
          * have to a user account. See
          * https://developers.google.com/identity/protocols/googlescopes for
          * more info. The option will be converted to a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T scopes(String scopes) {
             this.properties.put("scopes", scopes);
@@ -539,7 +539,8 @@ public interface GoogleSheetsStreamEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public GoogleSheetsStreamConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -549,8 +550,8 @@ public interface GoogleSheetsStreamEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public GoogleSheetsStreamConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GuavaEventBusEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GuavaEventBusEndpointBuilder.java
index d53f71d..44b0a9d 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GuavaEventBusEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/GuavaEventBusEndpointBuilder.java
@@ -54,7 +54,7 @@ public interface GuavaEventBusEndpointBuilder {
          * setting it to the java.lang.Object i.e. the consumer will capture all
          * messages incoming to the event bus. This option cannot be used
          * together with listenerInterface option. The option is a
-         * <code>java.lang.Class<java.lang.Object></code> type.
+         * <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T eventClass(Class<Object> eventClass) {
             this.properties.put("eventClass", eventClass);
@@ -67,7 +67,7 @@ public interface GuavaEventBusEndpointBuilder {
          * setting it to the java.lang.Object i.e. the consumer will capture all
          * messages incoming to the event bus. This option cannot be used
          * together with listenerInterface option. The option will be converted
-         * to a <code>java.lang.Class<java.lang.Object></code> type.
+         * to a <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T eventClass(String eventClass) {
             this.properties.put("eventClass", eventClass);
@@ -79,7 +79,8 @@ public interface GuavaEventBusEndpointBuilder {
          * registered as the EventBus listener. Particularly useful when
          * creating multi-event listeners and for handling DeadEvent properly.
          * This option cannot be used together with eventClass option. The
-         * option is a <code>java.lang.Class<java.lang.Object></code> type.
+         * option is a <code>java.lang.Class&lt;java.lang.Object&gt;</code>
+         * type.
          */
         public T listenerInterface(Class<Object> listenerInterface) {
             this.properties.put("listenerInterface", listenerInterface);
@@ -92,7 +93,7 @@ public interface GuavaEventBusEndpointBuilder {
          * creating multi-event listeners and for handling DeadEvent properly.
          * This option cannot be used together with eventClass option. The
          * option will be converted to a
-         * <code>java.lang.Class<java.lang.Object></code> type.
+         * <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T listenerInterface(String listenerInterface) {
             this.properties.put("listenerInterface", listenerInterface);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HBaseEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HBaseEndpointBuilder.java
index 7fbabcd..8eedd02 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HBaseEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HBaseEndpointBuilder.java
@@ -68,8 +68,7 @@ public interface HBaseEndpointBuilder {
         }
         /**
          * A list of filters to use. The option is a
-         * <code>java.util.List<org.apache.hadoop.hbase.filter.Filter></code>
-         * type.
+         * <code>java.util.List&lt;org.apache.hadoop.hbase.filter.Filter&gt;</code> type.
          */
         public T filters(List<Object> filters) {
             this.properties.put("filters", filters);
@@ -77,8 +76,7 @@ public interface HBaseEndpointBuilder {
         }
         /**
          * A list of filters to use. The option will be converted to a
-         * <code>java.util.List<org.apache.hadoop.hbase.filter.Filter></code>
-         * type.
+         * <code>java.util.List&lt;org.apache.hadoop.hbase.filter.Filter&gt;</code> type.
          */
         public T filters(String filters) {
             this.properties.put("filters", filters);
@@ -112,8 +110,8 @@ public interface HBaseEndpointBuilder {
          * number suffix for referring to more than one columns valueType - The
          * value type. Supports a number suffix for referring to more than one
          * columns. Supported operations: CamelHBaseGet, and CamelHBaseScan. The
-         * option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T rowMapping(Map<String, Object> rowMapping) {
             this.properties.put("rowMapping", rowMapping);
@@ -130,8 +128,9 @@ public interface HBaseEndpointBuilder {
          * number suffix for referring to more than one columns valueType - The
          * value type. Supports a number suffix for referring to more than one
          * columns. Supported operations: CamelHBaseGet, and CamelHBaseScan. The
-         * option will be converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * option will be converted to a
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T rowMapping(String rowMapping) {
             this.properties.put("rowMapping", rowMapping);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HdfsEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HdfsEndpointBuilder.java
index f0ca71b..cd447b7 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HdfsEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HdfsEndpointBuilder.java
@@ -684,7 +684,8 @@ public interface HdfsEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public HdfsConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -694,8 +695,8 @@ public interface HdfsEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public HdfsConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HipchatEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HipchatEndpointBuilder.java
index e3eaa98..22d544f 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HipchatEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HipchatEndpointBuilder.java
@@ -458,7 +458,8 @@ public interface HipchatEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public HipchatConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -468,8 +469,8 @@ public interface HipchatEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public HipchatConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HttpEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HttpEndpointBuilder.java
index 96611b2..13a2bd1 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HttpEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/HttpEndpointBuilder.java
@@ -282,8 +282,8 @@ public interface HttpEndpointBuilder {
         }
         /**
          * To configure the HttpClient using the key/values from the Map. The
-         * option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T httpClientOptions(Map<String, Object> httpClientOptions) {
             this.properties.put("httpClientOptions", httpClientOptions);
@@ -291,8 +291,9 @@ public interface HttpEndpointBuilder {
         }
         /**
          * To configure the HttpClient using the key/values from the Map. The
-         * option will be converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * option will be converted to a
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T httpClientOptions(String httpClientOptions) {
             this.properties.put("httpClientOptions", httpClientOptions);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteCacheEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteCacheEndpointBuilder.java
index 63a179d..eb2e37d 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteCacheEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteCacheEndpointBuilder.java
@@ -237,7 +237,7 @@ public interface IgniteCacheEndpointBuilder {
         /**
          * The remote filter, only used by the Continuous Query Consumer. The
          * option is a
-         * <code>org.apache.ignite.cache.CacheEntryEventSerializableFilter<java.lang.Object, java.lang.Object></code> type.
+         * <code>org.apache.ignite.cache.CacheEntryEventSerializableFilter&lt;java.lang.Object, java.lang.Object&gt;</code> type.
          */
         public IgniteCacheConsumerBuilder remoteFilter(Object remoteFilter) {
             this.properties.put("remoteFilter", remoteFilter);
@@ -246,7 +246,7 @@ public interface IgniteCacheEndpointBuilder {
         /**
          * The remote filter, only used by the Continuous Query Consumer. The
          * option will be converted to a
-         * <code>org.apache.ignite.cache.CacheEntryEventSerializableFilter<java.lang.Object, java.lang.Object></code> type.
+         * <code>org.apache.ignite.cache.CacheEntryEventSerializableFilter&lt;java.lang.Object, java.lang.Object&gt;</code> type.
          */
         public IgniteCacheConsumerBuilder remoteFilter(String remoteFilter) {
             this.properties.put("remoteFilter", remoteFilter);
@@ -324,7 +324,7 @@ public interface IgniteCacheEndpointBuilder {
         /**
          * The Query to execute, only needed for operations that require it, and
          * for the Continuous Query Consumer. The option is a
-         * <code>org.apache.ignite.cache.query.Query<javax.cache.Cache$Entry<java.lang.Object, java.lang.Object>></code> type.
+         * <code>org.apache.ignite.cache.query.Query&lt;javax.cache.Cache$Entry&lt;java.lang.Object, java.lang.Object&gt;&gt;</code> type.
          */
         public IgniteCacheProducerBuilder query(Object query) {
             this.properties.put("query", query);
@@ -333,7 +333,7 @@ public interface IgniteCacheEndpointBuilder {
         /**
          * The Query to execute, only needed for operations that require it, and
          * for the Continuous Query Consumer. The option will be converted to a
-         * <code>org.apache.ignite.cache.query.Query<javax.cache.Cache$Entry<java.lang.Object, java.lang.Object>></code> type.
+         * <code>org.apache.ignite.cache.query.Query&lt;javax.cache.Cache$Entry&lt;java.lang.Object, java.lang.Object&gt;&gt;</code> type.
          */
         public IgniteCacheProducerBuilder query(String query) {
             this.properties.put("query", query);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteEventsEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteEventsEndpointBuilder.java
index ddf3249..0747ac0 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteEventsEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/IgniteEventsEndpointBuilder.java
@@ -185,7 +185,7 @@ public interface IgniteEventsEndpointBuilder {
         /**
          * The event IDs to subscribe to as a Set directly where the IDs are the
          * different constants in org.apache.ignite.events.EventType. The option
-         * is a <code>java.util.Set<java.lang.Integer></code> type.
+         * is a <code>java.util.Set&lt;java.lang.Integer&gt;</code> type.
          */
         public IgniteEventsConsumerBuilder events(Set<Integer> events) {
             this.properties.put("events", events);
@@ -194,8 +194,8 @@ public interface IgniteEventsEndpointBuilder {
         /**
          * The event IDs to subscribe to as a Set directly where the IDs are the
          * different constants in org.apache.ignite.events.EventType. The option
-         * will be converted to a <code>java.util.Set<java.lang.Integer></code>
-         * type.
+         * will be converted to a
+         * <code>java.util.Set&lt;java.lang.Integer&gt;</code> type.
          */
         public IgniteEventsConsumerBuilder events(String events) {
             this.properties.put("events", events);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/InfinispanEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/InfinispanEndpointBuilder.java
index aec7181..e7a3f3b 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/InfinispanEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/InfinispanEndpointBuilder.java
@@ -136,8 +136,8 @@ public interface InfinispanEndpointBuilder {
         }
         /**
          * Implementation specific properties for the CacheManager. The option
-         * is a <code>java.util.Map<java.lang.String, java.lang.String></code>
-         * type.
+         * is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.String&gt;</code> type.
          */
         public T configurationProperties(
                 Map<String, String> configurationProperties) {
@@ -146,8 +146,8 @@ public interface InfinispanEndpointBuilder {
         }
         /**
          * Implementation specific properties for the CacheManager. The option
-         * will be converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.String></code> type.
+         * will be converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.String&gt;</code> type.
          */
         public T configurationProperties(String configurationProperties) {
             this.properties.put("configurationProperties", configurationProperties);
@@ -333,7 +333,7 @@ public interface InfinispanEndpointBuilder {
          * TRANSACTION_COMPLETED, TRANSACTION_REGISTERED,
          * CACHE_ENTRY_INVALIDATED, DATA_REHASHED, TOPOLOGY_CHANGED,
          * PARTITION_STATUS_CHANGED. The option is a
-         * <code>java.util.Set<java.lang.String></code> type.
+         * <code>java.util.Set&lt;java.lang.String&gt;</code> type.
          */
         public InfinispanConsumerBuilder eventTypes(Set<String> eventTypes) {
             this.properties.put("eventTypes", eventTypes);
@@ -348,7 +348,7 @@ public interface InfinispanEndpointBuilder {
          * TRANSACTION_COMPLETED, TRANSACTION_REGISTERED,
          * CACHE_ENTRY_INVALIDATED, DATA_REHASHED, TOPOLOGY_CHANGED,
          * PARTITION_STATUS_CHANGED. The option will be converted to a
-         * <code>java.util.Set<java.lang.String></code> type.
+         * <code>java.util.Set&lt;java.lang.String&gt;</code> type.
          */
         public InfinispanConsumerBuilder eventTypes(String eventTypes) {
             this.properties.put("eventTypes", eventTypes);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/IronMQEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/IronMQEndpointBuilder.java
index 64a41b5..42869ba 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/IronMQEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/IronMQEndpointBuilder.java
@@ -550,7 +550,8 @@ public interface IronMQEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public IronMQConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -560,8 +561,8 @@ public interface IronMQEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public IronMQConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JBPMEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JBPMEndpointBuilder.java
index 27acc30..c561b76 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JBPMEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JBPMEndpointBuilder.java
@@ -343,7 +343,7 @@ public interface JBPMEndpointBuilder {
         }
         /**
          * The potentialOwners when nominateTask operation is performed. The
-         * option is a <code>java.util.List<java.lang.String></code> type.
+         * option is a <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T entities(List<String> entities) {
             this.properties.put("entities", entities);
@@ -352,7 +352,7 @@ public interface JBPMEndpointBuilder {
         /**
          * The potentialOwners when nominateTask operation is performed. The
          * option will be converted to a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T entities(String entities) {
             this.properties.put("entities", entities);
@@ -376,8 +376,8 @@ public interface JBPMEndpointBuilder {
         }
         /**
          * the variables that should be set for various operations. The option
-         * is a <code>java.util.Map<java.lang.String, java.lang.Object></code>
-         * type.
+         * is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T parameters(Map<String, Object> parameters) {
             this.properties.put("parameters", parameters);
@@ -385,8 +385,8 @@ public interface JBPMEndpointBuilder {
         }
         /**
          * the variables that should be set for various operations. The option
-         * will be converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * will be converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T parameters(String parameters) {
             this.properties.put("parameters", parameters);
@@ -412,7 +412,7 @@ public interface JBPMEndpointBuilder {
         }
         /**
          * The list of status to use when filtering tasks. The option is a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T statuses(List<String> statuses) {
             this.properties.put("statuses", statuses);
@@ -420,7 +420,8 @@ public interface JBPMEndpointBuilder {
         }
         /**
          * The list of status to use when filtering tasks. The option will be
-         * converted to a <code>java.util.List<java.lang.String></code> type.
+         * converted to a <code>java.util.List&lt;java.lang.String&gt;</code>
+         * type.
          */
         public T statuses(String statuses) {
             this.properties.put("statuses", statuses);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JCacheEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JCacheEndpointBuilder.java
index e19821b..37ae601 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JCacheEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JCacheEndpointBuilder.java
@@ -201,7 +201,7 @@ public interface JCacheEndpointBuilder {
         }
         /**
          * The CacheLoader factory. The option is a
-         * <code>javax.cache.configuration.Factory<javax.cache.integration.CacheLoader></code> type.
+         * <code>javax.cache.configuration.Factory&lt;javax.cache.integration.CacheLoader&gt;</code> type.
          */
         public T cacheLoaderFactory(Object cacheLoaderFactory) {
             this.properties.put("cacheLoaderFactory", cacheLoaderFactory);
@@ -209,7 +209,7 @@ public interface JCacheEndpointBuilder {
         }
         /**
          * The CacheLoader factory. The option will be converted to a
-         * <code>javax.cache.configuration.Factory<javax.cache.integration.CacheLoader></code> type.
+         * <code>javax.cache.configuration.Factory&lt;javax.cache.integration.CacheLoader&gt;</code> type.
          */
         public T cacheLoaderFactory(String cacheLoaderFactory) {
             this.properties.put("cacheLoaderFactory", cacheLoaderFactory);
@@ -217,7 +217,7 @@ public interface JCacheEndpointBuilder {
         }
         /**
          * The CacheWriter factory. The option is a
-         * <code>javax.cache.configuration.Factory<javax.cache.integration.CacheWriter></code> type.
+         * <code>javax.cache.configuration.Factory&lt;javax.cache.integration.CacheWriter&gt;</code> type.
          */
         public T cacheWriterFactory(Object cacheWriterFactory) {
             this.properties.put("cacheWriterFactory", cacheWriterFactory);
@@ -225,7 +225,7 @@ public interface JCacheEndpointBuilder {
         }
         /**
          * The CacheWriter factory. The option will be converted to a
-         * <code>javax.cache.configuration.Factory<javax.cache.integration.CacheWriter></code> type.
+         * <code>javax.cache.configuration.Factory&lt;javax.cache.integration.CacheWriter&gt;</code> type.
          */
         public T cacheWriterFactory(String cacheWriterFactory) {
             this.properties.put("cacheWriterFactory", cacheWriterFactory);
@@ -250,7 +250,7 @@ public interface JCacheEndpointBuilder {
         }
         /**
          * The ExpiryPolicy factory. The option is a
-         * <code>javax.cache.configuration.Factory<javax.cache.expiry.ExpiryPolicy></code> type.
+         * <code>javax.cache.configuration.Factory&lt;javax.cache.expiry.ExpiryPolicy&gt;</code> type.
          */
         public T expiryPolicyFactory(Object expiryPolicyFactory) {
             this.properties.put("expiryPolicyFactory", expiryPolicyFactory);
@@ -258,7 +258,7 @@ public interface JCacheEndpointBuilder {
         }
         /**
          * The ExpiryPolicy factory. The option will be converted to a
-         * <code>javax.cache.configuration.Factory<javax.cache.expiry.ExpiryPolicy></code> type.
+         * <code>javax.cache.configuration.Factory&lt;javax.cache.expiry.ExpiryPolicy&gt;</code> type.
          */
         public T expiryPolicyFactory(String expiryPolicyFactory) {
             this.properties.put("expiryPolicyFactory", expiryPolicyFactory);
@@ -323,7 +323,7 @@ public interface JCacheEndpointBuilder {
         /**
          * Events a consumer should filter. If using filteredEvents option, then
          * eventFilters one will be ignored. The option is a
-         * <code>java.util.List<javax.cache.event.EventType></code> type.
+         * <code>java.util.List&lt;javax.cache.event.EventType&gt;</code> type.
          */
         public JCacheConsumerBuilder filteredEvents(
                 List<EventType> filteredEvents) {
@@ -333,7 +333,7 @@ public interface JCacheEndpointBuilder {
         /**
          * Events a consumer should filter. If using filteredEvents option, then
          * eventFilters one will be ignored. The option will be converted to a
-         * <code>java.util.List<javax.cache.event.EventType></code> type.
+         * <code>java.util.List&lt;javax.cache.event.EventType&gt;</code> type.
          */
         public JCacheConsumerBuilder filteredEvents(String filteredEvents) {
             this.properties.put("filteredEvents", filteredEvents);
@@ -374,8 +374,7 @@ public interface JCacheEndpointBuilder {
         /**
          * The CacheEntryEventFilter. If using eventFilters option, then
          * filteredEvents one will be ignored. The option is a
-         * <code>java.util.List<javax.cache.event.CacheEntryEventFilter></code>
-         * type.
+         * <code>java.util.List&lt;javax.cache.event.CacheEntryEventFilter&gt;</code> type.
          */
         public JCacheConsumerBuilder eventFilters(List<Object> eventFilters) {
             this.properties.put("eventFilters", eventFilters);
@@ -384,8 +383,7 @@ public interface JCacheEndpointBuilder {
         /**
          * The CacheEntryEventFilter. If using eventFilters option, then
          * filteredEvents one will be ignored. The option will be converted to a
-         * <code>java.util.List<javax.cache.event.CacheEntryEventFilter></code>
-         * type.
+         * <code>java.util.List&lt;javax.cache.event.CacheEntryEventFilter&gt;</code> type.
          */
         public JCacheConsumerBuilder eventFilters(String eventFilters) {
             this.properties.put("eventFilters", eventFilters);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JMXEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JMXEndpointBuilder.java
index b59808e..5534678 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JMXEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JMXEndpointBuilder.java
@@ -184,7 +184,8 @@ public interface JMXEndpointBuilder {
         /**
          * Properties for the object name. These values will be used if the
          * objectName param is not set. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public T objectProperties(Map<String, String> objectProperties) {
             this.properties.put("objectProperties", objectProperties);
@@ -193,7 +194,8 @@ public interface JMXEndpointBuilder {
         /**
          * Properties for the object name. These values will be used if the
          * objectName param is not set. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public T objectProperties(String objectProperties) {
             this.properties.put("objectProperties", objectProperties);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JdbcEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JdbcEndpointBuilder.java
index 68b92d2..a18ade9 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JdbcEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JdbcEndpointBuilder.java
@@ -94,7 +94,8 @@ public interface JdbcEndpointBuilder {
         /**
          * Optional parameters to the java.sql.Statement. For example to set
          * maxRows, fetchSize etc. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T parameters(Map<String, Object> parameters) {
             this.properties.put("parameters", parameters);
@@ -103,7 +104,8 @@ public interface JdbcEndpointBuilder {
         /**
          * Optional parameters to the java.sql.Statement. For example to set
          * maxRows, fetchSize etc. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T parameters(String parameters) {
             this.properties.put("parameters", parameters);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JettyHttpEndpointBuilder9.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JettyHttpEndpointBuilder9.java
index a7c41a5..6603557 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JettyHttpEndpointBuilder9.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JettyHttpEndpointBuilder9.java
@@ -616,8 +616,8 @@ public interface JettyHttpEndpointBuilder9 {
         /**
          * Configuration of the filter init parameters. These parameters will be
          * applied to the filter list before starting the jetty server. The
-         * option is a <code>java.util.Map<java.lang.String,
-         * java.lang.String></code> type.
+         * option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.String&gt;</code> type.
          */
         public JettyHttpConsumerBuilder9 filterInitParameters(
                 Map<String, String> filterInitParameters) {
@@ -627,8 +627,9 @@ public interface JettyHttpEndpointBuilder9 {
         /**
          * Configuration of the filter init parameters. These parameters will be
          * applied to the filter list before starting the jetty server. The
-         * option will be converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.String></code> type.
+         * option will be converted to a
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public JettyHttpConsumerBuilder9 filterInitParameters(
                 String filterInitParameters) {
@@ -638,7 +639,8 @@ public interface JettyHttpEndpointBuilder9 {
         /**
          * Allows using a custom filters which is putted into a list and can be
          * find in the Registry. Multiple values can be separated by comma. The
-         * option is a <code>java.util.List<javax.servlet.Filter></code> type.
+         * option is a <code>java.util.List&lt;javax.servlet.Filter&gt;</code>
+         * type.
          */
         public JettyHttpConsumerBuilder9 filtersRef(List<Object> filtersRef) {
             this.properties.put("filtersRef", filtersRef);
@@ -648,7 +650,7 @@ public interface JettyHttpEndpointBuilder9 {
          * Allows using a custom filters which is putted into a list and can be
          * find in the Registry. Multiple values can be separated by comma. The
          * option will be converted to a
-         * <code>java.util.List<javax.servlet.Filter></code> type.
+         * <code>java.util.List&lt;javax.servlet.Filter&gt;</code> type.
          */
         public JettyHttpConsumerBuilder9 filtersRef(String filtersRef) {
             this.properties.put("filtersRef", filtersRef);
@@ -661,7 +663,8 @@ public interface JettyHttpEndpointBuilder9 {
          * handlers with different Jetty endpoints using the same port number.
          * The handlers is associated to the port number. If you need different
          * handlers, then use different port numbers. The option is a
-         * <code>java.util.List<org.eclipse.jetty.server.Handler></code> type.
+         * <code>java.util.List&lt;org.eclipse.jetty.server.Handler&gt;</code>
+         * type.
          */
         public JettyHttpConsumerBuilder9 handlers(List<Object> handlers) {
             this.properties.put("handlers", handlers);
@@ -675,7 +678,8 @@ public interface JettyHttpEndpointBuilder9 {
          * The handlers is associated to the port number. If you need different
          * handlers, then use different port numbers. The option will be
          * converted to a
-         * <code>java.util.List<org.eclipse.jetty.server.Handler></code> type.
+         * <code>java.util.List&lt;org.eclipse.jetty.server.Handler&gt;</code>
+         * type.
          */
         public JettyHttpConsumerBuilder9 handlers(String handlers) {
             this.properties.put("handlers", handlers);
@@ -1033,7 +1037,8 @@ public interface JettyHttpEndpointBuilder9 {
          * httpClient.timeout=30000 sets the request timeout to 30 seconds, in
          * case you want to timeout sooner if you have long running
          * request/response calls. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public JettyHttpProducerBuilder9 httpClientParameters(
                 Map<String, Object> httpClientParameters) {
@@ -1046,7 +1051,8 @@ public interface JettyHttpEndpointBuilder9 {
          * httpClient.timeout=30000 sets the request timeout to 30 seconds, in
          * case you want to timeout sooner if you have long running
          * request/response calls. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public JettyHttpProducerBuilder9 httpClientParameters(
                 String httpClientParameters) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JooqEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JooqEndpointBuilder.java
index 62080f7..459e50f 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JooqEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JooqEndpointBuilder.java
@@ -47,7 +47,7 @@ public interface JooqEndpointBuilder {
         }
         /**
          * JOOQ entity class. The option is a
-         * <code>java.lang.Class<java.lang.Object></code> type.
+         * <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T entityType(Class<Object> entityType) {
             this.properties.put("entityType", entityType);
@@ -55,7 +55,7 @@ public interface JooqEndpointBuilder {
         }
         /**
          * JOOQ entity class. The option will be converted to a
-         * <code>java.lang.Class<java.lang.Object></code> type.
+         * <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T entityType(String entityType) {
             this.properties.put("entityType", entityType);
@@ -419,7 +419,8 @@ public interface JooqEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public JooqConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -429,8 +430,8 @@ public interface JooqEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public JooqConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JpaEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JpaEndpointBuilder.java
index ba9cf62..3a634e7 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JpaEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JpaEndpointBuilder.java
@@ -47,7 +47,7 @@ public interface JpaEndpointBuilder {
         }
         /**
          * The JPA annotated class to use as entity. The option is a
-         * <code>java.lang.Class<java.lang.Object></code> type.
+         * <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T entityType(Class<Object> entityType) {
             this.properties.put("entityType", entityType);
@@ -55,7 +55,8 @@ public interface JpaEndpointBuilder {
         }
         /**
          * The JPA annotated class to use as entity. The option will be
-         * converted to a <code>java.lang.Class<java.lang.Object></code> type.
+         * converted to a <code>java.lang.Class&lt;java.lang.Object&gt;</code>
+         * type.
          */
         public T entityType(String entityType) {
             this.properties.put("entityType", entityType);
@@ -125,7 +126,8 @@ public interface JpaEndpointBuilder {
          * it's used for producer, Simple expression can be used as a parameter
          * value. It allows you to retrieve parameter values from the message
          * body, header and etc. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T parameters(Map<String, Object> parameters) {
             this.properties.put("parameters", parameters);
@@ -139,7 +141,8 @@ public interface JpaEndpointBuilder {
          * it's used for producer, Simple expression can be used as a parameter
          * value. It allows you to retrieve parameter values from the message
          * body, header and etc. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T parameters(String parameters) {
             this.properties.put("parameters", parameters);
@@ -167,7 +170,7 @@ public interface JpaEndpointBuilder {
          * entityManager.createNativeQuery(nativeQuery)). Without this option,
          * we will return an object array. Only has an affect when using in
          * conjunction with native query when consuming data. The option is a
-         * <code>java.lang.Class<java.lang.Object></code> type.
+         * <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T resultClass(Class<Object> resultClass) {
             this.properties.put("resultClass", resultClass);
@@ -179,7 +182,8 @@ public interface JpaEndpointBuilder {
          * entityManager.createNativeQuery(nativeQuery)). Without this option,
          * we will return an object array. Only has an affect when using in
          * conjunction with native query when consuming data. The option will be
-         * converted to a <code>java.lang.Class<java.lang.Object></code> type.
+         * converted to a <code>java.lang.Class&lt;java.lang.Object&gt;</code>
+         * type.
          */
         public T resultClass(String resultClass) {
             this.properties.put("resultClass", resultClass);
@@ -225,7 +229,8 @@ public interface JpaEndpointBuilder {
         }
         /**
          * Additional properties for the entity manager to use. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T entityManagerProperties(
                 Map<String, Object> entityManagerProperties) {
@@ -234,8 +239,8 @@ public interface JpaEndpointBuilder {
         }
         /**
          * Additional properties for the entity manager to use. The option will
-         * be converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * be converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T entityManagerProperties(String entityManagerProperties) {
             this.properties.put("entityManagerProperties", entityManagerProperties);
@@ -333,7 +338,7 @@ public interface JpaEndpointBuilder {
         /**
          * To use a custom DeleteHandler to delete the row after the consumer is
          * done processing the exchange. The option is a
-         * <code>org.apache.camel.component.jpa.DeleteHandler<java.lang.Object></code> type.
+         * <code>org.apache.camel.component.jpa.DeleteHandler&lt;java.lang.Object&gt;</code> type.
          */
         public JpaConsumerBuilder deleteHandler(Object deleteHandler) {
             this.properties.put("deleteHandler", deleteHandler);
@@ -342,7 +347,7 @@ public interface JpaEndpointBuilder {
         /**
          * To use a custom DeleteHandler to delete the row after the consumer is
          * done processing the exchange. The option will be converted to a
-         * <code>org.apache.camel.component.jpa.DeleteHandler<java.lang.Object></code> type.
+         * <code>org.apache.camel.component.jpa.DeleteHandler&lt;java.lang.Object&gt;</code> type.
          */
         public JpaConsumerBuilder deleteHandler(String deleteHandler) {
             this.properties.put("deleteHandler", deleteHandler);
@@ -388,7 +393,7 @@ public interface JpaEndpointBuilder {
         /**
          * To use a custom Pre-DeleteHandler to delete the row after the
          * consumer has read the entity. The option is a
-         * <code>org.apache.camel.component.jpa.DeleteHandler<java.lang.Object></code> type.
+         * <code>org.apache.camel.component.jpa.DeleteHandler&lt;java.lang.Object&gt;</code> type.
          */
         public JpaConsumerBuilder preDeleteHandler(Object preDeleteHandler) {
             this.properties.put("preDeleteHandler", preDeleteHandler);
@@ -397,7 +402,7 @@ public interface JpaEndpointBuilder {
         /**
          * To use a custom Pre-DeleteHandler to delete the row after the
          * consumer has read the entity. The option will be converted to a
-         * <code>org.apache.camel.component.jpa.DeleteHandler<java.lang.Object></code> type.
+         * <code>org.apache.camel.component.jpa.DeleteHandler&lt;java.lang.Object&gt;</code> type.
          */
         public JpaConsumerBuilder preDeleteHandler(String preDeleteHandler) {
             this.properties.put("preDeleteHandler", preDeleteHandler);
@@ -712,7 +717,8 @@ public interface JpaEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public JpaConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -722,8 +728,8 @@ public interface JpaEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public JpaConsumerBuilder schedulerProperties(String schedulerProperties) {
             this.properties.put("schedulerProperties", schedulerProperties);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Jt400EndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Jt400EndpointBuilder.java
index 7767b94..528db7a 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Jt400EndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Jt400EndpointBuilder.java
@@ -605,7 +605,8 @@ public interface Jt400EndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public Jt400ConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -615,8 +616,8 @@ public interface Jt400EndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public Jt400ConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/KafkaEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/KafkaEndpointBuilder.java
index a2ecdf7..5cb777e 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/KafkaEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/KafkaEndpointBuilder.java
@@ -839,8 +839,8 @@ public interface KafkaEndpointBuilder {
          * The offset repository to use in order to locally store the offset of
          * each partition of the topic. Defining one will disable the
          * autocommit. The option is a
-         * <code>org.apache.camel.spi.StateRepository<java.lang.String,
-         * java.lang.String></code> type.
+         * <code>org.apache.camel.spi.StateRepository&lt;java.lang.String,
+         * java.lang.String&gt;</code> type.
          */
         public KafkaConsumerBuilder offsetRepository(
                 StateRepository<String, String> offsetRepository) {
@@ -851,8 +851,8 @@ public interface KafkaEndpointBuilder {
          * The offset repository to use in order to locally store the offset of
          * each partition of the topic. Defining one will disable the
          * autocommit. The option will be converted to a
-         * <code>org.apache.camel.spi.StateRepository<java.lang.String,
-         * java.lang.String></code> type.
+         * <code>org.apache.camel.spi.StateRepository&lt;java.lang.String,
+         * java.lang.String&gt;</code> type.
          */
         public KafkaConsumerBuilder offsetRepository(String offsetRepository) {
             this.properties.put("offsetRepository", offsetRepository);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/KinesisEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/KinesisEndpointBuilder.java
index 51f0232..f0b8f1f 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/KinesisEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/KinesisEndpointBuilder.java
@@ -548,7 +548,8 @@ public interface KinesisEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public KinesisConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -558,8 +559,8 @@ public interface KinesisEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public KinesisConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/LinkedInEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/LinkedInEndpointBuilder.java
index d65d16a..9c5fa11 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/LinkedInEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/LinkedInEndpointBuilder.java
@@ -128,7 +128,8 @@ public interface LinkedInEndpointBuilder {
         /**
          * Custom HTTP parameters, for example, proxy host and port. Use
          * constants from AllClientPNames. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T httpParams(Map<String, Object> httpParams) {
             this.properties.put("httpParams", httpParams);
@@ -137,7 +138,8 @@ public interface LinkedInEndpointBuilder {
         /**
          * Custom HTTP parameters, for example, proxy host and port. Use
          * constants from AllClientPNames. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T httpParams(String httpParams) {
             this.properties.put("httpParams", httpParams);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MailEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MailEndpointBuilder.java
index 10a4431..da01861 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MailEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MailEndpointBuilder.java
@@ -1073,7 +1073,8 @@ public interface MailEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public MailConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -1083,8 +1084,8 @@ public interface MailEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public MailConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MicrometerEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MicrometerEndpointBuilder.java
index f78626e..64eff64 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MicrometerEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MicrometerEndpointBuilder.java
@@ -62,8 +62,7 @@ public interface MicrometerEndpointBuilder {
         }
         /**
          * Tags of metrics. The option is a
-         * <code>java.lang.Iterable<io.micrometer.core.instrument.Tag></code>
-         * type.
+         * <code>java.lang.Iterable&lt;io.micrometer.core.instrument.Tag&gt;</code> type.
          */
         public T tags(Iterable<Object> tags) {
             this.properties.put("tags", tags);
@@ -71,8 +70,7 @@ public interface MicrometerEndpointBuilder {
         }
         /**
          * Tags of metrics. The option will be converted to a
-         * <code>java.lang.Iterable<io.micrometer.core.instrument.Tag></code>
-         * type.
+         * <code>java.lang.Iterable&lt;io.micrometer.core.instrument.Tag&gt;</code> type.
          */
         public T tags(String tags) {
             this.properties.put("tags", tags);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MiloClientEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MiloClientEndpointBuilder.java
index f1a2b40..1769a0b 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MiloClientEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MiloClientEndpointBuilder.java
@@ -177,7 +177,7 @@ public interface MiloClientEndpointBuilder {
         /**
          * A set of allowed security policy URIs. Default is to accept all and
          * use the highest. The option is a
-         * <code>java.util.Set<java.lang.String></code> type.
+         * <code>java.util.Set&lt;java.lang.String&gt;</code> type.
          */
         public T allowedSecurityPolicies(Set<String> allowedSecurityPolicies) {
             this.properties.put("allowedSecurityPolicies", allowedSecurityPolicies);
@@ -186,7 +186,7 @@ public interface MiloClientEndpointBuilder {
         /**
          * A set of allowed security policy URIs. Default is to accept all and
          * use the highest. The option will be converted to a
-         * <code>java.util.Set<java.lang.String></code> type.
+         * <code>java.util.Set&lt;java.lang.String&gt;</code> type.
          */
         public T allowedSecurityPolicies(String allowedSecurityPolicies) {
             this.properties.put("allowedSecurityPolicies", allowedSecurityPolicies);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Mina2EndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Mina2EndpointBuilder.java
index db3e4f0..b13f31e 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Mina2EndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Mina2EndpointBuilder.java
@@ -344,7 +344,7 @@ public interface Mina2EndpointBuilder {
         }
         /**
          * You can set a list of Mina IoFilters to use. The option is a
-         * <code>java.util.List<org.apache.mina.core.filterchain.IoFilter></code> type.
+         * <code>java.util.List&lt;org.apache.mina.core.filterchain.IoFilter&gt;</code> type.
          */
         public T filters(List<Object> filters) {
             this.properties.put("filters", filters);
@@ -353,7 +353,7 @@ public interface Mina2EndpointBuilder {
         /**
          * You can set a list of Mina IoFilters to use. The option will be
          * converted to a
-         * <code>java.util.List<org.apache.mina.core.filterchain.IoFilter></code> type.
+         * <code>java.util.List&lt;org.apache.mina.core.filterchain.IoFilter&gt;</code> type.
          */
         public T filters(String filters) {
             this.properties.put("filters", filters);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MyBatisEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MyBatisEndpointBuilder.java
index c295e1e..3d8377f 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MyBatisEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/MyBatisEndpointBuilder.java
@@ -508,7 +508,8 @@ public interface MyBatisEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public MyBatisConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -518,8 +519,8 @@ public interface MyBatisEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public MyBatisConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/NettyEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/NettyEndpointBuilder.java
index f6bdee6..7756b25 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/NettyEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/NettyEndpointBuilder.java
@@ -290,7 +290,8 @@ public interface NettyEndpointBuilder {
          * For example option.child.keepAlive=false to set the netty option
          * child.keepAlive=false. See the Netty documentation for possible
          * options that can be used. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T options(Map<String, Object> options) {
             this.properties.put("options", options);
@@ -301,7 +302,8 @@ public interface NettyEndpointBuilder {
          * For example option.child.keepAlive=false to set the netty option
          * child.keepAlive=false. See the Netty documentation for possible
          * options that can be used. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T options(String options) {
             this.properties.put("options", options);
@@ -542,7 +544,8 @@ public interface NettyEndpointBuilder {
          * separated by comma, and have the values be looked up in the Registry.
          * Just remember to prefix the value with # so Camel knows it should
          * lookup. The option is a
-         * <code>java.util.List<io.netty.channel.ChannelHandler></code> type.
+         * <code>java.util.List&lt;io.netty.channel.ChannelHandler&gt;</code>
+         * type.
          */
         public T decoders(List<Object> decoders) {
             this.properties.put("decoders", decoders);
@@ -553,7 +556,8 @@ public interface NettyEndpointBuilder {
          * separated by comma, and have the values be looked up in the Registry.
          * Just remember to prefix the value with # so Camel knows it should
          * lookup. The option will be converted to a
-         * <code>java.util.List<io.netty.channel.ChannelHandler></code> type.
+         * <code>java.util.List&lt;io.netty.channel.ChannelHandler&gt;</code>
+         * type.
          */
         public T decoders(String decoders) {
             this.properties.put("decoders", decoders);
@@ -604,7 +608,8 @@ public interface NettyEndpointBuilder {
          * separated by comma, and have the values be looked up in the Registry.
          * Just remember to prefix the value with # so Camel knows it should
          * lookup. The option is a
-         * <code>java.util.List<io.netty.channel.ChannelHandler></code> type.
+         * <code>java.util.List&lt;io.netty.channel.ChannelHandler&gt;</code>
+         * type.
          */
         public T encoders(List<Object> encoders) {
             this.properties.put("encoders", encoders);
@@ -615,7 +620,8 @@ public interface NettyEndpointBuilder {
          * separated by comma, and have the values be looked up in the Registry.
          * Just remember to prefix the value with # so Camel knows it should
          * lookup. The option will be converted to a
-         * <code>java.util.List<io.netty.channel.ChannelHandler></code> type.
+         * <code>java.util.List&lt;io.netty.channel.ChannelHandler&gt;</code>
+         * type.
          */
         public T encoders(String encoders) {
             this.properties.put("encoders", encoders);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/NettyHttpEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/NettyHttpEndpointBuilder.java
index ceca605..d51a478 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/NettyHttpEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/NettyHttpEndpointBuilder.java
@@ -395,7 +395,8 @@ public interface NettyHttpEndpointBuilder {
          * For example option.child.keepAlive=false to set the netty option
          * child.keepAlive=false. See the Netty documentation for possible
          * options that can be used. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T options(Map<String, Object> options) {
             this.properties.put("options", options);
@@ -406,7 +407,8 @@ public interface NettyHttpEndpointBuilder {
          * For example option.child.keepAlive=false to set the netty option
          * child.keepAlive=false. See the Netty documentation for possible
          * options that can be used. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T options(String options) {
             this.properties.put("options", options);
@@ -587,7 +589,8 @@ public interface NettyHttpEndpointBuilder {
          * separated by comma, and have the values be looked up in the Registry.
          * Just remember to prefix the value with # so Camel knows it should
          * lookup. The option is a
-         * <code>java.util.List<io.netty.channel.ChannelHandler></code> type.
+         * <code>java.util.List&lt;io.netty.channel.ChannelHandler&gt;</code>
+         * type.
          */
         public T decoders(List<Object> decoders) {
             this.properties.put("decoders", decoders);
@@ -598,7 +601,8 @@ public interface NettyHttpEndpointBuilder {
          * separated by comma, and have the values be looked up in the Registry.
          * Just remember to prefix the value with # so Camel knows it should
          * lookup. The option will be converted to a
-         * <code>java.util.List<io.netty.channel.ChannelHandler></code> type.
+         * <code>java.util.List&lt;io.netty.channel.ChannelHandler&gt;</code>
+         * type.
          */
         public T decoders(String decoders) {
             this.properties.put("decoders", decoders);
@@ -629,7 +633,8 @@ public interface NettyHttpEndpointBuilder {
          * separated by comma, and have the values be looked up in the Registry.
          * Just remember to prefix the value with # so Camel knows it should
          * lookup. The option is a
-         * <code>java.util.List<io.netty.channel.ChannelHandler></code> type.
+         * <code>java.util.List&lt;io.netty.channel.ChannelHandler&gt;</code>
+         * type.
          */
         public T encoders(List<Object> encoders) {
             this.properties.put("encoders", encoders);
@@ -640,7 +645,8 @@ public interface NettyHttpEndpointBuilder {
          * separated by comma, and have the values be looked up in the Registry.
          * Just remember to prefix the value with # so Camel knows it should
          * lookup. The option will be converted to a
-         * <code>java.util.List<io.netty.channel.ChannelHandler></code> type.
+         * <code>java.util.List&lt;io.netty.channel.ChannelHandler&gt;</code>
+         * type.
          */
         public T encoders(String encoders) {
             this.properties.put("encoders", encoders);
@@ -1316,8 +1322,9 @@ public interface NettyHttpEndpointBuilder {
         }
         /**
          * To configure NettyHttpSecurityConfiguration using key/value pairs
-         * from the map. The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * from the map. The option is a
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public NettyHttpConsumerBuilder securityOptions(
                 Map<String, Object> securityOptions) {
@@ -1327,7 +1334,8 @@ public interface NettyHttpEndpointBuilder {
         /**
          * To configure NettyHttpSecurityConfiguration using key/value pairs
          * from the map. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public NettyHttpConsumerBuilder securityOptions(String securityOptions) {
             this.properties.put("securityOptions", securityOptions);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Olingo2EndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Olingo2EndpointBuilder.java
index ed45107..771f8aa 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Olingo2EndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Olingo2EndpointBuilder.java
@@ -160,7 +160,8 @@ public interface Olingo2EndpointBuilder {
         /**
          * Custom HTTP headers to inject into every request, this could include
          * OAuth tokens, etc. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public T httpHeaders(Map<String, String> httpHeaders) {
             this.properties.put("httpHeaders", httpHeaders);
@@ -169,7 +170,8 @@ public interface Olingo2EndpointBuilder {
         /**
          * Custom HTTP headers to inject into every request, this could include
          * OAuth tokens, etc. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public T httpHeaders(String httpHeaders) {
             this.properties.put("httpHeaders", httpHeaders);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Olingo4EndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Olingo4EndpointBuilder.java
index bdc54ba..ed3ad70 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Olingo4EndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Olingo4EndpointBuilder.java
@@ -160,7 +160,8 @@ public interface Olingo4EndpointBuilder {
         /**
          * Custom HTTP headers to inject into every request, this could include
          * OAuth tokens, etc. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public T httpHeaders(Map<String, String> httpHeaders) {
             this.properties.put("httpHeaders", httpHeaders);
@@ -169,7 +170,8 @@ public interface Olingo4EndpointBuilder {
         /**
          * Custom HTTP headers to inject into every request, this could include
          * OAuth tokens, etc. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public T httpHeaders(String httpHeaders) {
             this.properties.put("httpHeaders", httpHeaders);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/PropertiesEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/PropertiesEndpointBuilder.java
index b5f528f..aa302af 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/PropertiesEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/PropertiesEndpointBuilder.java
@@ -69,7 +69,7 @@ public interface PropertiesEndpointBuilder {
          * A list of locations to load properties. You can use comma to separate
          * multiple locations. This option will override any default locations
          * and only use the locations from this option. The option is a
-         * <code>java.util.List<org.apache.camel.component.properties.PropertiesLocation></code> type.
+         * <code>java.util.List&lt;org.apache.camel.component.properties.PropertiesLocation&gt;</code> type.
          */
         public T locations(List<Object> locations) {
             this.properties.put("locations", locations);
@@ -80,7 +80,7 @@ public interface PropertiesEndpointBuilder {
          * multiple locations. This option will override any default locations
          * and only use the locations from this option. The option will be
          * converted to a
-         * <code>java.util.List<org.apache.camel.component.properties.PropertiesLocation></code> type.
+         * <code>java.util.List&lt;org.apache.camel.component.properties.PropertiesLocation&gt;</code> type.
          */
         public T locations(String locations) {
             this.properties.put("locations", locations);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/QuartzEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/QuartzEndpointBuilder.java
index c2110ea..eaf7b99 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/QuartzEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/QuartzEndpointBuilder.java
@@ -202,7 +202,8 @@ public interface QuartzEndpointBuilder {
         }
         /**
          * To configure additional options on the job. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T jobParameters(Map<String, Object> jobParameters) {
             this.properties.put("jobParameters", jobParameters);
@@ -210,8 +211,8 @@ public interface QuartzEndpointBuilder {
         }
         /**
          * To configure additional options on the job. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T jobParameters(String jobParameters) {
             this.properties.put("jobParameters", jobParameters);
@@ -253,7 +254,8 @@ public interface QuartzEndpointBuilder {
         }
         /**
          * To configure additional options on the trigger. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T triggerParameters(Map<String, Object> triggerParameters) {
             this.properties.put("triggerParameters", triggerParameters);
@@ -261,8 +263,8 @@ public interface QuartzEndpointBuilder {
         }
         /**
          * To configure additional options on the trigger. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T triggerParameters(String triggerParameters) {
             this.properties.put("triggerParameters", triggerParameters);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/RabbitMQEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/RabbitMQEndpointBuilder.java
index 7c0882f..5aae2dd 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/RabbitMQEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/RabbitMQEndpointBuilder.java
@@ -325,7 +325,7 @@ public interface RabbitMQEndpointBuilder {
          * different prefix is required for each: Exchange: arg.exchange. Queue:
          * arg.queue. Binding: arg.binding. For example to declare a queue with
          * message ttl argument:
-         * http://localhost:5672/exchange/queueargs=arg.queue.x-message-ttl=60000. The option is a <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * http://localhost:5672/exchange/queueargs=arg.queue.x-message-ttl=60000. The option is a <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code> type.
          */
         public T args(Map<String, Object> args) {
             this.properties.put("args", args);
@@ -336,7 +336,7 @@ public interface RabbitMQEndpointBuilder {
          * different prefix is required for each: Exchange: arg.exchange. Queue:
          * arg.queue. Binding: arg.binding. For example to declare a queue with
          * message ttl argument:
-         * http://localhost:5672/exchange/queueargs=arg.queue.x-message-ttl=60000. The option will be converted to a <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * http://localhost:5672/exchange/queueargs=arg.queue.x-message-ttl=60000. The option will be converted to a <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code> type.
          */
         public T args(String args) {
             this.properties.put("args", args);
@@ -382,8 +382,8 @@ public interface RabbitMQEndpointBuilder {
         }
         /**
          * Connection client properties (client info used in negotiating with
-         * the server). The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * the server). The option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T clientProperties(Map<String, Object> clientProperties) {
             this.properties.put("clientProperties", clientProperties);
@@ -392,7 +392,8 @@ public interface RabbitMQEndpointBuilder {
         /**
          * Connection client properties (client info used in negotiating with
          * the server). The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T clientProperties(String clientProperties) {
             this.properties.put("clientProperties", clientProperties);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/RestletEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/RestletEndpointBuilder.java
index d97d923..a1a92f5 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/RestletEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/RestletEndpointBuilder.java
@@ -174,7 +174,8 @@ public interface RestletEndpointBuilder {
         }
         /**
          * To configure the security realms of restlet as a map. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public T restletRealm(Map<String, String> restletRealm) {
             this.properties.put("restletRealm", restletRealm);
@@ -182,8 +183,8 @@ public interface RestletEndpointBuilder {
         }
         /**
          * To configure the security realms of restlet as a map. The option will
-         * be converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.String></code> type.
+         * be converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.String&gt;</code> type.
          */
         public T restletRealm(String restletRealm) {
             this.properties.put("restletRealm", restletRealm);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/RssEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/RssEndpointBuilder.java
index 3a48a7a..fb09cf1 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/RssEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/RssEndpointBuilder.java
@@ -516,7 +516,8 @@ public interface RssEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public RssConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -526,8 +527,8 @@ public interface RssEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public RssConsumerBuilder schedulerProperties(String schedulerProperties) {
             this.properties.put("schedulerProperties", schedulerProperties);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/S3EndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/S3EndpointBuilder.java
index b1982f8..ed8c531 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/S3EndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/S3EndpointBuilder.java
@@ -781,7 +781,8 @@ public interface S3EndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public S3ConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -791,8 +792,8 @@ public interface S3EndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public S3ConsumerBuilder schedulerProperties(String schedulerProperties) {
             this.properties.put("schedulerProperties", schedulerProperties);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SWFEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SWFEndpointBuilder.java
index c1ddc30..f6839e9 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SWFEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SWFEndpointBuilder.java
@@ -140,8 +140,8 @@ public interface SWFEndpointBuilder {
         }
         /**
          * To configure the ClientConfiguration using the key/values from the
-         * Map. The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * Map. The option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T clientConfigurationParameters(
                 Map<String, Object> clientConfigurationParameters) {
@@ -151,7 +151,8 @@ public interface SWFEndpointBuilder {
         /**
          * To configure the ClientConfiguration using the key/values from the
          * Map. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T clientConfigurationParameters(
                 String clientConfigurationParameters) {
@@ -160,8 +161,8 @@ public interface SWFEndpointBuilder {
         }
         /**
          * To configure the StartWorkflowOptions using the key/values from the
-         * Map. The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * Map. The option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T startWorkflowOptionsParameters(
                 Map<String, Object> startWorkflowOptionsParameters) {
@@ -171,7 +172,8 @@ public interface SWFEndpointBuilder {
         /**
          * To configure the StartWorkflowOptions using the key/values from the
          * Map. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T startWorkflowOptionsParameters(
                 String startWorkflowOptionsParameters) {
@@ -180,8 +182,8 @@ public interface SWFEndpointBuilder {
         }
         /**
          * To configure the AmazonSimpleWorkflowClient using the key/values from
-         * the Map. The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * the Map. The option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T sWClientParameters(Map<String, Object> sWClientParameters) {
             this.properties.put("sWClientParameters", sWClientParameters);
@@ -190,7 +192,8 @@ public interface SWFEndpointBuilder {
         /**
          * To configure the AmazonSimpleWorkflowClient using the key/values from
          * the Map. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T sWClientParameters(String sWClientParameters) {
             this.properties.put("sWClientParameters", sWClientParameters);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SalesforceEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SalesforceEndpointBuilder.java
index bba64f4..ee50c54 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SalesforceEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SalesforceEndpointBuilder.java
@@ -49,7 +49,8 @@ public interface SalesforceEndpointBuilder {
         }
         /**
          * Query params for APEX method. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T apexQueryParams(Map<String, Object> apexQueryParams) {
             this.properties.put("apexQueryParams", apexQueryParams);
@@ -57,7 +58,8 @@ public interface SalesforceEndpointBuilder {
         }
         /**
          * Query params for APEX method. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T apexQueryParams(String apexQueryParams) {
             this.properties.put("apexQueryParams", apexQueryParams);
@@ -194,7 +196,8 @@ public interface SalesforceEndpointBuilder {
         }
         /**
          * Replay IDs to start from per channel name. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Long></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Long&gt;</code>
+         * type.
          */
         public T initialReplayIdMap(Map<String, Long> initialReplayIdMap) {
             this.properties.put("initialReplayIdMap", initialReplayIdMap);
@@ -202,8 +205,8 @@ public interface SalesforceEndpointBuilder {
         }
         /**
          * Replay IDs to start from per channel name. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Long></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Long&gt;</code> type.
          */
         public T initialReplayIdMap(String initialReplayIdMap) {
             this.properties.put("initialReplayIdMap", initialReplayIdMap);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SchedulerEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SchedulerEndpointBuilder.java
index a9ede8f..66ac5e2 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SchedulerEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SchedulerEndpointBuilder.java
@@ -417,7 +417,8 @@ public interface SchedulerEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public SchedulerConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -427,8 +428,8 @@ public interface SchedulerEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public SchedulerConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ServiceNowEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ServiceNowEndpointBuilder.java
index 30916d5..ca3950b 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ServiceNowEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ServiceNowEndpointBuilder.java
@@ -238,8 +238,8 @@ public interface ServiceNowEndpointBuilder {
         }
         /**
          * Defines both request and response models. The option is a
-         * <code>java.util.Map<java.lang.String,
-         * java.lang.Class<java.lang.Object>></code> type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Class&lt;java.lang.Object&gt;&gt;</code> type.
          */
         public T models(Map<String, Class<Object>> models) {
             this.properties.put("models", models);
@@ -247,8 +247,8 @@ public interface ServiceNowEndpointBuilder {
         }
         /**
          * Defines both request and response models. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Class<java.lang.Object>></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Class&lt;java.lang.Object&gt;&gt;</code> type.
          */
         public T models(String models) {
             this.properties.put("models", models);
@@ -294,8 +294,8 @@ public interface ServiceNowEndpointBuilder {
         }
         /**
          * Defines the request model. The option is a
-         * <code>java.util.Map<java.lang.String,
-         * java.lang.Class<java.lang.Object>></code> type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Class&lt;java.lang.Object&gt;&gt;</code> type.
          */
         public T requestModels(Map<String, Class<Object>> requestModels) {
             this.properties.put("requestModels", requestModels);
@@ -303,8 +303,8 @@ public interface ServiceNowEndpointBuilder {
         }
         /**
          * Defines the request model. The option will be converted to a
-         * <code>java.util.Map<java.lang.String,
-         * java.lang.Class<java.lang.Object>></code> type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Class&lt;java.lang.Object&gt;&gt;</code> type.
          */
         public T requestModels(String requestModels) {
             this.properties.put("requestModels", requestModels);
@@ -321,8 +321,8 @@ public interface ServiceNowEndpointBuilder {
         }
         /**
          * Defines the response model. The option is a
-         * <code>java.util.Map<java.lang.String,
-         * java.lang.Class<java.lang.Object>></code> type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Class&lt;java.lang.Object&gt;&gt;</code> type.
          */
         public T responseModels(Map<String, Class<Object>> responseModels) {
             this.properties.put("responseModels", responseModels);
@@ -330,8 +330,8 @@ public interface ServiceNowEndpointBuilder {
         }
         /**
          * Defines the response model. The option will be converted to a
-         * <code>java.util.Map<java.lang.String,
-         * java.lang.Class<java.lang.Object>></code> type.
+         * <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Class&lt;java.lang.Object&gt;&gt;</code> type.
          */
         public T responseModels(String responseModels) {
             this.properties.put("responseModels", responseModels);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SesEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SesEndpointBuilder.java
index d968b84..a304f80 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SesEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SesEndpointBuilder.java
@@ -97,7 +97,7 @@ public interface SesEndpointBuilder {
         /**
          * List of reply-to email address(es) for the message, override it using
          * 'CamelAwsSesReplyToAddresses' header. The option is a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T replyToAddresses(List<String> replyToAddresses) {
             this.properties.put("replyToAddresses", replyToAddresses);
@@ -106,7 +106,7 @@ public interface SesEndpointBuilder {
         /**
          * List of reply-to email address(es) for the message, override it using
          * 'CamelAwsSesReplyToAddresses' header. The option will be converted to
-         * a <code>java.util.List<java.lang.String></code> type.
+         * a <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T replyToAddresses(String replyToAddresses) {
             this.properties.put("replyToAddresses", replyToAddresses);
@@ -132,7 +132,7 @@ public interface SesEndpointBuilder {
         /**
          * List of destination email address. Can be overriden with
          * 'CamelAwsSesTo' header. The option is a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T to(List<String> to) {
             this.properties.put("to", to);
@@ -141,7 +141,7 @@ public interface SesEndpointBuilder {
         /**
          * List of destination email address. Can be overriden with
          * 'CamelAwsSesTo' header. The option will be converted to a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T to(String to) {
             this.properties.put("to", to);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SftpEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SftpEndpointBuilder.java
index 470c891..3839df5 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SftpEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SftpEndpointBuilder.java
@@ -1099,7 +1099,7 @@ public interface SftpEndpointBuilder {
          * used when special conditions must be met before a file can be
          * consumed, such as a special ready file exists. If this option is set
          * then the readLock option does not apply. The option is a
-         * <code>org.apache.camel.component.file.GenericFileProcessStrategy<org.apache.camel.component.file.remote.SftpRemoteFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileProcessStrategy&lt;org.apache.camel.component.file.remote.SftpRemoteFile&gt;</code> type.
          */
         public SftpConsumerBuilder processStrategy(Object processStrategy) {
             this.properties.put("processStrategy", processStrategy);
@@ -1113,7 +1113,7 @@ public interface SftpEndpointBuilder {
          * consumed, such as a special ready file exists. If this option is set
          * then the readLock option does not apply. The option will be converted
          * to a
-         * <code>org.apache.camel.component.file.GenericFileProcessStrategy<org.apache.camel.component.file.remote.SftpRemoteFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileProcessStrategy&lt;org.apache.camel.component.file.remote.SftpRemoteFile&gt;</code> type.
          */
         public SftpConsumerBuilder processStrategy(String processStrategy) {
             this.properties.put("processStrategy", processStrategy);
@@ -1228,7 +1228,7 @@ public interface SftpEndpointBuilder {
          * Pluggable filter as a
          * org.apache.camel.component.file.GenericFileFilter class. Will skip
          * files if filter returns false in its accept() method. The option is a
-         * <code>org.apache.camel.component.file.GenericFileFilter<org.apache.camel.component.file.remote.SftpRemoteFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileFilter&lt;org.apache.camel.component.file.remote.SftpRemoteFile&gt;</code> type.
          */
         public SftpConsumerBuilder filter(Object filter) {
             this.properties.put("filter", filter);
@@ -1239,7 +1239,7 @@ public interface SftpEndpointBuilder {
          * org.apache.camel.component.file.GenericFileFilter class. Will skip
          * files if filter returns false in its accept() method. The option will
          * be converted to a
-         * <code>org.apache.camel.component.file.GenericFileFilter<org.apache.camel.component.file.remote.SftpRemoteFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileFilter&lt;org.apache.camel.component.file.remote.SftpRemoteFile&gt;</code> type.
          */
         public SftpConsumerBuilder filter(String filter) {
             this.properties.put("filter", filter);
@@ -1453,7 +1453,7 @@ public interface SftpEndpointBuilder {
          * Pluggable read-lock as a
          * org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy
          * implementation. The option is a
-         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy<org.apache.camel.component.file.remote.SftpRemoteFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy&lt;org.apache.camel.component.file.remote.SftpRemoteFile&gt;</code> type.
          */
         public SftpConsumerBuilder exclusiveReadLockStrategy(
                 Object exclusiveReadLockStrategy) {
@@ -1464,7 +1464,7 @@ public interface SftpEndpointBuilder {
          * Pluggable read-lock as a
          * org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy
          * implementation. The option will be converted to a
-         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy<org.apache.camel.component.file.remote.SftpRemoteFile></code> type.
+         * <code>org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy&lt;org.apache.camel.component.file.remote.SftpRemoteFile&gt;</code> type.
          */
         public SftpConsumerBuilder exclusiveReadLockStrategy(
                 String exclusiveReadLockStrategy) {
@@ -2066,7 +2066,8 @@ public interface SftpEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public SftpConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -2076,8 +2077,8 @@ public interface SftpEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public SftpConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
@@ -2154,7 +2155,8 @@ public interface SftpEndpointBuilder {
          * Built-in sort by using the File Language. Supports nested sorts, so
          * you can have a sort by file name and as a 2nd group sort by modified
          * date. The option is a
-         * <code>java.util.Comparator<org.apache.camel.Exchange></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.Exchange&gt;</code>
+         * type.
          */
         public SftpConsumerBuilder sortBy(Comparator<Exchange> sortBy) {
             this.properties.put("sortBy", sortBy);
@@ -2164,7 +2166,8 @@ public interface SftpEndpointBuilder {
          * Built-in sort by using the File Language. Supports nested sorts, so
          * you can have a sort by file name and as a 2nd group sort by modified
          * date. The option will be converted to a
-         * <code>java.util.Comparator<org.apache.camel.Exchange></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.Exchange&gt;</code>
+         * type.
          */
         public SftpConsumerBuilder sortBy(String sortBy) {
             this.properties.put("sortBy", sortBy);
@@ -2172,7 +2175,7 @@ public interface SftpEndpointBuilder {
         }
         /**
          * Pluggable sorter as a java.util.Comparator class. The option is a
-         * <code>java.util.Comparator<org.apache.camel.component.file.GenericFile<org.apache.camel.component.file.remote.SftpRemoteFile>></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.component.file.GenericFile&lt;org.apache.camel.component.file.remote.SftpRemoteFile&gt;&gt;</code> type.
          */
         public SftpConsumerBuilder sorter(Comparator<Object> sorter) {
             this.properties.put("sorter", sorter);
@@ -2181,7 +2184,7 @@ public interface SftpEndpointBuilder {
         /**
          * Pluggable sorter as a java.util.Comparator class. The option will be
          * converted to a
-         * <code>java.util.Comparator<org.apache.camel.component.file.GenericFile<org.apache.camel.component.file.remote.SftpRemoteFile>></code> type.
+         * <code>java.util.Comparator&lt;org.apache.camel.component.file.GenericFile&lt;org.apache.camel.component.file.remote.SftpRemoteFile&gt;&gt;</code> type.
          */
         public SftpConsumerBuilder sorter(String sorter) {
             this.properties.put("sorter", sorter);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SipEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SipEndpointBuilder.java
index 44046b1..cf11aeb 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SipEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SipEndpointBuilder.java
@@ -571,7 +571,7 @@ public interface SipEndpointBuilder {
          * Each ViaHeader containing a proxy address for request forwarding.
          * (Note this header is automatically updated by each proxy when the
          * request arrives at its listener). The option is a
-         * <code>java.util.List<javax.sip.header.ViaHeader></code> type.
+         * <code>java.util.List&lt;javax.sip.header.ViaHeader&gt;</code> type.
          */
         public T viaHeaders(List<Object> viaHeaders) {
             this.properties.put("viaHeaders", viaHeaders);
@@ -582,7 +582,7 @@ public interface SipEndpointBuilder {
          * Each ViaHeader containing a proxy address for request forwarding.
          * (Note this header is automatically updated by each proxy when the
          * request arrives at its listener). The option will be converted to a
-         * <code>java.util.List<javax.sip.header.ViaHeader></code> type.
+         * <code>java.util.List&lt;javax.sip.header.ViaHeader&gt;</code> type.
          */
         public T viaHeaders(String viaHeaders) {
             this.properties.put("viaHeaders", viaHeaders);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SlackEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SlackEndpointBuilder.java
index eb2450c..d5c6c31 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SlackEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SlackEndpointBuilder.java
@@ -420,7 +420,8 @@ public interface SlackEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public SlackConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -430,8 +431,8 @@ public interface SlackEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public SlackConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SmppEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SmppEndpointBuilder.java
index 7403908..3dfcb9f 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SmppEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SmppEndpointBuilder.java
@@ -351,8 +351,9 @@ public interface SmppEndpointBuilder {
         }
         /**
          * These headers will be passed to the proxy server while establishing
-         * the connection. The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.String></code> type.
+         * the connection. The option is a
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public T proxyHeaders(Map<String, String> proxyHeaders) {
             this.properties.put("proxyHeaders", proxyHeaders);
@@ -361,7 +362,8 @@ public interface SmppEndpointBuilder {
         /**
          * These headers will be passed to the proxy server while establishing
          * the connection. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public T proxyHeaders(String proxyHeaders) {
             this.properties.put("proxyHeaders", proxyHeaders);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SnmpEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SnmpEndpointBuilder.java
index caef232..b21caa3 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SnmpEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SnmpEndpointBuilder.java
@@ -629,7 +629,8 @@ public interface SnmpEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public SnmpConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -639,8 +640,8 @@ public interface SnmpEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public SnmpConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SplunkEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SplunkEndpointBuilder.java
index 4ffe0d2..4b8f6d9 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SplunkEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SplunkEndpointBuilder.java
@@ -582,7 +582,8 @@ public interface SplunkEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public SplunkConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -592,8 +593,8 @@ public interface SplunkEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public SplunkConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SqlEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SqlEndpointBuilder.java
index 09f4c70..3c90fc2 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SqlEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SqlEndpointBuilder.java
@@ -290,8 +290,8 @@ public interface SqlEndpointBuilder {
         }
         /**
          * Configures the Spring JdbcTemplate with the key/values from the Map.
-         * The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * The option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T templateOptions(Map<String, Object> templateOptions) {
             this.properties.put("templateOptions", templateOptions);
@@ -300,7 +300,8 @@ public interface SqlEndpointBuilder {
         /**
          * Configures the Spring JdbcTemplate with the key/values from the Map.
          * The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T templateOptions(String templateOptions) {
             this.properties.put("templateOptions", templateOptions);
@@ -789,7 +790,8 @@ public interface SqlEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public SqlConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -799,8 +801,8 @@ public interface SqlEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public SqlConsumerBuilder schedulerProperties(String schedulerProperties) {
             this.properties.put("schedulerProperties", schedulerProperties);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SqsEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SqsEndpointBuilder.java
index 39fbd36..022d11e 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SqsEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SqsEndpointBuilder.java
@@ -839,7 +839,8 @@ public interface SqsEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public SqsConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -849,8 +850,8 @@ public interface SqsEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public SqsConsumerBuilder schedulerProperties(String schedulerProperties) {
             this.properties.put("schedulerProperties", schedulerProperties);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SshEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SshEndpointBuilder.java
index b57e8a2..0b384ae 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SshEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/SshEndpointBuilder.java
@@ -558,7 +558,8 @@ public interface SshEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public SshConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -568,8 +569,8 @@ public interface SshEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public SshConsumerBuilder schedulerProperties(String schedulerProperties) {
             this.properties.put("schedulerProperties", schedulerProperties);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/StreamEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/StreamEndpointBuilder.java
index c46feb3..3baa9e5 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/StreamEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/StreamEndpointBuilder.java
@@ -121,8 +121,8 @@ public interface StreamEndpointBuilder {
         }
         /**
          * Optional http headers to use in request when using HTTP URL. The
-         * option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T httpHeaders(Map<String, Object> httpHeaders) {
             this.properties.put("httpHeaders", httpHeaders);
@@ -130,8 +130,9 @@ public interface StreamEndpointBuilder {
         }
         /**
          * Optional http headers to use in request when using HTTP URL. The
-         * option will be converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * option will be converted to a
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T httpHeaders(String httpHeaders) {
             this.properties.put("httpHeaders", httpHeaders);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TelegramEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TelegramEndpointBuilder.java
index b00dce6..71939f3 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TelegramEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TelegramEndpointBuilder.java
@@ -467,7 +467,8 @@ public interface TelegramEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public TelegramConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -477,8 +478,8 @@ public interface TelegramEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public TelegramConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterDirectMessageEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterDirectMessageEndpointBuilder.java
index d82bb11..6d29f33 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterDirectMessageEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterDirectMessageEndpointBuilder.java
@@ -709,7 +709,8 @@ public interface TwitterDirectMessageEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public TwitterDirectMessageConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -719,8 +720,8 @@ public interface TwitterDirectMessageEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public TwitterDirectMessageConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterSearchEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterSearchEndpointBuilder.java
index 5955455..2dc3ab0 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterSearchEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterSearchEndpointBuilder.java
@@ -698,7 +698,8 @@ public interface TwitterSearchEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public TwitterSearchConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -708,8 +709,8 @@ public interface TwitterSearchEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public TwitterSearchConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterStreamingEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterStreamingEndpointBuilder.java
index adeec45..87fce74 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterStreamingEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterStreamingEndpointBuilder.java
@@ -722,7 +722,8 @@ public interface TwitterStreamingEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public TwitterStreamingConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -732,8 +733,8 @@ public interface TwitterStreamingEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public TwitterStreamingConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterTimelineEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterTimelineEndpointBuilder.java
index 1618f99..e51267e 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterTimelineEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/TwitterTimelineEndpointBuilder.java
@@ -719,7 +719,8 @@ public interface TwitterTimelineEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public TwitterTimelineConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -729,8 +730,8 @@ public interface TwitterTimelineEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public TwitterTimelineConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/UndertowEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/UndertowEndpointBuilder.java
index c91a4ca..f0154f1 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/UndertowEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/UndertowEndpointBuilder.java
@@ -368,7 +368,8 @@ public interface UndertowEndpointBuilder {
          * defined in org.xnio.Options. To configure from endpoint uri, then
          * prefix each option with option., such as
          * option.close-abort=true&option.send-buffer=8192. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public UndertowProducerBuilder options(Map<String, Object> options) {
             this.properties.put("options", options);
@@ -379,8 +380,8 @@ public interface UndertowEndpointBuilder {
          * defined in org.xnio.Options. To configure from endpoint uri, then
          * prefix each option with option., such as
          * option.close-abort=true&option.send-buffer=8192. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public UndertowProducerBuilder options(String options) {
             this.properties.put("options", options);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/WeatherEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/WeatherEndpointBuilder.java
index f9d591d..8f5d0e2 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/WeatherEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/WeatherEndpointBuilder.java
@@ -223,8 +223,8 @@ public interface WeatherEndpointBuilder {
         }
         /**
          * List of id's of city/stations. You can separate multiple ids by
-         * comma. The option is a <code>java.util.List<java.lang.String></code>
-         * type.
+         * comma. The option is a
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T ids(List<String> ids) {
             this.properties.put("ids", ids);
@@ -233,7 +233,7 @@ public interface WeatherEndpointBuilder {
         /**
          * List of id's of city/stations. You can separate multiple ids by
          * comma. The option will be converted to a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T ids(String ids) {
             this.properties.put("ids", ids);
@@ -707,7 +707,8 @@ public interface WeatherEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public WeatherConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -717,8 +718,8 @@ public interface WeatherEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public WeatherConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Web3jEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Web3jEndpointBuilder.java
index 2ed5983..c522e76 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Web3jEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/Web3jEndpointBuilder.java
@@ -51,7 +51,7 @@ public interface Web3jEndpointBuilder {
         }
         /**
          * Contract address or a list of addresses. The option is a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T addresses(List<String> addresses) {
             this.properties.put("addresses", addresses);
@@ -59,7 +59,7 @@ public interface Web3jEndpointBuilder {
         }
         /**
          * Contract address or a list of addresses. The option will be converted
-         * to a <code>java.util.List<java.lang.String></code> type.
+         * to a <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T addresses(String addresses) {
             this.properties.put("addresses", addresses);
@@ -128,7 +128,8 @@ public interface Web3jEndpointBuilder {
         }
         /**
          * A transaction privateFor nodes with public keys in a Quorum network.
-         * The option is a <code>java.util.List<java.lang.String></code> type.
+         * The option is a <code>java.util.List&lt;java.lang.String&gt;</code>
+         * type.
          */
         public T privateFor(List<String> privateFor) {
             this.properties.put("privateFor", privateFor);
@@ -137,7 +138,7 @@ public interface Web3jEndpointBuilder {
         /**
          * A transaction privateFor nodes with public keys in a Quorum network.
          * The option will be converted to a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T privateFor(String privateFor) {
             this.properties.put("privateFor", privateFor);
@@ -189,7 +190,7 @@ public interface Web3jEndpointBuilder {
         /**
          * Topics are order-dependent. Each topic can also be a list of topics.
          * Specify multiple topics separated by comma. The option is a
-         * <code>java.util.List<java.lang.String></code> type.
+         * <code>java.util.List&lt;java.lang.String&gt;</code> type.
          */
         public T topics(List<String> topics) {
             this.properties.put("topics", topics);
@@ -198,7 +199,8 @@ public interface Web3jEndpointBuilder {
         /**
          * Topics are order-dependent. Each topic can also be a list of topics.
          * Specify multiple topics separated by comma. The option will be
-         * converted to a <code>java.util.List<java.lang.String></code> type.
+         * converted to a <code>java.util.List&lt;java.lang.String&gt;</code>
+         * type.
          */
         public T topics(String topics) {
             this.properties.put("topics", topics);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/WordpressEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/WordpressEndpointBuilder.java
index b2a0e5f..feb3220 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/WordpressEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/WordpressEndpointBuilder.java
@@ -66,7 +66,8 @@ public interface WordpressEndpointBuilder {
         }
         /**
          * The criteria to use with complex searches. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T criteria(Map<String, Object> criteria) {
             this.properties.put("criteria", criteria);
@@ -74,8 +75,8 @@ public interface WordpressEndpointBuilder {
         }
         /**
          * The criteria to use with complex searches. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T criteria(String criteria) {
             this.properties.put("criteria", criteria);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/WsEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/WsEndpointBuilder.java
index 082e116..5156983 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/WsEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/WsEndpointBuilder.java
@@ -220,8 +220,8 @@ public interface WsEndpointBuilder {
         }
         /**
          * To configure the AsyncHttpClientConfig using the key/values from the
-         * Map. The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * Map. The option is a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T clientConfigOptions(Map<String, Object> clientConfigOptions) {
             this.properties.put("clientConfigOptions", clientConfigOptions);
@@ -230,7 +230,8 @@ public interface WsEndpointBuilder {
         /**
          * To configure the AsyncHttpClientConfig using the key/values from the
          * Map. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T clientConfigOptions(String clientConfigOptions) {
             this.properties.put("clientConfigOptions", clientConfigOptions);
@@ -256,8 +257,9 @@ public interface WsEndpointBuilder {
         }
         /**
          * To configure the AsyncHttpClientConfig Realm using the key/values
-         * from the Map. The option is a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * from the Map. The option is a
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T clientConfigRealmOptions(
                 Map<String, Object> clientConfigRealmOptions) {
@@ -267,7 +269,8 @@ public interface WsEndpointBuilder {
         /**
          * To configure the AsyncHttpClientConfig Realm using the key/values
          * from the Map. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T clientConfigRealmOptions(String clientConfigRealmOptions) {
             this.properties.put("clientConfigRealmOptions", clientConfigRealmOptions);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/XQueryEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/XQueryEndpointBuilder.java
index 73f02fd..22ebc8b 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/XQueryEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/XQueryEndpointBuilder.java
@@ -80,7 +80,8 @@ public interface XQueryEndpointBuilder {
         /**
          * Allows to control which namespace prefixes to use for a set of
          * namespace mappings. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public T namespacePrefixes(Map<String, String> namespacePrefixes) {
             this.properties.put("namespacePrefixes", namespacePrefixes);
@@ -89,7 +90,8 @@ public interface XQueryEndpointBuilder {
         /**
          * Allows to control which namespace prefixes to use for a set of
          * namespace mappings. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.String></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.String&gt;</code>
+         * type.
          */
         public T namespacePrefixes(String namespacePrefixes) {
             this.properties.put("namespacePrefixes", namespacePrefixes);
@@ -113,7 +115,7 @@ public interface XQueryEndpointBuilder {
         }
         /**
          * What output result to use defined as a class. The option is a
-         * <code>java.lang.Class<java.lang.Object></code> type.
+         * <code>java.lang.Class&lt;java.lang.Object&gt;</code> type.
          */
         public T resultType(Class<Object> resultType) {
             this.properties.put("resultType", resultType);
@@ -121,7 +123,8 @@ public interface XQueryEndpointBuilder {
         }
         /**
          * What output result to use defined as a class. The option will be
-         * converted to a <code>java.lang.Class<java.lang.Object></code> type.
+         * converted to a <code>java.lang.Class&lt;java.lang.Object&gt;</code>
+         * type.
          */
         public T resultType(String resultType) {
             this.properties.put("resultType", resultType);
@@ -179,7 +182,8 @@ public interface XQueryEndpointBuilder {
         }
         /**
          * To set custom Saxon configuration properties. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T configurationProperties(
                 Map<String, Object> configurationProperties) {
@@ -188,8 +192,8 @@ public interface XQueryEndpointBuilder {
         }
         /**
          * To set custom Saxon configuration properties. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T configurationProperties(String configurationProperties) {
             this.properties.put("configurationProperties", configurationProperties);
@@ -213,7 +217,8 @@ public interface XQueryEndpointBuilder {
         }
         /**
          * Additional parameters. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T parameters(Map<String, Object> parameters) {
             this.properties.put("parameters", parameters);
@@ -221,7 +226,8 @@ public interface XQueryEndpointBuilder {
         }
         /**
          * Additional parameters. The option will be converted to a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T parameters(String parameters) {
             this.properties.put("parameters", parameters);
@@ -588,7 +594,8 @@ public interface XQueryEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public XQueryConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -598,8 +605,8 @@ public interface XQueryEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public XQueryConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/XmlSignatureEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/XmlSignatureEndpointBuilder.java
index 14e83de..47b2152 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/XmlSignatureEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/XmlSignatureEndpointBuilder.java
@@ -99,7 +99,8 @@ public interface XmlSignatureEndpointBuilder {
          * features off you must set the property value to Boolean#FALSE.
          * org.jcp.xml.dsig.validateManifests
          * javax.xml.crypto.dsig.cacheReference. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public T cryptoContextProperties(
                 Map<String, Object> cryptoContextProperties) {
@@ -115,8 +116,8 @@ public interface XmlSignatureEndpointBuilder {
          * features off you must set the property value to Boolean#FALSE.
          * org.jcp.xml.dsig.validateManifests
          * javax.xml.crypto.dsig.cacheReference. The option will be converted to
-         * a <code>java.util.Map<java.lang.String, java.lang.Object></code>
-         * type.
+         * a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public T cryptoContextProperties(String cryptoContextProperties) {
             this.properties.put("cryptoContextProperties", cryptoContextProperties);
@@ -512,7 +513,8 @@ public interface XmlSignatureEndpointBuilder {
          * http://www.w3.org/2000/09/xmldsig#enveloped-signature is added at
          * position 0 of the list. Use methods in XmlSignatureHelper to create
          * the transform methods. The option is a
-         * <code>java.util.List<javax.xml.crypto.AlgorithmMethod></code> type.
+         * <code>java.util.List&lt;javax.xml.crypto.AlgorithmMethod&gt;</code>
+         * type.
          */
         public T transformMethods(List<Object> transformMethods) {
             this.properties.put("transformMethods", transformMethods);
@@ -525,7 +527,8 @@ public interface XmlSignatureEndpointBuilder {
          * http://www.w3.org/2000/09/xmldsig#enveloped-signature is added at
          * position 0 of the list. Use methods in XmlSignatureHelper to create
          * the transform methods. The option will be converted to a
-         * <code>java.util.List<javax.xml.crypto.AlgorithmMethod></code> type.
+         * <code>java.util.List&lt;javax.xml.crypto.AlgorithmMethod&gt;</code>
+         * type.
          */
         public T transformMethods(String transformMethods) {
             this.properties.put("transformMethods", transformMethods);
@@ -544,7 +547,7 @@ public interface XmlSignatureEndpointBuilder {
          * setParentXpath(XPathFilterParameterSpec) for enveloped signature and
          * this parameter for detached signature must not be set in the same
          * configuration. The option is a
-         * <code>java.util.List<javax.xml.crypto.dsig.spec.XPathFilterParameterSpec></code> type.
+         * <code>java.util.List&lt;javax.xml.crypto.dsig.spec.XPathFilterParameterSpec&gt;</code> type.
          */
         public T xpathsToIdAttributes(List<Object> xpathsToIdAttributes) {
             this.properties.put("xpathsToIdAttributes", xpathsToIdAttributes);
@@ -563,7 +566,7 @@ public interface XmlSignatureEndpointBuilder {
          * setParentXpath(XPathFilterParameterSpec) for enveloped signature and
          * this parameter for detached signature must not be set in the same
          * configuration. The option will be converted to a
-         * <code>java.util.List<javax.xml.crypto.dsig.spec.XPathFilterParameterSpec></code> type.
+         * <code>java.util.List&lt;javax.xml.crypto.dsig.spec.XPathFilterParameterSpec&gt;</code> type.
          */
         public T xpathsToIdAttributes(String xpathsToIdAttributes) {
             this.properties.put("xpathsToIdAttributes", xpathsToIdAttributes);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/XsltEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/XsltEndpointBuilder.java
index 6fbb376..be33c92 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/XsltEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/XsltEndpointBuilder.java
@@ -299,7 +299,8 @@ public interface XsltEndpointBuilder {
          * net.sf.saxon.lib.ExtensionFunctionDefinition. You would need to add
          * camel-saxon to the classpath. The function is looked up in the
          * registry, where you can comma to separate multiple values to lookup.
-         * The option is a <code>java.util.List<java.lang.Object></code> type.
+         * The option is a <code>java.util.List&lt;java.lang.Object&gt;</code>
+         * type.
          */
         public T saxonExtensionFunctions(List<Object> saxonExtensionFunctions) {
             this.properties.put("saxonExtensionFunctions", saxonExtensionFunctions);
@@ -311,7 +312,7 @@ public interface XsltEndpointBuilder {
          * camel-saxon to the classpath. The function is looked up in the
          * registry, where you can comma to separate multiple values to lookup.
          * The option will be converted to a
-         * <code>java.util.List<java.lang.Object></code> type.
+         * <code>java.util.List&lt;java.lang.Object&gt;</code> type.
          */
         public T saxonExtensionFunctions(String saxonExtensionFunctions) {
             this.properties.put("saxonExtensionFunctions", saxonExtensionFunctions);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/YammerEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/YammerEndpointBuilder.java
index d7fbd8d..a1d9d75 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/YammerEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/YammerEndpointBuilder.java
@@ -528,7 +528,8 @@ public interface YammerEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
-         * <code>java.util.Map<java.lang.String, java.lang.Object></code> type.
+         * <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code>
+         * type.
          */
         public YammerConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
@@ -538,8 +539,8 @@ public interface YammerEndpointBuilder {
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option will be
-         * converted to a <code>java.util.Map<java.lang.String,
-         * java.lang.Object></code> type.
+         * converted to a <code>java.util.Map&lt;java.lang.String,
+         * java.lang.Object&gt;</code> type.
          */
         public YammerConsumerBuilder schedulerProperties(
                 String schedulerProperties) {
diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointDslMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointDslMojo.java
index c604a3d..3a82a24 100644
--- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointDslMojo.java
+++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointDslMojo.java
@@ -300,7 +300,9 @@ public class EndpointDslMojo extends AbstractMojo {
                 if (!desc.endsWith(".")) {
                     desc = desc + ".";
                 }
-                desc = desc + " The option is a <code>" + ogtype.toString() + "</code> type.";
+                desc = desc + " The option is a <code>" + ogtype.toString()
+                        .replaceAll("<", "&lt;")
+                        .replaceAll(">", "&gt;") + "</code> type.";
                 fluent.getJavaDoc().setFullText(desc);
             }
 
@@ -318,7 +320,9 @@ public class EndpointDslMojo extends AbstractMojo {
                     if (!desc.endsWith(".")) {
                         desc = desc + ".";
                     }
-                    desc = desc + " The option will be converted to a <code>" + ogtype.toString() + "</code> type.";
+                    desc = desc + " The option will be converted to a <code>" + ogtype.toString()
+                            .replaceAll("<", "&lt;")
+                            .replaceAll(">", "&gt;") + "</code> type.";
                     fluent.getJavaDoc().setFullText(desc);
                 }
             }


[camel] 03/05: Fix endpoint resolution

Posted by gn...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

gnodet pushed a commit to branch endpoint-dsl
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 2afa0447bc60f5a01a2021d25d50aa4282768ab6
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Tue Jun 11 17:51:51 2019 +0200

    Fix endpoint resolution
---
 .../main/java/org/apache/camel/CamelContext.java   |  11 +++
 .../src/main/java/org/apache/camel/Component.java  |  14 +++
 .../java/org/apache/camel/spi/RouteContext.java    |   5 +-
 .../camel/impl/engine/AbstractCamelContext.java    | 105 +++++++++++++++++++++
 .../camel/impl/engine/DefaultRouteContext.java     |  24 +++--
 .../camel/model/AbstractEndpointBuilder.java       |   2 +-
 .../java/org/apache/camel/reifier/SendReifier.java |   2 +-
 .../component/file/FileAbsolutePathIssueTest.java  |   6 +-
 .../file/FileBatchConsumerMemoryLeakTest.java      |  10 +-
 9 files changed, 154 insertions(+), 25 deletions(-)

diff --git a/core/camel-api/src/main/java/org/apache/camel/CamelContext.java b/core/camel-api/src/main/java/org/apache/camel/CamelContext.java
index eb142b4..db1244c 100644
--- a/core/camel-api/src/main/java/org/apache/camel/CamelContext.java
+++ b/core/camel-api/src/main/java/org/apache/camel/CamelContext.java
@@ -427,6 +427,17 @@ public interface CamelContext extends StatefulService, RuntimeConfiguration {
      * If the name has a singleton endpoint registered, then the singleton is returned.
      * Otherwise, a new {@link Endpoint} is created and registered in the {@link org.apache.camel.spi.EndpointRegistry}.
      *
+     * @param uri the URI of the endpoint
+     * @param parameters the parameters to customize the endpoint
+     * @return the endpoint
+     */
+    Endpoint getEndpoint(String uri, Map<String, Object> parameters);
+
+    /**
+     * Resolves the given name to an {@link Endpoint} of the specified type.
+     * If the name has a singleton endpoint registered, then the singleton is returned.
+     * Otherwise, a new {@link Endpoint} is created and registered in the {@link org.apache.camel.spi.EndpointRegistry}.
+     *
      * @param name         the name of the endpoint
      * @param endpointType the expected type
      * @return the endpoint
diff --git a/core/camel-api/src/main/java/org/apache/camel/Component.java b/core/camel-api/src/main/java/org/apache/camel/Component.java
index bbd2d74..39c4010 100644
--- a/core/camel-api/src/main/java/org/apache/camel/Component.java
+++ b/core/camel-api/src/main/java/org/apache/camel/Component.java
@@ -44,6 +44,20 @@ public interface Component extends CamelContextAware {
      */
     Endpoint createEndpoint(String uri) throws Exception;
 
+    /**
+     * Attempt to resolve an endpoint for the given URI if the component is
+     * capable of handling the URI.
+     * <p/>
+     * See {@link #useRawUri()} for controlling whether the passed in uri
+     * should be as-is (raw), or encoded (default).
+     *
+     * @param uri the URI to create; either raw or encoded (default)
+     * @param parameters the parameters for the endpoint
+     * @return a newly created {@link Endpoint} or null if this component cannot create
+     *         {@link Endpoint} instances using the given uri
+     * @throws Exception is thrown if error creating the endpoint
+     * @see #useRawUri()
+     */
     Endpoint createEndpoint(String uri, Map<String, Object> parameters) throws Exception;
 
     /**
diff --git a/core/camel-api/src/main/java/org/apache/camel/spi/RouteContext.java b/core/camel-api/src/main/java/org/apache/camel/spi/RouteContext.java
index 3c3c9e5..a7c194a 100644
--- a/core/camel-api/src/main/java/org/apache/camel/spi/RouteContext.java
+++ b/core/camel-api/src/main/java/org/apache/camel/spi/RouteContext.java
@@ -74,12 +74,11 @@ public interface RouteContext extends RuntimeConfiguration, EndpointAware {
     /**
      * Resolves an endpoint from the scheme, path and properties
      *
-     * @param scheme     the URI scheme
-     * @param path       the endpoint path
+     * @param uri        the URI scheme
      * @param properties the endpoint properties
      * @return the resolved endpoint
      */
-    Endpoint resolveEndpoint(String scheme, String path, Map<String, Object> properties);
+    Endpoint resolveEndpoint(String uri, Map<String, Object> properties);
 
     /**
      * lookup an object by name and type
diff --git a/core/camel-base/src/main/java/org/apache/camel/impl/engine/AbstractCamelContext.java b/core/camel-base/src/main/java/org/apache/camel/impl/engine/AbstractCamelContext.java
index dd71ffd..83ec9b7 100644
--- a/core/camel-base/src/main/java/org/apache/camel/impl/engine/AbstractCamelContext.java
+++ b/core/camel-base/src/main/java/org/apache/camel/impl/engine/AbstractCamelContext.java
@@ -788,6 +788,111 @@ public abstract class AbstractCamelContext extends ServiceSupport implements Ext
         return answer;
     }
 
+    public Endpoint getEndpoint(String uri, Map<String, Object> parameters) {
+        init();
+
+        StringHelper.notEmpty(uri, "uri");
+
+        log.trace("Getting endpoint with uri: {} and parameters: {}", uri, parameters);
+
+        // in case path has property placeholders then try to let property
+        // component resolve those
+        try {
+            uri = resolvePropertyPlaceholders(uri);
+        } catch (Exception e) {
+            throw new ResolveEndpointFailedException(uri, e);
+        }
+
+        final String rawUri = uri;
+
+        // normalize uri so we can do endpoint hits with minor mistakes and
+        // parameters is not in the same order
+        uri = normalizeEndpointUri(uri);
+
+        log.trace("Getting endpoint with raw uri: {}, normalized uri: {}", rawUri, uri);
+
+        Endpoint answer;
+        String scheme = null;
+        // use optimized method to get the endpoint uri
+        EndpointKey key = getEndpointKeyPreNormalized(uri);
+        answer = endpoints.get(key);
+        if (answer == null) {
+            try {
+                // Use the URI prefix to find the component.
+                String[] splitURI = StringHelper.splitOnCharacter(uri, ":", 2);
+                if (splitURI[1] != null) {
+                    scheme = splitURI[0];
+                    log.trace("Endpoint uri: {} is from component with name: {}", uri, scheme);
+                    Component component = getComponent(scheme);
+
+                    // Ask the component to resolve the endpoint.
+                    if (component != null) {
+                        log.trace("Creating endpoint from uri: {} using component: {}", uri, component);
+
+                        // Have the component create the endpoint if it can.
+                        if (component.useRawUri()) {
+                            answer = component.createEndpoint(rawUri, parameters);
+                        } else {
+                            answer = component.createEndpoint(uri, parameters);
+                        }
+
+                        if (answer != null && log.isDebugEnabled()) {
+                            log.debug("{} converted to endpoint: {} by component: {}", URISupport.sanitizeUri(uri), answer, component);
+                        }
+                    }
+                }
+
+                if (answer == null) {
+                    // no component then try in registry and elsewhere
+                    answer = createEndpoint(uri);
+                    log.trace("No component to create endpoint from uri: {} fallback lookup in registry -> {}", uri, answer);
+                }
+
+                if (answer == null && splitURI[1] == null) {
+                    // the uri has no context-path which is rare and it was not
+                    // referring to an endpoint in the registry
+                    // so try to see if it can be created by a component
+
+                    int pos = uri.indexOf('?');
+                    String componentName = pos > 0 ? uri.substring(0, pos) : uri;
+
+                    Component component = getComponent(componentName);
+
+                    // Ask the component to resolve the endpoint.
+                    if (component != null) {
+                        log.trace("Creating endpoint from uri: {} using component: {}", uri, component);
+
+                        // Have the component create the endpoint if it can.
+                        if (component.useRawUri()) {
+                            answer = component.createEndpoint(rawUri, parameters);
+                        } else {
+                            answer = component.createEndpoint(uri, parameters);
+                        }
+
+                        if (answer != null && log.isDebugEnabled()) {
+                            log.debug("{} converted to endpoint: {} by component: {}", URISupport.sanitizeUri(uri), answer, component);
+                        }
+                    }
+
+                }
+
+                if (answer != null) {
+                    addService(answer);
+                    answer = addEndpointToRegistry(uri, answer);
+                }
+            } catch (Exception e) {
+                throw new ResolveEndpointFailedException(uri, e);
+            }
+        }
+
+        // unknown scheme
+        if (answer == null && scheme != null) {
+            throw new ResolveEndpointFailedException(uri, "No component found with scheme: " + scheme);
+        }
+
+        return answer;
+    }
+
     public <T extends Endpoint> T getEndpoint(String name, Class<T> endpointType) {
         Endpoint endpoint = getEndpoint(name);
         if (endpoint == null) {
diff --git a/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultRouteContext.java b/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultRouteContext.java
index 3f7d459..0e4f728 100644
--- a/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultRouteContext.java
+++ b/core/camel-base/src/main/java/org/apache/camel/impl/engine/DefaultRouteContext.java
@@ -45,6 +45,8 @@ import org.apache.camel.spi.RouteController;
 import org.apache.camel.spi.RouteError;
 import org.apache.camel.spi.RoutePolicy;
 import org.apache.camel.support.CamelContextHelper;
+import org.apache.camel.util.StringHelper;
+import org.apache.camel.util.URISupport;
 
 /**
  * The context used to activate new routing rules
@@ -118,7 +120,7 @@ public class DefaultRouteContext implements RouteContext {
     public Endpoint resolveEndpoint(String uri, String ref) {
         Endpoint endpoint = null;
         if (uri != null) {
-            endpoint = resolveEndpoint(uri);
+            endpoint = camelContext.getEndpoint(uri);
             if (endpoint == null) {
                 throw new NoSuchEndpointException(uri);
             }
@@ -146,19 +148,15 @@ public class DefaultRouteContext implements RouteContext {
         }
     }
 
-    public Endpoint resolveEndpoint(String scheme, String path, Map<String, Object> properties) {
-        Component component = camelContext.getComponent(scheme);
-        if (component != null) {
-            try {
-                Endpoint endpoint = component.createEndpoint(scheme + ":" + path, properties);
-                if (endpoint != null) {
-                    return endpoint;
-                }
-            } catch (Exception e) {
-                throw new ResolveEndpointFailedException(scheme + ":" + path, e);
-            }
+    public Endpoint resolveEndpoint(String uri, Map<String, Object> properties) {
+        Endpoint endpoint = camelContext.hasEndpoint(uri);
+        if (endpoint == null) {
+            endpoint = camelContext.getEndpoint(uri, properties);
+        }
+        if (endpoint != null) {
+            return endpoint;
         }
-        throw new NoSuchEndpointException(scheme + ":" + path);
+        throw new NoSuchEndpointException(uri);
     }
 
     public <T> T lookup(String name, Class<T> type) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/AbstractEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/AbstractEndpointBuilder.java
index 810d736..dadd5a7 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/AbstractEndpointBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/AbstractEndpointBuilder.java
@@ -38,7 +38,7 @@ public class AbstractEndpointBuilder<T extends AbstractEndpointBuilder> {
     }
 
     public Endpoint resolve(RouteContext context) throws NoSuchEndpointException {
-        return context.resolveEndpoint(scheme, path, properties);
+        return context.resolveEndpoint(scheme + ":" + path, properties);
     }
 
 }
diff --git a/core/camel-core/src/main/java/org/apache/camel/reifier/SendReifier.java b/core/camel-core/src/main/java/org/apache/camel/reifier/SendReifier.java
index 4901595..75389ee 100644
--- a/core/camel-core/src/main/java/org/apache/camel/reifier/SendReifier.java
+++ b/core/camel-core/src/main/java/org/apache/camel/reifier/SendReifier.java
@@ -38,7 +38,7 @@ class SendReifier extends ProcessorReifier<SendDefinition<?>> {
     public Endpoint resolveEndpoint(RouteContext context) {
         if (definition.getEndpoint() == null) {
             if (definition.getEndpointProducerBuilder() == null) {
-                return context.resolveEndpoint(definition.getUri(), null);
+                return context.resolveEndpoint(definition.getUri(), (String) null);
             } else {
                 return definition.getEndpointProducerBuilder().resolve(context);
             }
diff --git a/core/camel-core/src/test/java/org/apache/camel/component/file/FileAbsolutePathIssueTest.java b/core/camel-core/src/test/java/org/apache/camel/component/file/FileAbsolutePathIssueTest.java
index 0f2459d..8a47dd4 100644
--- a/core/camel-core/src/test/java/org/apache/camel/component/file/FileAbsolutePathIssueTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/component/file/FileAbsolutePathIssueTest.java
@@ -19,6 +19,7 @@ import java.io.File;
 
 import org.apache.camel.ContextTestSupport;
 import org.apache.camel.Exchange;
+import org.apache.camel.builder.EndpointRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
 import org.junit.Before;
@@ -56,10 +57,11 @@ public class FileAbsolutePathIssueTest extends ContextTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        return new RouteBuilder() {
+        return new EndpointRouteBuilder() {
             @Override
             public void configure() throws Exception {
-                from(uri).to("mock:result");
+                from(fromFile(start).initialDelay(0).delay(10).move(done + "/${file:name}"))
+                        .to(toMock("result"));
             }
         };
     }
diff --git a/core/camel-core/src/test/java/org/apache/camel/component/file/FileBatchConsumerMemoryLeakTest.java b/core/camel-core/src/test/java/org/apache/camel/component/file/FileBatchConsumerMemoryLeakTest.java
index 6dfa777..01cd67e 100644
--- a/core/camel-core/src/test/java/org/apache/camel/component/file/FileBatchConsumerMemoryLeakTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/component/file/FileBatchConsumerMemoryLeakTest.java
@@ -18,7 +18,7 @@ package org.apache.camel.component.file;
 import org.apache.camel.ContextTestSupport;
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
-import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.builder.EndpointRouteBuilder;
 import org.junit.Before;
 import org.junit.Ignore;
 import org.junit.Test;
@@ -29,7 +29,7 @@ import org.junit.Test;
 @Ignore("Manual test")
 public class FileBatchConsumerMemoryLeakTest extends ContextTestSupport {
 
-    private String fileUrl = "file://target/data/filesorter/";
+    private String fileUrl = "target/data/filesorter/";
 
     @Override
     @Before
@@ -67,17 +67,17 @@ public class FileBatchConsumerMemoryLeakTest extends ContextTestSupport {
         for (int c = 0; c < 100; c++) {
             template.sendBodyAndHeader(fileUrl + "c", "test", Exchange.FILE_NAME, c + ".dat");
         }
-        context.addRoutes(new RouteBuilder() {
+        context.addRoutes(new EndpointRouteBuilder() {
             @Override
             public void configure() throws Exception {
-                from(fileUrl + "c/?sortBy=ignoreCase:file:name")
+                from(fromFile(fileUrl + "/c/").sortBy("ignoreCase:file:name"))
                         .process(new Processor() {
                             public void process(Exchange exchange) throws Exception {
                                 StringBuilder buf = new StringBuilder(10000000);
                                 buf.setLength(1000000);
                                 exchange.getIn().setBody(buf.toString());
                             }
-                        }).to("file:target/data/filesorter/archiv");
+                        }).to(toFile("target/data/filesorter/archiv"));
             }
         });
         context.start();


[camel] 01/05: Rename the new classes/interfaces

Posted by gn...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

gnodet pushed a commit to branch endpoint-dsl
in repository https://gitbox.apache.org/repos/asf/camel.git

commit e091e0b3bb0a086211f195cce568c13b36ce9adb
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Tue Jun 11 12:02:39 2019 +0200

    Rename the new classes/interfaces
---
 .../blueprint/BlueprintComponentResolverTest.java  |   7 +
 .../java/org/apache/camel/spi/RouteContext.java    |   8 +
 .../camel/core/osgi/OsgiComponentResolverTest.java |   7 +
 .../org/apache/camel/builder/RouteBuilder.java     |   4 +-
 .../camel/model/AbstractEndpointBuilder.java       |  44 ++
 .../camel/model/EndpointConsumerBuilder.java       |  27 +
 .../org/apache/camel/model/EndpointDefinition.java |  38 --
 .../camel/model/EndpointProducerBuilder.java       |  27 +
 .../org/apache/camel/model/FromDefinition.java     |  14 +-
 .../apache/camel/model/ProcessorDefinition.java    |   2 +-
 .../org/apache/camel/model/RouteDefinition.java    |   2 +-
 .../org/apache/camel/model/RoutesDefinition.java   |   2 +-
 .../org/apache/camel/model/SendDefinition.java     |  11 +-
 .../java/org/apache/camel/model/ToDefinition.java  |   4 +-
 ...{AMQPEndpoint.java => AMQPEndpointBuilder.java} | 240 +++++----
 .../{AS2Endpoint.java => AS2EndpointBuilder.java}  |  50 +-
 ...sEndpoint.java => ActiveMQEndpointBuilder.java} | 254 ++++-----
 .../{AhcEndpoint.java => AhcEndpointBuilder.java}  |  32 +-
 ...{ApnsEndpoint.java => ApnsEndpointBuilder.java} | 112 ++--
 ...kEndpoint.java => AsteriskEndpointBuilder.java} |  54 +-
 ...tmosEndpoint.java => AtmosEndpointBuilder.java} |  51 +-
 ...ava => AtmosphereWebsocketEndpointBuilder.java} |  91 ++--
 ...{AtomEndpoint.java => AtomEndpointBuilder.java} | 100 ++--
 ...Endpoint.java => AtomixMapEndpointBuilder.java} |  50 +-
 ...nt.java => AtomixMessagingEndpointBuilder.java} |  49 +-
 ...int.java => AtomixMultiMapEndpointBuilder.java} |  36 +-
 ...dpoint.java => AtomixQueueEndpointBuilder.java} |  49 +-
 ...Endpoint.java => AtomixSetEndpointBuilder.java} |  50 +-
 ...dpoint.java => AtomixValueEndpointBuilder.java} |  49 +-
 ...{AvroEndpoint.java => AvroEndpointBuilder.java} |  50 +-
 ...{BeanEndpoint.java => BeanEndpointBuilder.java} |  24 +-
 ...oint.java => BeanValidatorEndpointBuilder.java} |  24 +-
 ...Endpoint.java => BeanstalkEndpointBuilder.java} | 125 ++---
 ...dpoint.java => BlobServiceEndpointBuilder.java} |  75 +--
 ...itaEndpoint.java => BonitaEndpointBuilder.java} |  39 +-
 .../{BoxEndpoint.java => BoxEndpointBuilder.java}  |  50 +-
 ...Endpoint.java => BraintreeEndpointBuilder.java} |  50 +-
 ...wseEndpoint.java => BrowseEndpointBuilder.java} |  51 +-
 .../{CMEndpoint.java => CMEndpointBuilder.java}    |  24 +-
 ...{CMISEndpoint.java => CMISEndpointBuilder.java} |  58 +-
 ...oint.java => CaffeineCacheEndpointBuilder.java} |  98 ++--
 ....java => CaffeineLoadCacheEndpointBuilder.java} | 102 ++--
 ...Endpoint.java => CassandraEndpointBuilder.java} | 113 ++--
 ...ndpoint.java => ChatScriptEndpointBuilder.java} |  24 +-
 ...hunkEndpoint.java => ChunkEndpointBuilder.java} |  24 +-
 ...derEndpoint.java => CinderEndpointBuilder.java} |  24 +-
 ...lassEndpoint.java => ClassEndpointBuilder.java} |  24 +-
 ...entEndpoint.java => ClientEndpointBuilder.java} |  51 +-
 ...{CoAPEndpoint.java => CoAPEndpointBuilder.java} |  54 +-
 ...etdEndpoint.java => CometdEndpointBuilder.java} |  59 ++-
 ...sulEndpoint.java => ConsulEndpointBuilder.java} |  51 +-
 ...ndpoint.java => ControlBusEndpointBuilder.java} |  24 +-
 ...ordaEndpoint.java => CordaEndpointBuilder.java} |  51 +-
 ...DbEndpoint.java => CouchDbEndpointBuilder.java} |  70 +--
 ...Endpoint.java => CouchbaseEndpointBuilder.java} | 176 +++---
 ...Endpoint.java => CryptoCmsEndpointBuilder.java} |  24 +-
 .../{CwEndpoint.java => CwEndpointBuilder.java}    |  24 +-
 .../{CxfEndpoint.java => CxfEndpointBuilder.java}  |  76 +--
 ...xfRsEndpoint.java => CxfRsEndpointBuilder.java} |  93 ++--
 ...ndpoint.java => DataFormatEndpointBuilder.java} |  24 +-
 ...etEndpoint.java => DataSetEndpointBuilder.java} |  93 ++--
 ...dpoint.java => DataSetTestEndpointBuilder.java} |  61 ++-
 .../{DdbEndpoint.java => DdbEndpointBuilder.java}  |  24 +-
 ...Endpoint.java => DdbStreamEndpointBuilder.java} | 123 +++--
 ...point.java => DigitalOceanEndpointBuilder.java} |  24 +-
 ...t.java => DigitalSignatureEndpointBuilder.java} |  25 +-
 ...ectEndpoint.java => DirectEndpointBuilder.java} |  63 ++-
 ...mEndpoint.java => DirectVmEndpointBuilder.java} |  67 +--
 ...Endpoint.java => DisruptorEndpointBuilder.java} |  81 +--
 ...dpoint.java => DisruptorVmEndpointBuilder.java} |  84 +--
 .../{DnsEndpoint.java => DnsEndpointBuilder.java}  |  24 +-
 ...kerEndpoint.java => DockerEndpointBuilder.java} |  51 +-
 ...ozerEndpoint.java => DozerEndpointBuilder.java} |  24 +-
 ...rillEndpoint.java => DrillEndpointBuilder.java} |  24 +-
 ...oxEndpoint.java => DropboxEndpointBuilder.java} |  50 +-
 .../{EC2Endpoint.java => EC2EndpointBuilder.java}  |  48 +-
 .../{ECSEndpoint.java => ECSEndpointBuilder.java}  |  48 +-
 .../{EKSEndpoint.java => EKSEndpointBuilder.java}  |  48 +-
 ...heEndpoint.java => EhcacheEndpointBuilder.java} |  70 +--
 .../{EjbEndpoint.java => EjbEndpointBuilder.java}  |  24 +-
 ...oint.java => ElasticsearchEndpointBuilder.java} |  24 +-
 ...lsqlEndpoint.java => ElsqlEndpointBuilder.java} | 168 +++---
 .../camel/model/endpoint/EndpointBuilder.java      | 590 ++++++++++-----------
 ...{EtcdEndpoint.java => EtcdEndpointBuilder.java} | 124 ++---
 ...ndpoint.java => EventAdminEndpointBuilder.java} |  49 +-
 ...ventEndpoint.java => EventEndpointBuilder.java} |  51 +-
 ...{ExecEndpoint.java => ExecEndpointBuilder.java} |  24 +-
 ...kEndpoint.java => FacebookEndpointBuilder.java} |  50 +-
 ...{FhirEndpoint.java => FhirEndpointBuilder.java} |  50 +-
 ...{FileEndpoint.java => FileEndpointBuilder.java} | 363 ++++++-------
 ...kEndpoint.java => FlatpackEndpointBuilder.java} | 113 ++--
 ...linkEndpoint.java => FlinkEndpointBuilder.java} |  24 +-
 .../{FopEndpoint.java => FopEndpointBuilder.java}  |  24 +-
 ...ndpoint.java => FreemarkerEndpointBuilder.java} |  24 +-
 .../{FtpEndpoint.java => FtpEndpointBuilder.java}  | 358 +++++++------
 ...{FtpsEndpoint.java => FtpsEndpointBuilder.java} | 371 ++++++-------
 ...iaEndpoint.java => GangliaEndpointBuilder.java} |  24 +-
 ...rEndpoint.java => GeoCoderEndpointBuilder.java} |  24 +-
 .../{GitEndpoint.java => GitEndpointBuilder.java}  |  62 ++-
 ...HubEndpoint.java => GitHubEndpointBuilder.java} |  67 +--
 ...nceEndpoint.java => GlanceEndpointBuilder.java} |  24 +-
 ...int.java => GoogleBigQueryEndpointBuilder.java} |  24 +-
 ....java => GoogleBigQuerySQLEndpointBuilder.java} |  25 +-
 ...int.java => GoogleCalendarEndpointBuilder.java} |  48 +-
 ...va => GoogleCalendarStreamEndpointBuilder.java} |  98 ++--
 ...dpoint.java => GoogleDriveEndpointBuilder.java} |  49 +-
 ...ndpoint.java => GoogleMailEndpointBuilder.java} |  49 +-
 ...t.java => GoogleMailStreamEndpointBuilder.java} | 100 ++--
 ...point.java => GooglePubsubEndpointBuilder.java} |  48 +-
 ...point.java => GoogleSheetsEndpointBuilder.java} |  48 +-
 ...java => GoogleSheetsStreamEndpointBuilder.java} |  99 ++--
 ...{GoraEndpoint.java => GoraEndpointBuilder.java} | 103 ++--
 ...rapeEndpoint.java => GrapeEndpointBuilder.java} |  24 +-
 ...dFsEndpoint.java => GridFsEndpointBuilder.java} |  84 +--
 ...{GrpcEndpoint.java => GrpcEndpointBuilder.java} |  82 +--
 ...oint.java => GuavaEventBusEndpointBuilder.java} |  48 +-
 ...BaseEndpoint.java => HBaseEndpointBuilder.java} |  71 +--
 ...a => HazelcastAtomicnumberEndpointBuilder.java} |  24 +-
 ....java => HazelcastInstanceEndpointBuilder.java} |  50 +-
 ...oint.java => HazelcastListEndpointBuilder.java} |  60 ++-
 ...point.java => HazelcastMapEndpointBuilder.java} |  60 ++-
 ....java => HazelcastMultimapEndpointBuilder.java} |  63 ++-
 ...int.java => HazelcastQueueEndpointBuilder.java} |  60 ++-
 ... => HazelcastReplicatedmapEndpointBuilder.java} |  61 ++-
 ...ava => HazelcastRingbufferEndpointBuilder.java} |  25 +-
 ...oint.java => HazelcastSedaEndpointBuilder.java} |  60 ++-
 ...point.java => HazelcastSetEndpointBuilder.java} |  60 ++-
 ...int.java => HazelcastTopicEndpointBuilder.java} |  60 ++-
 ...{HdfsEndpoint.java => HdfsEndpointBuilder.java} | 124 ++---
 ...atEndpoint.java => HipchatEndpointBuilder.java} | 113 ++--
 ...{HttpEndpoint.java => HttpEndpointBuilder.java} | 145 ++---
 .../{IAMEndpoint.java => IAMEndpointBuilder.java}  |  48 +-
 ...{IOTAEndpoint.java => IOTAEndpointBuilder.java} |  50 +-
 ...{IPFSEndpoint.java => IPFSEndpointBuilder.java} |  24 +-
 ...dpoint.java => IgniteCacheEndpointBuilder.java} |  92 ++--
 ...oint.java => IgniteComputeEndpointBuilder.java} |  44 +-
 ...point.java => IgniteEventsEndpointBuilder.java} |  44 +-
 ...dpoint.java => IgniteIdGenEndpointBuilder.java} |  37 +-
 ...nt.java => IgniteMessagingEndpointBuilder.java} |  62 ++-
 ...dpoint.java => IgniteQueueEndpointBuilder.java} |  41 +-
 ...Endpoint.java => IgniteSetEndpointBuilder.java} |  32 +-
 ...ndpoint.java => InfinispanEndpointBuilder.java} |  74 +--
 ...bEndpoint.java => InfluxDbEndpointBuilder.java} |  24 +-
 .../{IrcEndpoint.java => IrcEndpointBuilder.java}  |  50 +-
 ...nMQEndpoint.java => IronMQEndpointBuilder.java} | 139 ++---
 ...{JBPMEndpoint.java => JBPMEndpointBuilder.java} |  54 +-
 ...cheEndpoint.java => JCacheEndpointBuilder.java} |  72 +--
 ...psEndpoint.java => JGroupsEndpointBuilder.java} |  55 +-
 ...dpoint.java => JGroupsRaftEndpointBuilder.java} |  53 +-
 .../{JMXEndpoint.java => JMXEndpointBuilder.java}  |  50 +-
 ...nt.java => JSR356WebSocketEndpointBuilder.java} |  49 +-
 ...dsEndpoint.java => JcloudsEndpointBuilder.java} |  90 ++--
 .../{JcrEndpoint.java => JcrEndpointBuilder.java}  |  50 +-
 ...{JdbcEndpoint.java => JdbcEndpointBuilder.java} |  24 +-
 .../camel/model/endpoint/JettyHttpEndpoint9.java   |  12 +-
 ...dpoint9.java => JettyHttpEndpointBuilder9.java} | 222 ++++----
 ...{JingEndpoint.java => JingEndpointBuilder.java} |  24 +-
 ...{JiraEndpoint.java => JiraEndpointBuilder.java} |  58 +-
 ...tiveMQEndpoint.java => JmsEndpointBuilder.java} | 240 ++++-----
 ...{JoltEndpoint.java => JoltEndpointBuilder.java} |  24 +-
 ...{JooqEndpoint.java => JooqEndpointBuilder.java} | 124 ++---
 .../{JpaEndpoint.java => JpaEndpointBuilder.java}  | 165 +++---
 ...oint.java => JsonValidatorEndpointBuilder.java} |  24 +-
 ...t400Endpoint.java => Jt400EndpointBuilder.java} | 118 +++--
 .../{KMSEndpoint.java => KMSEndpointBuilder.java}  |  48 +-
 ...afkaEndpoint.java => KafkaEndpointBuilder.java} | 330 ++++++------
 ...eEndpoint.java => KeystoneEndpointBuilder.java} |  24 +-
 ...isEndpoint.java => KinesisEndpointBuilder.java} | 135 ++---
 ...nt.java => KinesisFirehoseEndpointBuilder.java} |  24 +-
 ...va => KubernetesConfigMapsEndpointBuilder.java} |  28 +-
 ...a => KubernetesDeploymentsEndpointBuilder.java} |  73 +--
 ...oint.java => KubernetesHPAEndpointBuilder.java} |  72 +--
 ...oint.java => KubernetesJobEndpointBuilder.java} |  72 +--
 ...va => KubernetesNamespacesEndpointBuilder.java} |  73 +--
 ...nt.java => KubernetesNodesEndpointBuilder.java} |  73 +--
 ...tesPersistentVolumesClaimsEndpointBuilder.java} |  28 +-
 ...ubernetesPersistentVolumesEndpointBuilder.java} |  29 +-
 ...int.java => KubernetesPodsEndpointBuilder.java} |  72 +--
 ...etesReplicationControllersEndpointBuilder.java} |  74 +--
 ...> KubernetesResourcesQuotaEndpointBuilder.java} |  29 +-
 ....java => KubernetesSecretsEndpointBuilder.java} |  29 +-
 ... KubernetesServiceAccountsEndpointBuilder.java} |  29 +-
 ...java => KubernetesServicesEndpointBuilder.java} |  75 +--
 ...bdaEndpoint.java => LambdaEndpointBuilder.java} |  28 +-
 ...eEndpoint.java => LanguageEndpointBuilder.java} |  24 +-
 ...{LdapEndpoint.java => LdapEndpointBuilder.java} |  24 +-
 ...{LdifEndpoint.java => LdifEndpointBuilder.java} |  24 +-
 ...nEndpoint.java => LinkedInEndpointBuilder.java} |  50 +-
 .../{LogEndpoint.java => LogEndpointBuilder.java}  |  24 +-
 ...eneEndpoint.java => LuceneEndpointBuilder.java} |  24 +-
 ...ndpoint.java => LumberjackEndpointBuilder.java} |  37 +-
 .../{MQEndpoint.java => MQEndpointBuilder.java}    |  48 +-
 ...{MQTTEndpoint.java => MQTTEndpointBuilder.java} |  55 +-
 .../{MSKEndpoint.java => MSKEndpointBuilder.java}  |  48 +-
 ...{MailEndpoint.java => MailEndpointBuilder.java} | 217 ++++----
 ...terEndpoint.java => MasterEndpointBuilder.java} |  39 +-
 ...csEndpoint.java => MetricsEndpointBuilder.java} |  24 +-
 ...ndpoint.java => MicrometerEndpointBuilder.java} |  24 +-
 ...ndpoint.java => MiloClientEndpointBuilder.java} |  49 +-
 ...ndpoint.java => MiloServerEndpointBuilder.java} |  49 +-
 ...ina2Endpoint.java => Mina2EndpointBuilder.java} |  73 +--
 ...{MllpEndpoint.java => MllpEndpointBuilder.java} |  95 ++--
 ...{MockEndpoint.java => MockEndpointBuilder.java} |  61 ++-
 ...DbEndpoint.java => MongoDbEndpointBuilder.java} |  50 +-
 .../{MsvEndpoint.java => MsvEndpointBuilder.java}  |  24 +-
 ...eEndpoint.java => MustacheEndpointBuilder.java} |  24 +-
 ...{MvelEndpoint.java => MvelEndpointBuilder.java} |  24 +-
 ...dpoint.java => MyBatisBeanEndpointBuilder.java} |  36 +-
 ...isEndpoint.java => MyBatisEndpointBuilder.java} | 155 +++---
 ...iosEndpoint.java => NagiosEndpointBuilder.java} |  24 +-
 ...{NatsEndpoint.java => NatsEndpointBuilder.java} |  66 +--
 ...Endpoint.java => NetWeaverEndpointBuilder.java} |  24 +-
 ...ettyEndpoint.java => NettyEndpointBuilder.java} | 168 +++---
 ...Endpoint.java => NettyHttpEndpointBuilder.java} | 205 +++----
 ...onEndpoint.java => NeutronEndpointBuilder.java} |  24 +-
 ...{NovaEndpoint.java => NovaEndpointBuilder.java} |  24 +-
 .../{NsqEndpoint.java => NsqEndpointBuilder.java}  |  82 +--
 ...o2Endpoint.java => Olingo2EndpointBuilder.java} |  50 +-
 ...o4Endpoint.java => Olingo4EndpointBuilder.java} |  50 +-
 ...a => OpenshiftBuildConfigsEndpointBuilder.java} |  28 +-
 ...nt.java => OpenshiftBuildsEndpointBuilder.java} |  28 +-
 ...dpoint.java => OptaPlannerEndpointBuilder.java} |  57 +-
 ...{PahoEndpoint.java => PahoEndpointBuilder.java} |  50 +-
 ...ndpoint.java => PaxLoggingEndpointBuilder.java} |  37 +-
 .../{PdfEndpoint.java => PdfEndpointBuilder.java}  |  24 +-
 ...ntEndpoint.java => PgEventEndpointBuilder.java} |  50 +-
 ...erEndpoint.java => PrinterEndpointBuilder.java} |  24 +-
 ...ndpoint.java => PropertiesEndpointBuilder.java} |  49 +-
 ...NubEndpoint.java => PubNubEndpointBuilder.java} |  59 ++-
 ...sarEndpoint.java => PulsarEndpointBuilder.java} |  85 +--
 ...rtzEndpoint.java => QuartzEndpointBuilder.java} |  39 +-
 ...point.java => QueueServiceEndpointBuilder.java} |  66 +--
 ...Endpoint.java => QuickfixjEndpointBuilder.java} |  50 +-
 ...QEndpoint.java => RabbitMQEndpointBuilder.java} | 121 +++--
 ...nt.java => ReactiveStreamsEndpointBuilder.java} |  74 +--
 ...edisEndpoint.java => RedisEndpointBuilder.java} |  55 +-
 .../{RefEndpoint.java => RefEndpointBuilder.java}  |  50 +-
 ...piEndpoint.java => RestApiEndpointBuilder.java} |  38 +-
 ...{RestEndpoint.java => RestEndpointBuilder.java} |  70 +--
 ...dpoint.java => RestSwaggerEndpointBuilder.java} |  52 +-
 ...etEndpoint.java => RestletEndpointBuilder.java} |  84 +--
 .../{RssEndpoint.java => RssEndpointBuilder.java}  | 101 ++--
 .../{S3Endpoint.java => S3EndpointBuilder.java}    | 176 +++---
 .../{SWFEndpoint.java => SWFEndpointBuilder.java}  | 111 ++--
 ...{SagaEndpoint.java => SagaEndpointBuilder.java} |  24 +-
 ...ndpoint.java => SalesforceEndpointBuilder.java} |  62 ++-
 ...Endpoint.java => SchedulerEndpointBuilder.java} | 101 ++--
 ...ndpoint.java => SchematronEndpointBuilder.java} |  24 +-
 .../{ScpEndpoint.java => ScpEndpointBuilder.java}  |  45 +-
 .../{SdbEndpoint.java => SdbEndpointBuilder.java}  |  24 +-
 ...{SedaEndpoint.java => SedaEndpointBuilder.java} |  95 ++--
 ...verEndpoint.java => ServerEndpointBuilder.java} |  51 +-
 ...ceEndpoint.java => ServiceEndpointBuilder.java} |  38 +-
 ...ndpoint.java => ServiceNowEndpointBuilder.java} |  24 +-
 ...etEndpoint.java => ServletEndpointBuilder.java} |  85 +--
 .../{SesEndpoint.java => SesEndpointBuilder.java}  |  24 +-
 ...{SftpEndpoint.java => SftpEndpointBuilder.java} | 359 +++++++------
 .../{SipEndpoint.java => SipEndpointBuilder.java}  |  58 +-
 ...jms2Endpoint.java => Sjms2EndpointBuilder.java} | 129 ++---
 ...Endpoint.java => SjmsBatchEndpointBuilder.java} |  38 +-
 ...{SjmsEndpoint.java => SjmsEndpointBuilder.java} | 117 ++--
 ...lackEndpoint.java => SlackEndpointBuilder.java} | 142 ++---
 ...{SmppEndpoint.java => SmppEndpointBuilder.java} | 113 ++--
 ...{SnmpEndpoint.java => SnmpEndpointBuilder.java} | 104 ++--
 .../{SnsEndpoint.java => SnsEndpointBuilder.java}  |  24 +-
 ...{SolrEndpoint.java => SolrEndpointBuilder.java} |  24 +-
 ...ndpoint.java => SoroushBotEndpointBuilder.java} |  57 +-
 ...parkEndpoint.java => SparkEndpointBuilder.java} |  39 +-
 ...unkEndpoint.java => SplunkEndpointBuilder.java} | 167 +++---
 ...dpoint.java => SpringBatchEndpointBuilder.java} |  24 +-
 ....java => SpringIntegrationEndpointBuilder.java} |  59 ++-
 ...ndpoint.java => SpringLdapEndpointBuilder.java} |  24 +-
 ...t.java => SpringWebserviceEndpointBuilder.java} | 129 ++---
 .../{SqlEndpoint.java => SqlEndpointBuilder.java}  | 168 +++---
 ...Endpoint.java => SqlStoredEndpointBuilder.java} |  24 +-
 .../{SqsEndpoint.java => SqsEndpointBuilder.java}  | 183 ++++---
 .../{SshEndpoint.java => SshEndpointBuilder.java}  | 117 ++--
 ...{StAXEndpoint.java => StAXEndpointBuilder.java} |  24 +-
 ...tompEndpoint.java => StompEndpointBuilder.java} |  51 +-
 ...eamEndpoint.java => StreamEndpointBuilder.java} |  99 ++--
 ...int.java => StringTemplateEndpointBuilder.java} |  24 +-
 ...{StubEndpoint.java => StubEndpointBuilder.java} |  95 ++--
 ...wiftEndpoint.java => SwiftEndpointBuilder.java} |  24 +-
 ...mEndpoint.java => TelegramEndpointBuilder.java} | 125 ++---
 ...iftEndpoint.java => ThriftEndpointBuilder.java} |  67 +--
 ...{TikaEndpoint.java => TikaEndpointBuilder.java} |  24 +-
 ...imerEndpoint.java => TimerEndpointBuilder.java} |  39 +-
 ...lioEndpoint.java => TwilioEndpointBuilder.java} |  51 +-
 ...va => TwitterDirectMessageEndpointBuilder.java} | 174 +++---
 ...oint.java => TwitterSearchEndpointBuilder.java} | 170 +++---
 ...t.java => TwitterStreamingEndpointBuilder.java} | 167 +++---
 ...nt.java => TwitterTimelineEndpointBuilder.java} | 174 +++---
 ...wEndpoint.java => UndertowEndpointBuilder.java} | 108 ++--
 ...Endpoint.java => ValidatorEndpointBuilder.java} |  24 +-
 ...yEndpoint.java => VelocityEndpointBuilder.java} |  24 +-
 ...ertxEndpoint.java => VertxEndpointBuilder.java} |  51 +-
 .../{VmEndpoint.java => VmEndpointBuilder.java}    |  94 ++--
 ...erEndpoint.java => WeatherEndpointBuilder.java} | 113 ++--
 ...eb3jEndpoint.java => Web3jEndpointBuilder.java} | 145 ++---
 ...okEndpoint.java => WebhookEndpointBuilder.java} |  38 +-
 ...Endpoint.java => WebsocketEndpointBuilder.java} |  66 +--
 ...Endpoint.java => WordpressEndpointBuilder.java} |  50 +-
 .../{WsEndpoint.java => WsEndpointBuilder.java}    |  52 +-
 ...geEndpoint.java => XChangeEndpointBuilder.java} |  24 +-
 ...eryEndpoint.java => XQueryEndpointBuilder.java} | 115 ++--
 ...point.java => XmlSignatureEndpointBuilder.java} |  24 +-
 ...{XmppEndpoint.java => XmppEndpointBuilder.java} |  58 +-
 ...{XsltEndpoint.java => XsltEndpointBuilder.java} |  24 +-
 ...merEndpoint.java => YammerEndpointBuilder.java} | 135 ++---
 ...skEndpoint.java => ZendeskEndpointBuilder.java} |  50 +-
 ...Endpoint.java => ZooKeeperEndpointBuilder.java} |  70 +--
 ...nt.java => ZooKeeperMasterEndpointBuilder.java} |  37 +-
 .../org/apache/camel/reifier/RouteReifier.java     |   4 +-
 .../java/org/apache/camel/reifier/SendReifier.java |   4 +-
 .../camel/maven/packaging/EndpointDslMojo.java     |  22 +-
 315 files changed, 11362 insertions(+), 10034 deletions(-)

diff --git a/components/camel-blueprint/src/test/java/org/apache/camel/blueprint/BlueprintComponentResolverTest.java b/components/camel-blueprint/src/test/java/org/apache/camel/blueprint/BlueprintComponentResolverTest.java
index e4d2016..3195158 100644
--- a/components/camel-blueprint/src/test/java/org/apache/camel/blueprint/BlueprintComponentResolverTest.java
+++ b/components/camel-blueprint/src/test/java/org/apache/camel/blueprint/BlueprintComponentResolverTest.java
@@ -16,6 +16,8 @@
  */
 package org.apache.camel.blueprint;
 
+import java.util.Map;
+
 import org.apache.camel.CamelContext;
 import org.apache.camel.Component;
 import org.apache.camel.Endpoint;
@@ -79,6 +81,11 @@ public class BlueprintComponentResolverTest extends TestSupport {
         }
 
         @Override
+        public Endpoint createEndpoint(String uri, Map<String, Object> parameters) throws Exception {
+            throw new UnsupportedOperationException("Should not be called");
+        }
+
+        @Override
         public boolean useRawUri() {
             throw new UnsupportedOperationException("Should not be called");
         }
diff --git a/core/camel-api/src/main/java/org/apache/camel/spi/RouteContext.java b/core/camel-api/src/main/java/org/apache/camel/spi/RouteContext.java
index 22a8fab..3c3c9e5 100644
--- a/core/camel-api/src/main/java/org/apache/camel/spi/RouteContext.java
+++ b/core/camel-api/src/main/java/org/apache/camel/spi/RouteContext.java
@@ -71,6 +71,14 @@ public interface RouteContext extends RuntimeConfiguration, EndpointAware {
      */
     Endpoint resolveEndpoint(String uri, String ref);
 
+    /**
+     * Resolves an endpoint from the scheme, path and properties
+     *
+     * @param scheme     the URI scheme
+     * @param path       the endpoint path
+     * @param properties the endpoint properties
+     * @return the resolved endpoint
+     */
     Endpoint resolveEndpoint(String scheme, String path, Map<String, Object> properties);
 
     /**
diff --git a/core/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/OsgiComponentResolverTest.java b/core/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/OsgiComponentResolverTest.java
index 006b780..11a4d39 100644
--- a/core/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/OsgiComponentResolverTest.java
+++ b/core/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/OsgiComponentResolverTest.java
@@ -16,6 +16,8 @@
  */
 package org.apache.camel.core.osgi;
 
+import java.util.Map;
+
 import org.apache.camel.CamelContext;
 import org.apache.camel.Component;
 import org.apache.camel.Endpoint;
@@ -88,6 +90,11 @@ public class OsgiComponentResolverTest extends CamelOsgiTestSupport {
         }
 
         @Override
+        public Endpoint createEndpoint(String uri, Map<String, Object> parameters) throws Exception {
+            throw new UnsupportedOperationException("Should not be called");
+        }
+
+        @Override
         public boolean useRawUri() {
             throw new UnsupportedOperationException("Should not be called");
         }
diff --git a/core/camel-core/src/main/java/org/apache/camel/builder/RouteBuilder.java b/core/camel-core/src/main/java/org/apache/camel/builder/RouteBuilder.java
index 3049e60..f47771d 100644
--- a/core/camel-core/src/main/java/org/apache/camel/builder/RouteBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/builder/RouteBuilder.java
@@ -27,6 +27,7 @@ import org.apache.camel.Endpoint;
 import org.apache.camel.ExtendedCamelContext;
 import org.apache.camel.Route;
 import org.apache.camel.RoutesBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
 import org.apache.camel.model.FromDefinition;
 import org.apache.camel.model.InterceptDefinition;
 import org.apache.camel.model.InterceptFromDefinition;
@@ -36,7 +37,6 @@ import org.apache.camel.model.OnCompletionDefinition;
 import org.apache.camel.model.OnExceptionDefinition;
 import org.apache.camel.model.RouteDefinition;
 import org.apache.camel.model.RoutesDefinition;
-import org.apache.camel.model.EndpointDefinition;
 import org.apache.camel.model.rest.RestConfigurationDefinition;
 import org.apache.camel.model.rest.RestDefinition;
 import org.apache.camel.model.rest.RestsDefinition;
@@ -241,7 +241,7 @@ public abstract class RouteBuilder extends BuilderSupport implements RoutesBuild
         return answer;
     }
 
-    public RouteDefinition from(EndpointDefinition.Consumer endpointDefinition) {
+    public RouteDefinition from(EndpointConsumerBuilder endpointDefinition) {
         getRouteCollection().setCamelContext(getContext());
         RouteDefinition answer = getRouteCollection().from(endpointDefinition);
         configureRoute(answer);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/AbstractEndpointBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/AbstractEndpointBuilder.java
new file mode 100644
index 0000000..810d736
--- /dev/null
+++ b/core/camel-core/src/main/java/org/apache/camel/model/AbstractEndpointBuilder.java
@@ -0,0 +1,44 @@
+/*
+ * 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.model;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.xml.bind.annotation.XmlTransient;
+
+import org.apache.camel.Endpoint;
+import org.apache.camel.NoSuchEndpointException;
+import org.apache.camel.spi.RouteContext;
+
+@XmlTransient
+public class AbstractEndpointBuilder<T extends AbstractEndpointBuilder> {
+
+    protected final String scheme;
+    protected final String path;
+    protected final Map<String, Object> properties = new HashMap<>();
+
+    public AbstractEndpointBuilder(String scheme, String path) {
+        this.scheme = scheme;
+        this.path = path;
+    }
+
+    public Endpoint resolve(RouteContext context) throws NoSuchEndpointException {
+        return context.resolveEndpoint(scheme, path, properties);
+    }
+
+}
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/EndpointConsumerBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/EndpointConsumerBuilder.java
new file mode 100644
index 0000000..f661f3e
--- /dev/null
+++ b/core/camel-core/src/main/java/org/apache/camel/model/EndpointConsumerBuilder.java
@@ -0,0 +1,27 @@
+/*
+ * 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.model;
+
+import org.apache.camel.Endpoint;
+import org.apache.camel.NoSuchEndpointException;
+import org.apache.camel.spi.RouteContext;
+
+public interface EndpointConsumerBuilder {
+
+    Endpoint resolve(RouteContext context) throws NoSuchEndpointException;
+
+}
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/EndpointDefinition.java b/core/camel-core/src/main/java/org/apache/camel/model/EndpointDefinition.java
deleted file mode 100644
index a7a9ebe..0000000
--- a/core/camel-core/src/main/java/org/apache/camel/model/EndpointDefinition.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package org.apache.camel.model;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.xml.bind.annotation.XmlTransient;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.Component;
-import org.apache.camel.Endpoint;
-import org.apache.camel.NoSuchEndpointException;
-import org.apache.camel.spi.RouteContext;
-
-@XmlTransient
-public class EndpointDefinition<T extends EndpointDefinition> {
-
-    protected final String scheme;
-    protected final String path;
-    protected final Map<String, Object> properties = new HashMap<>();
-
-    public EndpointDefinition(String scheme, String path) {
-        this.scheme = scheme;
-        this.path = path;
-    }
-
-    public Endpoint resolve(RouteContext context) throws NoSuchEndpointException {
-        return context.resolveEndpoint(scheme, path, properties);
-    }
-
-    public interface Consumer {
-        Endpoint resolve(RouteContext context) throws NoSuchEndpointException;
-    }
-
-    public interface Producer {
-        Endpoint resolve(RouteContext context) throws NoSuchEndpointException;
-    }
-
-}
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/EndpointProducerBuilder.java b/core/camel-core/src/main/java/org/apache/camel/model/EndpointProducerBuilder.java
new file mode 100644
index 0000000..f8ee1f0
--- /dev/null
+++ b/core/camel-core/src/main/java/org/apache/camel/model/EndpointProducerBuilder.java
@@ -0,0 +1,27 @@
+/*
+ * 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.model;
+
+import org.apache.camel.Endpoint;
+import org.apache.camel.NoSuchEndpointException;
+import org.apache.camel.spi.RouteContext;
+
+public interface EndpointProducerBuilder {
+
+    Endpoint resolve(RouteContext context) throws NoSuchEndpointException;
+
+}
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java b/core/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java
index 9e7b65b..b212bc0 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/FromDefinition.java
@@ -37,7 +37,7 @@ public class FromDefinition extends OptionalIdentifiedDefinition<FromDefinition>
     @XmlTransient
     private Endpoint endpoint;
     @XmlTransient
-    private EndpointDefinition.Consumer endpointDefinition;
+    private EndpointConsumerBuilder endpointConsumerBuilder;
 
     public FromDefinition() {
     }
@@ -50,8 +50,8 @@ public class FromDefinition extends OptionalIdentifiedDefinition<FromDefinition>
         setEndpoint(endpoint);
     }
 
-    public FromDefinition(EndpointDefinition.Consumer endpointDefinition) {
-        this.endpointDefinition = endpointDefinition;
+    public FromDefinition(EndpointConsumerBuilder endpointConsumerBuilder) {
+        this.endpointConsumerBuilder = endpointConsumerBuilder;
     }
 
     @Override
@@ -117,12 +117,12 @@ public class FromDefinition extends OptionalIdentifiedDefinition<FromDefinition>
         }
     }
 
-    public EndpointDefinition.Consumer getEndpointDefinition() {
-        return endpointDefinition;
+    public EndpointConsumerBuilder getEndpointConsumerBuilder() {
+        return endpointConsumerBuilder;
     }
 
-    public void setEndpointDefinition(EndpointDefinition.Consumer endpointDefinition) {
-        this.endpointDefinition = endpointDefinition;
+    public void setEndpointConsumerBuilder(EndpointConsumerBuilder endpointConsumerBuilder) {
+        this.endpointConsumerBuilder = endpointConsumerBuilder;
     }
 
     // Implementation methods
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java b/core/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
index a57a62f..8637f7e 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java
@@ -364,7 +364,7 @@ public abstract class ProcessorDefinition<Type extends ProcessorDefinition<Type>
     }
 
     @SuppressWarnings("unchecked")
-    public Type to(EndpointDefinition.Producer endpoint) {
+    public Type to(EndpointProducerBuilder endpoint) {
         addOutput(new ToDefinition(endpoint));
         return (Type) this;
     }
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java b/core/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java
index 02fecdb..81d9ac2 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java
@@ -168,7 +168,7 @@ public class RouteDefinition extends ProcessorDefinition<RouteDefinition> {
         return this;
     }
 
-    public RouteDefinition from(EndpointDefinition.Consumer endpoint) {
+    public RouteDefinition from(EndpointConsumerBuilder endpoint) {
         setInput(new FromDefinition(endpoint));
         return this;
     }
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/RoutesDefinition.java b/core/camel-core/src/main/java/org/apache/camel/model/RoutesDefinition.java
index 13cec79..655d563 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/RoutesDefinition.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/RoutesDefinition.java
@@ -175,7 +175,7 @@ public class RoutesDefinition extends OptionalIdentifiedDefinition<RoutesDefinit
         return route(route);
     }
 
-    public RouteDefinition from(EndpointDefinition.Consumer endpoint) {
+    public RouteDefinition from(EndpointConsumerBuilder endpoint) {
         RouteDefinition route = createRoute();
         route.from(endpoint);
         return route(route);
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java b/core/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java
index db38698..de6e67c 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/SendDefinition.java
@@ -23,7 +23,6 @@ import javax.xml.bind.annotation.XmlTransient;
 
 import org.apache.camel.Endpoint;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition.Producer;
 import org.apache.camel.spi.Metadata;
 
 /**
@@ -36,7 +35,7 @@ public abstract class SendDefinition<Type extends ProcessorDefinition<Type>> ext
     @XmlTransient
     protected Endpoint endpoint;
     @XmlTransient
-    protected EndpointDefinition.Producer endpointDefinition;
+    protected EndpointProducerBuilder endpointProducerBuilder;
 
     public SendDefinition() {
     }
@@ -86,12 +85,12 @@ public abstract class SendDefinition<Type extends ProcessorDefinition<Type>> ext
         }
     }
 
-    public Producer getEndpointDefinition() {
-        return endpointDefinition;
+    public EndpointProducerBuilder getEndpointProducerBuilder() {
+        return endpointProducerBuilder;
     }
 
-    public void setEndpointDefinition(Producer endpointDefinition) {
-        this.endpointDefinition = endpointDefinition;
+    public void setEndpointProducerBuilder(EndpointProducerBuilder endpointProducerBuilder) {
+        this.endpointProducerBuilder = endpointProducerBuilder;
     }
 
     public ExchangePattern getPattern() {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/ToDefinition.java b/core/camel-core/src/main/java/org/apache/camel/model/ToDefinition.java
index ec08972..33d18a1 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/ToDefinition.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/ToDefinition.java
@@ -46,8 +46,8 @@ public class ToDefinition extends SendDefinition<ToDefinition> {
         setEndpoint(endpoint);
     }
 
-    public ToDefinition(EndpointDefinition.Producer endpointDefinition) {
-        setEndpointDefinition(endpointDefinition);
+    public ToDefinition(EndpointProducerBuilder endpointDefinition) {
+        setEndpointProducerBuilder(endpointDefinition);
     }
 
     public ToDefinition(String uri, ExchangePattern pattern) {
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpointBuilder.java
similarity index 87%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpointBuilder.java
index 6f93dfa..4423b53 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AMQPEndpointBuilder.java
@@ -19,7 +19,9 @@ package org.apache.camel.model.endpoint;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
 import org.apache.camel.LoggingLevel;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 import org.apache.camel.spi.HeaderFilterStrategy;
 
@@ -29,13 +31,13 @@ import org.apache.camel.spi.HeaderFilterStrategy;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface AMQPEndpoint {
+public interface AMQPEndpointBuilder {
 
 
-    public static class AMQPCommon<T extends EndpointDefinition>
+    public static class AMQPCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        AMQPCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        AMQPCommonBuilder(String path) {
             super("amqp", path);
         }
         /**
@@ -513,12 +515,12 @@ public interface AMQPEndpoint {
         }
     }
 
-    public static class AMQPConsumer
+    public static class AMQPConsumerBuilder
             extends
-                AMQPCommon<AMQPConsumer>
+                AMQPCommonBuilder<AMQPConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public AMQPConsumer(String path) {
+                EndpointConsumerBuilder {
+        public AMQPConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -526,10 +528,10 @@ public interface AMQPEndpoint {
          * CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE. The option
          * is a java.lang.String type.
          */
-        public AMQPConsumer acknowledgementModeName(
+        public AMQPConsumerBuilder acknowledgementModeName(
                 String acknowledgementModeName) {
             this.properties.put("acknowledgementModeName", acknowledgementModeName);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Whether the JmsConsumer processes the Exchange asynchronously. If
@@ -543,17 +545,17 @@ public interface AMQPEndpoint {
          * transaction must be executed synchronously (Camel 3.0 may support
          * async transactions). The option is a boolean type.
          */
-        public AMQPConsumer asyncConsumer(boolean asyncConsumer) {
+        public AMQPConsumerBuilder asyncConsumer(boolean asyncConsumer) {
             this.properties.put("asyncConsumer", asyncConsumer);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Specifies whether the consumer container should auto-startup. The
          * option is a boolean type.
          */
-        public AMQPConsumer autoStartup(boolean autoStartup) {
+        public AMQPConsumerBuilder autoStartup(boolean autoStartup) {
             this.properties.put("autoStartup", autoStartup);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Allows for bridging the consumer to the Camel routing Error Handler,
@@ -564,17 +566,17 @@ public interface AMQPEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public AMQPConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public AMQPConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Sets the cache level by ID for the underlying JMS resources. See
          * cacheLevelName option for more details. The option is a int type.
          */
-        public AMQPConsumer cacheLevel(int cacheLevel) {
+        public AMQPConsumerBuilder cacheLevel(int cacheLevel) {
             this.properties.put("cacheLevel", cacheLevel);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Sets the cache level by name for the underlying JMS resources.
@@ -583,9 +585,9 @@ public interface AMQPEndpoint {
          * the Spring documentation and Transactions Cache Levels for more
          * information. The option is a java.lang.String type.
          */
-        public AMQPConsumer cacheLevelName(String cacheLevelName) {
+        public AMQPConsumerBuilder cacheLevelName(String cacheLevelName) {
             this.properties.put("cacheLevelName", cacheLevelName);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Specifies the default number of concurrent consumers when consuming
@@ -595,9 +597,9 @@ public interface AMQPEndpoint {
          * replyToConcurrentConsumers is used to control number of concurrent
          * consumers on the reply message listener. The option is a int type.
          */
-        public AMQPConsumer concurrentConsumers(int concurrentConsumers) {
+        public AMQPConsumerBuilder concurrentConsumers(int concurrentConsumers) {
             this.properties.put("concurrentConsumers", concurrentConsumers);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Specifies the maximum number of concurrent consumers when consuming
@@ -607,34 +609,35 @@ public interface AMQPEndpoint {
          * replyToMaxConcurrentConsumers is used to control number of concurrent
          * consumers on the reply message listener. The option is a int type.
          */
-        public AMQPConsumer maxConcurrentConsumers(int maxConcurrentConsumers) {
+        public AMQPConsumerBuilder maxConcurrentConsumers(
+                int maxConcurrentConsumers) {
             this.properties.put("maxConcurrentConsumers", maxConcurrentConsumers);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Provides an explicit ReplyTo destination, which overrides any
          * incoming value of Message.getJMSReplyTo(). The option is a
          * java.lang.String type.
          */
-        public AMQPConsumer replyTo(String replyTo) {
+        public AMQPConsumerBuilder replyTo(String replyTo) {
             this.properties.put("replyTo", replyTo);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Specifies whether to use persistent delivery by default for replies.
          * The option is a boolean type.
          */
-        public AMQPConsumer replyToDeliveryPersistent(
+        public AMQPConsumerBuilder replyToDeliveryPersistent(
                 boolean replyToDeliveryPersistent) {
             this.properties.put("replyToDeliveryPersistent", replyToDeliveryPersistent);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Sets the JMS selector to use. The option is a java.lang.String type.
          */
-        public AMQPConsumer selector(String selector) {
+        public AMQPConsumerBuilder selector(String selector) {
             this.properties.put("selector", selector);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Set whether to make the subscription durable. The durable
@@ -646,9 +649,10 @@ public interface AMQPEndpoint {
          * a topic (pub-sub domain), therefore this method switches the
          * pubSubDomain flag as well. The option is a boolean type.
          */
-        public AMQPConsumer subscriptionDurable(boolean subscriptionDurable) {
+        public AMQPConsumerBuilder subscriptionDurable(
+                boolean subscriptionDurable) {
             this.properties.put("subscriptionDurable", subscriptionDurable);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Set the name of a subscription to create. To be applied in case of a
@@ -660,9 +664,9 @@ public interface AMQPEndpoint {
          * for a shared subscription (which requires JMS 2.0). The option is a
          * java.lang.String type.
          */
-        public AMQPConsumer subscriptionName(String subscriptionName) {
+        public AMQPConsumerBuilder subscriptionName(String subscriptionName) {
             this.properties.put("subscriptionName", subscriptionName);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Set whether to make the subscription shared. The shared subscription
@@ -677,9 +681,9 @@ public interface AMQPEndpoint {
          * pubSubDomain flag as well. Requires a JMS 2.0 compatible message
          * broker. The option is a boolean type.
          */
-        public AMQPConsumer subscriptionShared(boolean subscriptionShared) {
+        public AMQPConsumerBuilder subscriptionShared(boolean subscriptionShared) {
             this.properties.put("subscriptionShared", subscriptionShared);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Specifies whether the consumer accept messages while it is stopping.
@@ -692,10 +696,10 @@ public interface AMQPEndpoint {
          * avoid this its recommended to enable this option. The option is a
          * boolean type.
          */
-        public AMQPConsumer acceptMessagesWhileStopping(
+        public AMQPConsumerBuilder acceptMessagesWhileStopping(
                 boolean acceptMessagesWhileStopping) {
             this.properties.put("acceptMessagesWhileStopping", acceptMessagesWhileStopping);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Whether the DefaultMessageListenerContainer used in the reply
@@ -707,10 +711,10 @@ public interface AMQPEndpoint {
          * but to enable for reply managers you must enable this flag. The
          * option is a boolean type.
          */
-        public AMQPConsumer allowReplyManagerQuickStop(
+        public AMQPConsumerBuilder allowReplyManagerQuickStop(
                 boolean allowReplyManagerQuickStop) {
             this.properties.put("allowReplyManagerQuickStop", allowReplyManagerQuickStop);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * The consumer type to use, which can be one of: Simple, Default, or
@@ -725,9 +729,9 @@ public interface AMQPEndpoint {
          * use. The option is a org.apache.camel.component.jms.ConsumerType
          * type.
          */
-        public AMQPConsumer consumerType(ConsumerType consumerType) {
+        public AMQPConsumerBuilder consumerType(ConsumerType consumerType) {
             this.properties.put("consumerType", consumerType);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Specifies what default TaskExecutor type to use in the
@@ -742,10 +746,10 @@ public interface AMQPEndpoint {
          * decreasing concurrent consumers. The option is a
          * org.apache.camel.component.jms.DefaultTaskExecutorType type.
          */
-        public AMQPConsumer defaultTaskExecutorType(
+        public AMQPConsumerBuilder defaultTaskExecutorType(
                 DefaultTaskExecutorType defaultTaskExecutorType) {
             this.properties.put("defaultTaskExecutorType", defaultTaskExecutorType);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Enables eager loading of JMS properties and payload as soon as a
@@ -754,10 +758,10 @@ public interface AMQPEndpoint {
          * issues with the underlying JMS provider and the use of JMS
          * properties. The option is a boolean type.
          */
-        public AMQPConsumer eagerLoadingOfProperties(
+        public AMQPConsumerBuilder eagerLoadingOfProperties(
                 boolean eagerLoadingOfProperties) {
             this.properties.put("eagerLoadingOfProperties", eagerLoadingOfProperties);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -766,25 +770,28 @@ public interface AMQPEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public AMQPConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public AMQPConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public AMQPConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public AMQPConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Specifies whether the listener session should be exposed when
          * consuming messages. The option is a boolean type.
          */
-        public AMQPConsumer exposeListenerSession(boolean exposeListenerSession) {
+        public AMQPConsumerBuilder exposeListenerSession(
+                boolean exposeListenerSession) {
             this.properties.put("exposeListenerSession", exposeListenerSession);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Whether a JMS consumer is allowed to send a reply message to the same
@@ -792,46 +799,46 @@ public interface AMQPEndpoint {
          * an endless loop by consuming and sending back the same message to
          * itself. The option is a boolean type.
          */
-        public AMQPConsumer replyToSameDestinationAllowed(
+        public AMQPConsumerBuilder replyToSameDestinationAllowed(
                 boolean replyToSameDestinationAllowed) {
             this.properties.put("replyToSameDestinationAllowed", replyToSameDestinationAllowed);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Allows you to specify a custom task executor for consuming messages.
          * The option is a org.springframework.core.task.TaskExecutor type.
          */
-        public AMQPConsumer taskExecutor(Object taskExecutor) {
+        public AMQPConsumerBuilder taskExecutor(Object taskExecutor) {
             this.properties.put("taskExecutor", taskExecutor);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Allows to configure the default errorHandler logging level for
          * logging uncaught exceptions. The option is a
          * org.apache.camel.LoggingLevel type.
          */
-        public AMQPConsumer errorHandlerLoggingLevel(
+        public AMQPConsumerBuilder errorHandlerLoggingLevel(
                 LoggingLevel errorHandlerLoggingLevel) {
             this.properties.put("errorHandlerLoggingLevel", errorHandlerLoggingLevel);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
         /**
          * Allows to control whether stacktraces should be logged or not, by the
          * default errorHandler. The option is a boolean type.
          */
-        public AMQPConsumer errorHandlerLogStackTrace(
+        public AMQPConsumerBuilder errorHandlerLogStackTrace(
                 boolean errorHandlerLogStackTrace) {
             this.properties.put("errorHandlerLogStackTrace", errorHandlerLogStackTrace);
-            return (AMQPConsumer) this;
+            return (AMQPConsumerBuilder) this;
         }
     }
 
-    public static class AMQPProducer
+    public static class AMQPProducerBuilder
             extends
-                AMQPCommon<AMQPProducer>
+                AMQPCommonBuilder<AMQPProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public AMQPProducer(String path) {
+                EndpointProducerBuilder {
+        public AMQPProducerBuilder(String path) {
             super(path);
         }
         /**
@@ -839,17 +846,17 @@ public interface AMQPEndpoint {
          * defined by javax.jms.DeliveryMode. NON_PERSISTENT = 1 and PERSISTENT
          * = 2. The option is a java.lang.Integer type.
          */
-        public AMQPProducer deliveryMode(Integer deliveryMode) {
+        public AMQPProducerBuilder deliveryMode(Integer deliveryMode) {
             this.properties.put("deliveryMode", deliveryMode);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Specifies whether persistent delivery is used by default. The option
          * is a boolean type.
          */
-        public AMQPProducer deliveryPersistent(boolean deliveryPersistent) {
+        public AMQPProducerBuilder deliveryPersistent(boolean deliveryPersistent) {
             this.properties.put("deliveryPersistent", deliveryPersistent);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Set if the deliveryMode, priority or timeToLive qualities of service
@@ -860,18 +867,18 @@ public interface AMQPEndpoint {
          * reading QoS properties exclusively from the Camel In message headers.
          * The option is a java.lang.Boolean type.
          */
-        public AMQPProducer explicitQosEnabled(Boolean explicitQosEnabled) {
+        public AMQPProducerBuilder explicitQosEnabled(Boolean explicitQosEnabled) {
             this.properties.put("explicitQosEnabled", explicitQosEnabled);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Sets whether date headers should be formatted according to the ISO
          * 8601 standard. The option is a boolean type.
          */
-        public AMQPProducer formatDateHeadersToIso8601(
+        public AMQPProducerBuilder formatDateHeadersToIso8601(
                 boolean formatDateHeadersToIso8601) {
             this.properties.put("formatDateHeadersToIso8601", formatDateHeadersToIso8601);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Set to true, if you want to send message using the QoS settings
@@ -884,9 +891,9 @@ public interface AMQPEndpoint {
          * by contrast, will only use options set on the endpoint, and not
          * values from the message header. The option is a boolean type.
          */
-        public AMQPProducer preserveMessageQos(boolean preserveMessageQos) {
+        public AMQPProducerBuilder preserveMessageQos(boolean preserveMessageQos) {
             this.properties.put("preserveMessageQos", preserveMessageQos);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Values greater than 1 specify the message priority when sending
@@ -894,39 +901,39 @@ public interface AMQPEndpoint {
          * explicitQosEnabled option must also be enabled in order for this
          * option to have any effect. The option is a int type.
          */
-        public AMQPProducer priority(int priority) {
+        public AMQPProducerBuilder priority(int priority) {
             this.properties.put("priority", priority);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Specifies the default number of concurrent consumers when doing
          * request/reply over JMS. See also the maxMessagesPerTask option to
          * control dynamic scaling up/down of threads. The option is a int type.
          */
-        public AMQPProducer replyToConcurrentConsumers(
+        public AMQPProducerBuilder replyToConcurrentConsumers(
                 int replyToConcurrentConsumers) {
             this.properties.put("replyToConcurrentConsumers", replyToConcurrentConsumers);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Specifies the maximum number of concurrent consumers when using
          * request/reply over JMS. See also the maxMessagesPerTask option to
          * control dynamic scaling up/down of threads. The option is a int type.
          */
-        public AMQPProducer replyToMaxConcurrentConsumers(
+        public AMQPProducerBuilder replyToMaxConcurrentConsumers(
                 int replyToMaxConcurrentConsumers) {
             this.properties.put("replyToMaxConcurrentConsumers", replyToMaxConcurrentConsumers);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Specifies the maximum number of concurrent consumers for continue
          * routing when timeout occurred when using request/reply over JMS. The
          * option is a int type.
          */
-        public AMQPProducer replyToOnTimeoutMaxConcurrentConsumers(
+        public AMQPProducerBuilder replyToOnTimeoutMaxConcurrentConsumers(
                 int replyToOnTimeoutMaxConcurrentConsumers) {
             this.properties.put("replyToOnTimeoutMaxConcurrentConsumers", replyToOnTimeoutMaxConcurrentConsumers);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Provides an explicit ReplyTo destination in the JMS message, which
@@ -934,9 +941,9 @@ public interface AMQPEndpoint {
          * the message to a remote Queue and receive the reply message from the
          * ReplyTo destination. The option is a java.lang.String type.
          */
-        public AMQPProducer replyToOverride(String replyToOverride) {
+        public AMQPProducerBuilder replyToOverride(String replyToOverride) {
             this.properties.put("replyToOverride", replyToOverride);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Allows for explicitly specifying which kind of strategy to use for
@@ -950,9 +957,9 @@ public interface AMQPEndpoint {
          * lower performance than its alternatives Temporary and Exclusive. The
          * option is a org.apache.camel.component.jms.ReplyToType type.
          */
-        public AMQPProducer replyToType(ReplyToType replyToType) {
+        public AMQPProducerBuilder replyToType(ReplyToType replyToType) {
             this.properties.put("replyToType", replyToType);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * The timeout for waiting for a reply when using the InOut Exchange
@@ -962,17 +969,17 @@ public interface AMQPEndpoint {
          * timeout values. See also the requestTimeoutCheckerInterval option.
          * The option is a long type.
          */
-        public AMQPProducer requestTimeout(long requestTimeout) {
+        public AMQPProducerBuilder requestTimeout(long requestTimeout) {
             this.properties.put("requestTimeout", requestTimeout);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * When sending messages, specifies the time-to-live of the message (in
          * milliseconds). The option is a long type.
          */
-        public AMQPProducer timeToLive(long timeToLive) {
+        public AMQPProducerBuilder timeToLive(long timeToLive) {
             this.properties.put("timeToLive", timeToLive);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * This option is used to allow additional headers which may have values
@@ -983,18 +990,19 @@ public interface AMQPEndpoint {
          * use as suffix for wildcard matching. The option is a java.lang.String
          * type.
          */
-        public AMQPProducer allowAdditionalHeaders(String allowAdditionalHeaders) {
+        public AMQPProducerBuilder allowAdditionalHeaders(
+                String allowAdditionalHeaders) {
             this.properties.put("allowAdditionalHeaders", allowAdditionalHeaders);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Whether to allow sending messages with no body. If this option is
          * false and the message body is null, then an JMSException is thrown.
          * The option is a boolean type.
          */
-        public AMQPProducer allowNullBody(boolean allowNullBody) {
+        public AMQPProducerBuilder allowNullBody(boolean allowNullBody) {
             this.properties.put("allowNullBody", allowNullBody);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * If true, Camel will always make a JMS message copy of the message
@@ -1004,9 +1012,9 @@ public interface AMQPEndpoint {
          * the alwaysCopyMessage option to true, if a
          * replyToDestinationSelectorName is set). The option is a boolean type.
          */
-        public AMQPProducer alwaysCopyMessage(boolean alwaysCopyMessage) {
+        public AMQPProducerBuilder alwaysCopyMessage(boolean alwaysCopyMessage) {
             this.properties.put("alwaysCopyMessage", alwaysCopyMessage);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Use this JMS property to correlate messages in InOut exchange pattern
@@ -1017,9 +1025,10 @@ public interface AMQPEndpoint {
          * generated if not supplied in the header of the message under the same
          * name. The option is a java.lang.String type.
          */
-        public AMQPProducer correlationProperty(String correlationProperty) {
+        public AMQPProducerBuilder correlationProperty(
+                String correlationProperty) {
             this.properties.put("correlationProperty", correlationProperty);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Use this option to force disabling time to live. For example when you
@@ -1032,9 +1041,9 @@ public interface AMQPEndpoint {
          * on the receiver system. See below in section About time to live for
          * more details. The option is a boolean type.
          */
-        public AMQPProducer disableTimeToLive(boolean disableTimeToLive) {
+        public AMQPProducerBuilder disableTimeToLive(boolean disableTimeToLive) {
             this.properties.put("disableTimeToLive", disableTimeToLive);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * When using mapJmsMessage=false Camel will create a new JMS message to
@@ -1042,10 +1051,10 @@ public interface AMQPEndpoint {
          * during the route. Set this option to true to force Camel to send the
          * original JMS message that was received. The option is a boolean type.
          */
-        public AMQPProducer forceSendOriginalMessage(
+        public AMQPProducerBuilder forceSendOriginalMessage(
                 boolean forceSendOriginalMessage) {
             this.properties.put("forceSendOriginalMessage", forceSendOriginalMessage);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Only applicable when sending to JMS destination using InOnly (eg fire
@@ -1054,10 +1063,10 @@ public interface AMQPEndpoint {
          * message was sent to the JMS destination. The option is a boolean
          * type.
          */
-        public AMQPProducer includeSentJMSMessageID(
+        public AMQPProducerBuilder includeSentJMSMessageID(
                 boolean includeSentJMSMessageID) {
             this.properties.put("includeSentJMSMessageID", includeSentJMSMessageID);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Sets the cache level by name for the reply consumer when doing
@@ -1071,9 +1080,10 @@ public interface AMQPEndpoint {
          * value such as CACHE_CONSUMER or CACHE_SESSION. The option is a
          * java.lang.String type.
          */
-        public AMQPProducer replyToCacheLevelName(String replyToCacheLevelName) {
+        public AMQPProducerBuilder replyToCacheLevelName(
+                String replyToCacheLevelName) {
             this.properties.put("replyToCacheLevelName", replyToCacheLevelName);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Sets the JMS Selector using the fixed name to be used so you can
@@ -1081,10 +1091,10 @@ public interface AMQPEndpoint {
          * (that is, if you are not using a temporary reply queue). The option
          * is a java.lang.String type.
          */
-        public AMQPProducer replyToDestinationSelectorName(
+        public AMQPProducerBuilder replyToDestinationSelectorName(
                 String replyToDestinationSelectorName) {
             this.properties.put("replyToDestinationSelectorName", replyToDestinationSelectorName);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
         /**
          * Sets whether StreamMessage type is enabled or not. Message payloads
@@ -1096,10 +1106,10 @@ public interface AMQPEndpoint {
          * chunk is then written to the StreamMessage until no more data. The
          * option is a boolean type.
          */
-        public AMQPProducer streamMessageTypeEnabled(
+        public AMQPProducerBuilder streamMessageTypeEnabled(
                 boolean streamMessageTypeEnabled) {
             this.properties.put("streamMessageTypeEnabled", streamMessageTypeEnabled);
-            return (AMQPProducer) this;
+            return (AMQPProducerBuilder) this;
         }
     }
 
@@ -1118,10 +1128,10 @@ public interface AMQPEndpoint {
     public static enum ReplyToType {
         Temporary, Shared, Exclusive;
     }
-    public default AMQPConsumer fromAMQP(String path) {
-        return new AMQPConsumer(path);
+    public default AMQPConsumerBuilder fromAMQP(String path) {
+        return new AMQPConsumerBuilder(path);
     }
-    public default AMQPProducer toAMQP(String path) {
-        return new AMQPProducer(path);
+    public default AMQPProducerBuilder toAMQP(String path) {
+        return new AMQPProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AS2Endpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AS2EndpointBuilder.java
similarity index 91%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/AS2Endpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/AS2EndpointBuilder.java
index 92eedce..ac276f5 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AS2Endpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AS2EndpointBuilder.java
@@ -20,7 +20,9 @@ import java.security.PrivateKey;
 import java.security.cert.Certificate;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -30,13 +32,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface AS2Endpoint {
+public interface AS2EndpointBuilder {
 
 
-    public static class AS2Common<T extends EndpointDefinition>
+    public static class AS2CommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        AS2Common(String path) {
+                AbstractEndpointBuilder<T> {
+        AS2CommonBuilder(String path) {
             super("as2", path);
         }
         /**
@@ -297,12 +299,12 @@ public interface AS2Endpoint {
         }
     }
 
-    public static class AS2Consumer
+    public static class AS2ConsumerBuilder
             extends
-                AS2Common<AS2Consumer>
+                AS2CommonBuilder<AS2ConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public AS2Consumer(String path) {
+                EndpointConsumerBuilder {
+        public AS2ConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -314,9 +316,9 @@ public interface AS2Endpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public AS2Consumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public AS2ConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (AS2Consumer) this;
+            return (AS2ConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -325,26 +327,28 @@ public interface AS2Endpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public AS2Consumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public AS2ConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (AS2Consumer) this;
+            return (AS2ConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public AS2Consumer exchangePattern(ExchangePattern exchangePattern) {
+        public AS2ConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (AS2Consumer) this;
+            return (AS2ConsumerBuilder) this;
         }
     }
 
-    public static class AS2Producer
+    public static class AS2ProducerBuilder
             extends
-                AS2Common<AS2Producer>
+                AS2CommonBuilder<AS2ProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public AS2Producer(String path) {
+                EndpointProducerBuilder {
+        public AS2ProducerBuilder(String path) {
             super(path);
         }
     }
@@ -368,10 +372,10 @@ public interface AS2Endpoint {
     public static enum AS2SignatureAlgorithm {
         SHA3_224WITHRSA, SHA3_256WITHRSA, SHA3_384withRSA, SHA3_512WITHRSA, MD5WITHRSA, SHA1WITHRSA, MD2WITHRSA, SHA224WITHRSA, SHA256WITHRSA, SHA384WITHRSA, SHA512WITHRSA, RIPEMD128WITHRSA, RIPEMD160WITHRSA, RIPEMD256WITHRSA, SHA224WITHDSA, SHA256WITHDSA, SHA384WITHDSA, SHA512WITHDSA, SHA3_224WITHDSA, SHA3_256WITHDSA, SHA3_384WITHDSA, SHA3_512WITHDSA, SHA1WITHDSA, SHA3_224WITHECDSA, SHA3_256WITHECDSA, SHA3_384WITHECDSA, SHA3_512WITHECDSA, SHA1WITHECDSA, SHA224WITHECDSA, SHA256WITHECDSA, [...]
     }
-    public default AS2Consumer fromAS2(String path) {
-        return new AS2Consumer(path);
+    public default AS2ConsumerBuilder fromAS2(String path) {
+        return new AS2ConsumerBuilder(path);
     }
-    public default AS2Producer toAS2(String path) {
-        return new AS2Producer(path);
+    public default AS2ProducerBuilder toAS2(String path) {
+        return new AS2ProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JmsEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ActiveMQEndpointBuilder.java
similarity index 86%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/JmsEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/ActiveMQEndpointBuilder.java
index 9ec9746..ae3d95c 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/JmsEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ActiveMQEndpointBuilder.java
@@ -19,25 +19,27 @@ package org.apache.camel.model.endpoint;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
 import org.apache.camel.LoggingLevel;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 import org.apache.camel.spi.HeaderFilterStrategy;
 
 /**
- * The jms component allows messages to be sent to (or consumed from) a JMS
- * Queue or Topic.
+ * The activemq component allows messages to be sent to (or consumed from)
+ * Apache ActiveMQ. This component extends the Camel JMS component.
  * 
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface JmsEndpoint {
+public interface ActiveMQEndpointBuilder {
 
 
-    public static class JmsCommon<T extends EndpointDefinition>
+    public static class ActiveMQCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        JmsCommon(String path) {
-            super("jms", path);
+                AbstractEndpointBuilder<T> {
+        ActiveMQCommonBuilder(String path) {
+            super("activemq", path);
         }
         /**
          * The kind of destination to use. The option is a java.lang.String
@@ -514,12 +516,12 @@ public interface JmsEndpoint {
         }
     }
 
-    public static class JmsConsumer
+    public static class ActiveMQConsumerBuilder
             extends
-                JmsCommon<JmsConsumer>
+                ActiveMQCommonBuilder<ActiveMQConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public JmsConsumer(String path) {
+                EndpointConsumerBuilder {
+        public ActiveMQConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -527,10 +529,10 @@ public interface JmsEndpoint {
          * CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE. The option
          * is a java.lang.String type.
          */
-        public JmsConsumer acknowledgementModeName(
+        public ActiveMQConsumerBuilder acknowledgementModeName(
                 String acknowledgementModeName) {
             this.properties.put("acknowledgementModeName", acknowledgementModeName);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Whether the JmsConsumer processes the Exchange asynchronously. If
@@ -544,17 +546,17 @@ public interface JmsEndpoint {
          * transaction must be executed synchronously (Camel 3.0 may support
          * async transactions). The option is a boolean type.
          */
-        public JmsConsumer asyncConsumer(boolean asyncConsumer) {
+        public ActiveMQConsumerBuilder asyncConsumer(boolean asyncConsumer) {
             this.properties.put("asyncConsumer", asyncConsumer);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Specifies whether the consumer container should auto-startup. The
          * option is a boolean type.
          */
-        public JmsConsumer autoStartup(boolean autoStartup) {
+        public ActiveMQConsumerBuilder autoStartup(boolean autoStartup) {
             this.properties.put("autoStartup", autoStartup);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Allows for bridging the consumer to the Camel routing Error Handler,
@@ -565,17 +567,18 @@ public interface JmsEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public JmsConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public ActiveMQConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Sets the cache level by ID for the underlying JMS resources. See
          * cacheLevelName option for more details. The option is a int type.
          */
-        public JmsConsumer cacheLevel(int cacheLevel) {
+        public ActiveMQConsumerBuilder cacheLevel(int cacheLevel) {
             this.properties.put("cacheLevel", cacheLevel);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Sets the cache level by name for the underlying JMS resources.
@@ -584,9 +587,9 @@ public interface JmsEndpoint {
          * the Spring documentation and Transactions Cache Levels for more
          * information. The option is a java.lang.String type.
          */
-        public JmsConsumer cacheLevelName(String cacheLevelName) {
+        public ActiveMQConsumerBuilder cacheLevelName(String cacheLevelName) {
             this.properties.put("cacheLevelName", cacheLevelName);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Specifies the default number of concurrent consumers when consuming
@@ -596,9 +599,10 @@ public interface JmsEndpoint {
          * replyToConcurrentConsumers is used to control number of concurrent
          * consumers on the reply message listener. The option is a int type.
          */
-        public JmsConsumer concurrentConsumers(int concurrentConsumers) {
+        public ActiveMQConsumerBuilder concurrentConsumers(
+                int concurrentConsumers) {
             this.properties.put("concurrentConsumers", concurrentConsumers);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Specifies the maximum number of concurrent consumers when consuming
@@ -608,34 +612,35 @@ public interface JmsEndpoint {
          * replyToMaxConcurrentConsumers is used to control number of concurrent
          * consumers on the reply message listener. The option is a int type.
          */
-        public JmsConsumer maxConcurrentConsumers(int maxConcurrentConsumers) {
+        public ActiveMQConsumerBuilder maxConcurrentConsumers(
+                int maxConcurrentConsumers) {
             this.properties.put("maxConcurrentConsumers", maxConcurrentConsumers);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Provides an explicit ReplyTo destination, which overrides any
          * incoming value of Message.getJMSReplyTo(). The option is a
          * java.lang.String type.
          */
-        public JmsConsumer replyTo(String replyTo) {
+        public ActiveMQConsumerBuilder replyTo(String replyTo) {
             this.properties.put("replyTo", replyTo);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Specifies whether to use persistent delivery by default for replies.
          * The option is a boolean type.
          */
-        public JmsConsumer replyToDeliveryPersistent(
+        public ActiveMQConsumerBuilder replyToDeliveryPersistent(
                 boolean replyToDeliveryPersistent) {
             this.properties.put("replyToDeliveryPersistent", replyToDeliveryPersistent);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Sets the JMS selector to use. The option is a java.lang.String type.
          */
-        public JmsConsumer selector(String selector) {
+        public ActiveMQConsumerBuilder selector(String selector) {
             this.properties.put("selector", selector);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Set whether to make the subscription durable. The durable
@@ -647,9 +652,10 @@ public interface JmsEndpoint {
          * a topic (pub-sub domain), therefore this method switches the
          * pubSubDomain flag as well. The option is a boolean type.
          */
-        public JmsConsumer subscriptionDurable(boolean subscriptionDurable) {
+        public ActiveMQConsumerBuilder subscriptionDurable(
+                boolean subscriptionDurable) {
             this.properties.put("subscriptionDurable", subscriptionDurable);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Set the name of a subscription to create. To be applied in case of a
@@ -661,9 +667,9 @@ public interface JmsEndpoint {
          * for a shared subscription (which requires JMS 2.0). The option is a
          * java.lang.String type.
          */
-        public JmsConsumer subscriptionName(String subscriptionName) {
+        public ActiveMQConsumerBuilder subscriptionName(String subscriptionName) {
             this.properties.put("subscriptionName", subscriptionName);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Set whether to make the subscription shared. The shared subscription
@@ -678,9 +684,10 @@ public interface JmsEndpoint {
          * pubSubDomain flag as well. Requires a JMS 2.0 compatible message
          * broker. The option is a boolean type.
          */
-        public JmsConsumer subscriptionShared(boolean subscriptionShared) {
+        public ActiveMQConsumerBuilder subscriptionShared(
+                boolean subscriptionShared) {
             this.properties.put("subscriptionShared", subscriptionShared);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Specifies whether the consumer accept messages while it is stopping.
@@ -693,10 +700,10 @@ public interface JmsEndpoint {
          * avoid this its recommended to enable this option. The option is a
          * boolean type.
          */
-        public JmsConsumer acceptMessagesWhileStopping(
+        public ActiveMQConsumerBuilder acceptMessagesWhileStopping(
                 boolean acceptMessagesWhileStopping) {
             this.properties.put("acceptMessagesWhileStopping", acceptMessagesWhileStopping);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Whether the DefaultMessageListenerContainer used in the reply
@@ -708,10 +715,10 @@ public interface JmsEndpoint {
          * but to enable for reply managers you must enable this flag. The
          * option is a boolean type.
          */
-        public JmsConsumer allowReplyManagerQuickStop(
+        public ActiveMQConsumerBuilder allowReplyManagerQuickStop(
                 boolean allowReplyManagerQuickStop) {
             this.properties.put("allowReplyManagerQuickStop", allowReplyManagerQuickStop);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * The consumer type to use, which can be one of: Simple, Default, or
@@ -726,9 +733,9 @@ public interface JmsEndpoint {
          * use. The option is a org.apache.camel.component.jms.ConsumerType
          * type.
          */
-        public JmsConsumer consumerType(ConsumerType consumerType) {
+        public ActiveMQConsumerBuilder consumerType(ConsumerType consumerType) {
             this.properties.put("consumerType", consumerType);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Specifies what default TaskExecutor type to use in the
@@ -743,10 +750,10 @@ public interface JmsEndpoint {
          * decreasing concurrent consumers. The option is a
          * org.apache.camel.component.jms.DefaultTaskExecutorType type.
          */
-        public JmsConsumer defaultTaskExecutorType(
+        public ActiveMQConsumerBuilder defaultTaskExecutorType(
                 DefaultTaskExecutorType defaultTaskExecutorType) {
             this.properties.put("defaultTaskExecutorType", defaultTaskExecutorType);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Enables eager loading of JMS properties and payload as soon as a
@@ -755,10 +762,10 @@ public interface JmsEndpoint {
          * issues with the underlying JMS provider and the use of JMS
          * properties. The option is a boolean type.
          */
-        public JmsConsumer eagerLoadingOfProperties(
+        public ActiveMQConsumerBuilder eagerLoadingOfProperties(
                 boolean eagerLoadingOfProperties) {
             this.properties.put("eagerLoadingOfProperties", eagerLoadingOfProperties);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -767,25 +774,28 @@ public interface JmsEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public JmsConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public ActiveMQConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public JmsConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public ActiveMQConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Specifies whether the listener session should be exposed when
          * consuming messages. The option is a boolean type.
          */
-        public JmsConsumer exposeListenerSession(boolean exposeListenerSession) {
+        public ActiveMQConsumerBuilder exposeListenerSession(
+                boolean exposeListenerSession) {
             this.properties.put("exposeListenerSession", exposeListenerSession);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Whether a JMS consumer is allowed to send a reply message to the same
@@ -793,46 +803,46 @@ public interface JmsEndpoint {
          * an endless loop by consuming and sending back the same message to
          * itself. The option is a boolean type.
          */
-        public JmsConsumer replyToSameDestinationAllowed(
+        public ActiveMQConsumerBuilder replyToSameDestinationAllowed(
                 boolean replyToSameDestinationAllowed) {
             this.properties.put("replyToSameDestinationAllowed", replyToSameDestinationAllowed);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Allows you to specify a custom task executor for consuming messages.
          * The option is a org.springframework.core.task.TaskExecutor type.
          */
-        public JmsConsumer taskExecutor(Object taskExecutor) {
+        public ActiveMQConsumerBuilder taskExecutor(Object taskExecutor) {
             this.properties.put("taskExecutor", taskExecutor);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Allows to configure the default errorHandler logging level for
          * logging uncaught exceptions. The option is a
          * org.apache.camel.LoggingLevel type.
          */
-        public JmsConsumer errorHandlerLoggingLevel(
+        public ActiveMQConsumerBuilder errorHandlerLoggingLevel(
                 LoggingLevel errorHandlerLoggingLevel) {
             this.properties.put("errorHandlerLoggingLevel", errorHandlerLoggingLevel);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
         /**
          * Allows to control whether stacktraces should be logged or not, by the
          * default errorHandler. The option is a boolean type.
          */
-        public JmsConsumer errorHandlerLogStackTrace(
+        public ActiveMQConsumerBuilder errorHandlerLogStackTrace(
                 boolean errorHandlerLogStackTrace) {
             this.properties.put("errorHandlerLogStackTrace", errorHandlerLogStackTrace);
-            return (JmsConsumer) this;
+            return (ActiveMQConsumerBuilder) this;
         }
     }
 
-    public static class JmsProducer
+    public static class ActiveMQProducerBuilder
             extends
-                JmsCommon<JmsProducer>
+                ActiveMQCommonBuilder<ActiveMQProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public JmsProducer(String path) {
+                EndpointProducerBuilder {
+        public ActiveMQProducerBuilder(String path) {
             super(path);
         }
         /**
@@ -840,17 +850,18 @@ public interface JmsEndpoint {
          * defined by javax.jms.DeliveryMode. NON_PERSISTENT = 1 and PERSISTENT
          * = 2. The option is a java.lang.Integer type.
          */
-        public JmsProducer deliveryMode(Integer deliveryMode) {
+        public ActiveMQProducerBuilder deliveryMode(Integer deliveryMode) {
             this.properties.put("deliveryMode", deliveryMode);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Specifies whether persistent delivery is used by default. The option
          * is a boolean type.
          */
-        public JmsProducer deliveryPersistent(boolean deliveryPersistent) {
+        public ActiveMQProducerBuilder deliveryPersistent(
+                boolean deliveryPersistent) {
             this.properties.put("deliveryPersistent", deliveryPersistent);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Set if the deliveryMode, priority or timeToLive qualities of service
@@ -861,18 +872,19 @@ public interface JmsEndpoint {
          * reading QoS properties exclusively from the Camel In message headers.
          * The option is a java.lang.Boolean type.
          */
-        public JmsProducer explicitQosEnabled(Boolean explicitQosEnabled) {
+        public ActiveMQProducerBuilder explicitQosEnabled(
+                Boolean explicitQosEnabled) {
             this.properties.put("explicitQosEnabled", explicitQosEnabled);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Sets whether date headers should be formatted according to the ISO
          * 8601 standard. The option is a boolean type.
          */
-        public JmsProducer formatDateHeadersToIso8601(
+        public ActiveMQProducerBuilder formatDateHeadersToIso8601(
                 boolean formatDateHeadersToIso8601) {
             this.properties.put("formatDateHeadersToIso8601", formatDateHeadersToIso8601);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Set to true, if you want to send message using the QoS settings
@@ -885,9 +897,10 @@ public interface JmsEndpoint {
          * by contrast, will only use options set on the endpoint, and not
          * values from the message header. The option is a boolean type.
          */
-        public JmsProducer preserveMessageQos(boolean preserveMessageQos) {
+        public ActiveMQProducerBuilder preserveMessageQos(
+                boolean preserveMessageQos) {
             this.properties.put("preserveMessageQos", preserveMessageQos);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Values greater than 1 specify the message priority when sending
@@ -895,39 +908,39 @@ public interface JmsEndpoint {
          * explicitQosEnabled option must also be enabled in order for this
          * option to have any effect. The option is a int type.
          */
-        public JmsProducer priority(int priority) {
+        public ActiveMQProducerBuilder priority(int priority) {
             this.properties.put("priority", priority);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Specifies the default number of concurrent consumers when doing
          * request/reply over JMS. See also the maxMessagesPerTask option to
          * control dynamic scaling up/down of threads. The option is a int type.
          */
-        public JmsProducer replyToConcurrentConsumers(
+        public ActiveMQProducerBuilder replyToConcurrentConsumers(
                 int replyToConcurrentConsumers) {
             this.properties.put("replyToConcurrentConsumers", replyToConcurrentConsumers);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Specifies the maximum number of concurrent consumers when using
          * request/reply over JMS. See also the maxMessagesPerTask option to
          * control dynamic scaling up/down of threads. The option is a int type.
          */
-        public JmsProducer replyToMaxConcurrentConsumers(
+        public ActiveMQProducerBuilder replyToMaxConcurrentConsumers(
                 int replyToMaxConcurrentConsumers) {
             this.properties.put("replyToMaxConcurrentConsumers", replyToMaxConcurrentConsumers);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Specifies the maximum number of concurrent consumers for continue
          * routing when timeout occurred when using request/reply over JMS. The
          * option is a int type.
          */
-        public JmsProducer replyToOnTimeoutMaxConcurrentConsumers(
+        public ActiveMQProducerBuilder replyToOnTimeoutMaxConcurrentConsumers(
                 int replyToOnTimeoutMaxConcurrentConsumers) {
             this.properties.put("replyToOnTimeoutMaxConcurrentConsumers", replyToOnTimeoutMaxConcurrentConsumers);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Provides an explicit ReplyTo destination in the JMS message, which
@@ -935,9 +948,9 @@ public interface JmsEndpoint {
          * the message to a remote Queue and receive the reply message from the
          * ReplyTo destination. The option is a java.lang.String type.
          */
-        public JmsProducer replyToOverride(String replyToOverride) {
+        public ActiveMQProducerBuilder replyToOverride(String replyToOverride) {
             this.properties.put("replyToOverride", replyToOverride);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Allows for explicitly specifying which kind of strategy to use for
@@ -951,9 +964,9 @@ public interface JmsEndpoint {
          * lower performance than its alternatives Temporary and Exclusive. The
          * option is a org.apache.camel.component.jms.ReplyToType type.
          */
-        public JmsProducer replyToType(ReplyToType replyToType) {
+        public ActiveMQProducerBuilder replyToType(ReplyToType replyToType) {
             this.properties.put("replyToType", replyToType);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * The timeout for waiting for a reply when using the InOut Exchange
@@ -963,17 +976,17 @@ public interface JmsEndpoint {
          * timeout values. See also the requestTimeoutCheckerInterval option.
          * The option is a long type.
          */
-        public JmsProducer requestTimeout(long requestTimeout) {
+        public ActiveMQProducerBuilder requestTimeout(long requestTimeout) {
             this.properties.put("requestTimeout", requestTimeout);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * When sending messages, specifies the time-to-live of the message (in
          * milliseconds). The option is a long type.
          */
-        public JmsProducer timeToLive(long timeToLive) {
+        public ActiveMQProducerBuilder timeToLive(long timeToLive) {
             this.properties.put("timeToLive", timeToLive);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * This option is used to allow additional headers which may have values
@@ -984,18 +997,19 @@ public interface JmsEndpoint {
          * use as suffix for wildcard matching. The option is a java.lang.String
          * type.
          */
-        public JmsProducer allowAdditionalHeaders(String allowAdditionalHeaders) {
+        public ActiveMQProducerBuilder allowAdditionalHeaders(
+                String allowAdditionalHeaders) {
             this.properties.put("allowAdditionalHeaders", allowAdditionalHeaders);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Whether to allow sending messages with no body. If this option is
          * false and the message body is null, then an JMSException is thrown.
          * The option is a boolean type.
          */
-        public JmsProducer allowNullBody(boolean allowNullBody) {
+        public ActiveMQProducerBuilder allowNullBody(boolean allowNullBody) {
             this.properties.put("allowNullBody", allowNullBody);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * If true, Camel will always make a JMS message copy of the message
@@ -1005,9 +1019,10 @@ public interface JmsEndpoint {
          * the alwaysCopyMessage option to true, if a
          * replyToDestinationSelectorName is set). The option is a boolean type.
          */
-        public JmsProducer alwaysCopyMessage(boolean alwaysCopyMessage) {
+        public ActiveMQProducerBuilder alwaysCopyMessage(
+                boolean alwaysCopyMessage) {
             this.properties.put("alwaysCopyMessage", alwaysCopyMessage);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Use this JMS property to correlate messages in InOut exchange pattern
@@ -1018,9 +1033,10 @@ public interface JmsEndpoint {
          * generated if not supplied in the header of the message under the same
          * name. The option is a java.lang.String type.
          */
-        public JmsProducer correlationProperty(String correlationProperty) {
+        public ActiveMQProducerBuilder correlationProperty(
+                String correlationProperty) {
             this.properties.put("correlationProperty", correlationProperty);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Use this option to force disabling time to live. For example when you
@@ -1033,9 +1049,10 @@ public interface JmsEndpoint {
          * on the receiver system. See below in section About time to live for
          * more details. The option is a boolean type.
          */
-        public JmsProducer disableTimeToLive(boolean disableTimeToLive) {
+        public ActiveMQProducerBuilder disableTimeToLive(
+                boolean disableTimeToLive) {
             this.properties.put("disableTimeToLive", disableTimeToLive);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * When using mapJmsMessage=false Camel will create a new JMS message to
@@ -1043,10 +1060,10 @@ public interface JmsEndpoint {
          * during the route. Set this option to true to force Camel to send the
          * original JMS message that was received. The option is a boolean type.
          */
-        public JmsProducer forceSendOriginalMessage(
+        public ActiveMQProducerBuilder forceSendOriginalMessage(
                 boolean forceSendOriginalMessage) {
             this.properties.put("forceSendOriginalMessage", forceSendOriginalMessage);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Only applicable when sending to JMS destination using InOnly (eg fire
@@ -1055,10 +1072,10 @@ public interface JmsEndpoint {
          * message was sent to the JMS destination. The option is a boolean
          * type.
          */
-        public JmsProducer includeSentJMSMessageID(
+        public ActiveMQProducerBuilder includeSentJMSMessageID(
                 boolean includeSentJMSMessageID) {
             this.properties.put("includeSentJMSMessageID", includeSentJMSMessageID);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Sets the cache level by name for the reply consumer when doing
@@ -1072,9 +1089,10 @@ public interface JmsEndpoint {
          * value such as CACHE_CONSUMER or CACHE_SESSION. The option is a
          * java.lang.String type.
          */
-        public JmsProducer replyToCacheLevelName(String replyToCacheLevelName) {
+        public ActiveMQProducerBuilder replyToCacheLevelName(
+                String replyToCacheLevelName) {
             this.properties.put("replyToCacheLevelName", replyToCacheLevelName);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Sets the JMS Selector using the fixed name to be used so you can
@@ -1082,10 +1100,10 @@ public interface JmsEndpoint {
          * (that is, if you are not using a temporary reply queue). The option
          * is a java.lang.String type.
          */
-        public JmsProducer replyToDestinationSelectorName(
+        public ActiveMQProducerBuilder replyToDestinationSelectorName(
                 String replyToDestinationSelectorName) {
             this.properties.put("replyToDestinationSelectorName", replyToDestinationSelectorName);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
         /**
          * Sets whether StreamMessage type is enabled or not. Message payloads
@@ -1097,10 +1115,10 @@ public interface JmsEndpoint {
          * chunk is then written to the StreamMessage until no more data. The
          * option is a boolean type.
          */
-        public JmsProducer streamMessageTypeEnabled(
+        public ActiveMQProducerBuilder streamMessageTypeEnabled(
                 boolean streamMessageTypeEnabled) {
             this.properties.put("streamMessageTypeEnabled", streamMessageTypeEnabled);
-            return (JmsProducer) this;
+            return (ActiveMQProducerBuilder) this;
         }
     }
 
@@ -1119,10 +1137,10 @@ public interface JmsEndpoint {
     public static enum ReplyToType {
         Temporary, Shared, Exclusive;
     }
-    public default JmsConsumer fromJms(String path) {
-        return new JmsConsumer(path);
+    public default ActiveMQConsumerBuilder fromActiveMQ(String path) {
+        return new ActiveMQConsumerBuilder(path);
     }
-    public default JmsProducer toJms(String path) {
-        return new JmsProducer(path);
+    public default ActiveMQProducerBuilder toActiveMQ(String path) {
+        return new ActiveMQProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java
similarity index 89%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java
index 229011d..7d113d7 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AhcEndpointBuilder.java
@@ -19,7 +19,9 @@ package org.apache.camel.model.endpoint;
 import java.net.URI;
 import java.util.Map;
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.HeaderFilterStrategy;
 
 /**
@@ -28,13 +30,13 @@ import org.apache.camel.spi.HeaderFilterStrategy;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface AhcEndpoint {
+public interface AhcEndpointBuilder {
 
 
-    public static class AhcCommon<T extends EndpointDefinition>
+    public static class AhcCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        AhcCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        AhcCommonBuilder(String path) {
             super("ahc", path);
         }
         /**
@@ -168,12 +170,12 @@ public interface AhcEndpoint {
         }
     }
 
-    public static class AhcProducer
+    public static class AhcProducerBuilder
             extends
-                AhcCommon<AhcProducer>
+                AhcCommonBuilder<AhcProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public AhcProducer(String path) {
+                EndpointProducerBuilder {
+        public AhcProducerBuilder(String path) {
             super(path);
         }
         /**
@@ -181,20 +183,20 @@ public interface AhcEndpoint {
          * Request. This parameter is false by default. The option is a boolean
          * type.
          */
-        public AhcProducer connectionClose(boolean connectionClose) {
+        public AhcProducerBuilder connectionClose(boolean connectionClose) {
             this.properties.put("connectionClose", connectionClose);
-            return (AhcProducer) this;
+            return (AhcProducerBuilder) this;
         }
         /**
          * Configure a cookie handler to maintain a HTTP session. The option is
          * a org.apache.camel.http.common.cookie.CookieHandler type.
          */
-        public AhcProducer cookieHandler(Object cookieHandler) {
+        public AhcProducerBuilder cookieHandler(Object cookieHandler) {
             this.properties.put("cookieHandler", cookieHandler);
-            return (AhcProducer) this;
+            return (AhcProducerBuilder) this;
         }
     }
-    public default AhcProducer toAhc(String path) {
-        return new AhcProducer(path);
+    public default AhcProducerBuilder toAhc(String path) {
+        return new AhcProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java
similarity index 74%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java
index 0b0f094..8b5a55c 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ApnsEndpointBuilder.java
@@ -22,7 +22,9 @@ import java.util.concurrent.TimeUnit;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
 import org.apache.camel.LoggingLevel;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 import org.apache.camel.spi.PollingConsumerPollStrategy;
 import org.apache.camel.spi.ScheduledPollConsumerScheduler;
@@ -33,13 +35,13 @@ import org.apache.camel.spi.ScheduledPollConsumerScheduler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface ApnsEndpoint {
+public interface ApnsEndpointBuilder {
 
 
-    public static class ApnsCommon<T extends EndpointDefinition>
+    public static class ApnsCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        ApnsCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        ApnsCommonBuilder(String path) {
             super("apns", path);
         }
         /**
@@ -78,12 +80,12 @@ public interface ApnsEndpoint {
         }
     }
 
-    public static class ApnsConsumer
+    public static class ApnsConsumerBuilder
             extends
-                ApnsCommon<ApnsConsumer>
+                ApnsCommonBuilder<ApnsConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public ApnsConsumer(String path) {
+                EndpointConsumerBuilder {
+        public ApnsConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -95,19 +97,19 @@ public interface ApnsEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public ApnsConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public ApnsConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option is a
          * boolean type.
          */
-        public ApnsConsumer sendEmptyMessageWhenIdle(
+        public ApnsConsumerBuilder sendEmptyMessageWhenIdle(
                 boolean sendEmptyMessageWhenIdle) {
             this.properties.put("sendEmptyMessageWhenIdle", sendEmptyMessageWhenIdle);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -116,17 +118,19 @@ public interface ApnsEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public ApnsConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public ApnsConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public ApnsConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public ApnsConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing
@@ -135,27 +139,28 @@ public interface ApnsEndpoint {
          * been created and being routed in Camel. The option is a
          * org.apache.camel.spi.PollingConsumerPollStrategy type.
          */
-        public ApnsConsumer pollStrategy(
+        public ApnsConsumerBuilder pollStrategy(
                 PollingConsumerPollStrategy pollStrategy) {
             this.properties.put("pollStrategy", pollStrategy);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
          * is a int type.
          */
-        public ApnsConsumer backoffErrorThreshold(int backoffErrorThreshold) {
+        public ApnsConsumerBuilder backoffErrorThreshold(
+                int backoffErrorThreshold) {
             this.properties.put("backoffErrorThreshold", backoffErrorThreshold);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * The number of subsequent idle polls that should happen before the
          * backoffMultipler should kick-in. The option is a int type.
          */
-        public ApnsConsumer backoffIdleThreshold(int backoffIdleThreshold) {
+        public ApnsConsumerBuilder backoffIdleThreshold(int backoffIdleThreshold) {
             this.properties.put("backoffIdleThreshold", backoffIdleThreshold);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * To let the scheduled polling consumer backoff if there has been a
@@ -165,45 +170,45 @@ public interface ApnsEndpoint {
          * backoffIdleThreshold and/or backoffErrorThreshold must also be
          * configured. The option is a int type.
          */
-        public ApnsConsumer backoffMultiplier(int backoffMultiplier) {
+        public ApnsConsumerBuilder backoffMultiplier(int backoffMultiplier) {
             this.properties.put("backoffMultiplier", backoffMultiplier);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
          */
-        public ApnsConsumer delay(long delay) {
+        public ApnsConsumerBuilder delay(long delay) {
             this.properties.put("delay", delay);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
          * option is a boolean type.
          */
-        public ApnsConsumer greedy(boolean greedy) {
+        public ApnsConsumerBuilder greedy(boolean greedy) {
             this.properties.put("greedy", greedy);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
          */
-        public ApnsConsumer initialDelay(long initialDelay) {
+        public ApnsConsumerBuilder initialDelay(long initialDelay) {
             this.properties.put("initialDelay", initialDelay);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
          * is a org.apache.camel.LoggingLevel type.
          */
-        public ApnsConsumer runLoggingLevel(LoggingLevel runLoggingLevel) {
+        public ApnsConsumerBuilder runLoggingLevel(LoggingLevel runLoggingLevel) {
             this.properties.put("runLoggingLevel", runLoggingLevel);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * Allows for configuring a custom/shared thread pool to use for the
@@ -211,70 +216,71 @@ public interface ApnsEndpoint {
          * pool. The option is a java.util.concurrent.ScheduledExecutorService
          * type.
          */
-        public ApnsConsumer scheduledExecutorService(
+        public ApnsConsumerBuilder scheduledExecutorService(
                 ScheduledExecutorService scheduledExecutorService) {
             this.properties.put("scheduledExecutorService", scheduledExecutorService);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option is a
          * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
          */
-        public ApnsConsumer scheduler(ScheduledPollConsumerScheduler scheduler) {
+        public ApnsConsumerBuilder scheduler(
+                ScheduledPollConsumerScheduler scheduler) {
             this.properties.put("scheduler", scheduler);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
          * java.util.Map<java.lang.String,java.lang.Object> type.
          */
-        public ApnsConsumer schedulerProperties(
+        public ApnsConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
             this.properties.put("schedulerProperties", schedulerProperties);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * Whether the scheduler should be auto started. The option is a boolean
          * type.
          */
-        public ApnsConsumer startScheduler(boolean startScheduler) {
+        public ApnsConsumerBuilder startScheduler(boolean startScheduler) {
             this.properties.put("startScheduler", startScheduler);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * Time unit for initialDelay and delay options. The option is a
          * java.util.concurrent.TimeUnit type.
          */
-        public ApnsConsumer timeUnit(TimeUnit timeUnit) {
+        public ApnsConsumerBuilder timeUnit(TimeUnit timeUnit) {
             this.properties.put("timeUnit", timeUnit);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
         /**
          * Controls if fixed delay or fixed rate is used. See
          * ScheduledExecutorService in JDK for details. The option is a boolean
          * type.
          */
-        public ApnsConsumer useFixedDelay(boolean useFixedDelay) {
+        public ApnsConsumerBuilder useFixedDelay(boolean useFixedDelay) {
             this.properties.put("useFixedDelay", useFixedDelay);
-            return (ApnsConsumer) this;
+            return (ApnsConsumerBuilder) this;
         }
     }
 
-    public static class ApnsProducer
+    public static class ApnsProducerBuilder
             extends
-                ApnsCommon<ApnsProducer>
+                ApnsCommonBuilder<ApnsProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public ApnsProducer(String path) {
+                EndpointProducerBuilder {
+        public ApnsProducerBuilder(String path) {
             super(path);
         }
     }
-    public default ApnsConsumer fromApns(String path) {
-        return new ApnsConsumer(path);
+    public default ApnsConsumerBuilder fromApns(String path) {
+        return new ApnsConsumerBuilder(path);
     }
-    public default ApnsProducer toApns(String path) {
-        return new ApnsProducer(path);
+    public default ApnsProducerBuilder toApns(String path) {
+        return new ApnsProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpointBuilder.java
similarity index 75%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpointBuilder.java
index 5c3af9d..57dff02 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AsteriskEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -27,13 +29,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface AsteriskEndpoint {
+public interface AsteriskEndpointBuilder {
 
 
-    public static class AsteriskCommon<T extends EndpointDefinition>
+    public static class AsteriskCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        AsteriskCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        AsteriskCommonBuilder(String path) {
             super("asterisk", path);
         }
         /**
@@ -85,12 +87,12 @@ public interface AsteriskEndpoint {
         }
     }
 
-    public static class AsteriskConsumer
+    public static class AsteriskConsumerBuilder
             extends
-                AsteriskCommon<AsteriskConsumer>
+                AsteriskCommonBuilder<AsteriskConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public AsteriskConsumer(String path) {
+                EndpointConsumerBuilder {
+        public AsteriskConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -102,9 +104,10 @@ public interface AsteriskEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public AsteriskConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public AsteriskConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (AsteriskConsumer) this;
+            return (AsteriskConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -113,27 +116,28 @@ public interface AsteriskEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public AsteriskConsumer exceptionHandler(
+        public AsteriskConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (AsteriskConsumer) this;
+            return (AsteriskConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public AsteriskConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public AsteriskConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (AsteriskConsumer) this;
+            return (AsteriskConsumerBuilder) this;
         }
     }
 
-    public static class AsteriskProducer
+    public static class AsteriskProducerBuilder
             extends
-                AsteriskCommon<AsteriskProducer>
+                AsteriskCommonBuilder<AsteriskProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public AsteriskProducer(String path) {
+                EndpointProducerBuilder {
+        public AsteriskProducerBuilder(String path) {
             super(path);
         }
         /**
@@ -141,19 +145,19 @@ public interface AsteriskEndpoint {
          * extension state. The option is a
          * org.apache.camel.component.asterisk.AsteriskAction type.
          */
-        public AsteriskProducer action(AsteriskAction action) {
+        public AsteriskProducerBuilder action(AsteriskAction action) {
             this.properties.put("action", action);
-            return (AsteriskProducer) this;
+            return (AsteriskProducerBuilder) this;
         }
     }
 
     public static enum AsteriskAction {
         QUEUE_STATUS, SIP_PEERS, EXTENSION_STATE;
     }
-    public default AsteriskConsumer fromAsterisk(String path) {
-        return new AsteriskConsumer(path);
+    public default AsteriskConsumerBuilder fromAsterisk(String path) {
+        return new AsteriskConsumerBuilder(path);
     }
-    public default AsteriskProducer toAsterisk(String path) {
-        return new AsteriskProducer(path);
+    public default AsteriskProducerBuilder toAsterisk(String path) {
+        return new AsteriskProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpointBuilder.java
similarity index 80%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpointBuilder.java
index eaf1187..2abedf9 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -27,13 +29,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface AtmosEndpoint {
+public interface AtmosEndpointBuilder {
 
 
-    public static class AtmosCommon<T extends EndpointDefinition>
+    public static class AtmosCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        AtmosCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        AtmosCommonBuilder(String path) {
             super("atmos", path);
         }
         /**
@@ -128,12 +130,12 @@ public interface AtmosEndpoint {
         }
     }
 
-    public static class AtmosConsumer
+    public static class AtmosConsumerBuilder
             extends
-                AtmosCommon<AtmosConsumer>
+                AtmosCommonBuilder<AtmosConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public AtmosConsumer(String path) {
+                EndpointConsumerBuilder {
+        public AtmosConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -145,9 +147,10 @@ public interface AtmosEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public AtmosConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public AtmosConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (AtmosConsumer) this;
+            return (AtmosConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -156,26 +159,28 @@ public interface AtmosEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public AtmosConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public AtmosConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (AtmosConsumer) this;
+            return (AtmosConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public AtmosConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public AtmosConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (AtmosConsumer) this;
+            return (AtmosConsumerBuilder) this;
         }
     }
 
-    public static class AtmosProducer
+    public static class AtmosProducerBuilder
             extends
-                AtmosCommon<AtmosProducer>
+                AtmosCommonBuilder<AtmosProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public AtmosProducer(String path) {
+                EndpointProducerBuilder {
+        public AtmosProducerBuilder(String path) {
             super(path);
         }
     }
@@ -183,10 +188,10 @@ public interface AtmosEndpoint {
     public static enum AtmosOperation {
         put, del, search, get, move;
     }
-    public default AtmosConsumer fromAtmos(String path) {
-        return new AtmosConsumer(path);
+    public default AtmosConsumerBuilder fromAtmos(String path) {
+        return new AtmosConsumerBuilder(path);
     }
-    public default AtmosProducer toAtmos(String path) {
-        return new AtmosProducer(path);
+    public default AtmosProducerBuilder toAtmos(String path) {
+        return new AtmosProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpointBuilder.java
similarity index 80%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpointBuilder.java
index abffb77..937e224 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtmosphereWebsocketEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 import org.apache.camel.spi.HeaderFilterStrategy;
 
@@ -28,13 +30,13 @@ import org.apache.camel.spi.HeaderFilterStrategy;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface AtmosphereWebsocketEndpoint {
+public interface AtmosphereWebsocketEndpointBuilder {
 
 
-    public static class AtmosphereWebsocketCommon<T extends EndpointDefinition>
+    public static class AtmosphereWebsocketCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        AtmosphereWebsocketCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        AtmosphereWebsocketCommonBuilder(String path) {
             super("atmosphere-websocket", path);
         }
         /**
@@ -173,21 +175,21 @@ public interface AtmosphereWebsocketEndpoint {
         }
     }
 
-    public static class AtmosphereWebsocketConsumer
+    public static class AtmosphereWebsocketConsumerBuilder
             extends
-                AtmosphereWebsocketCommon<AtmosphereWebsocketConsumer>
+                AtmosphereWebsocketCommonBuilder<AtmosphereWebsocketConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public AtmosphereWebsocketConsumer(String path) {
+                EndpointConsumerBuilder {
+        public AtmosphereWebsocketConsumerBuilder(String path) {
             super(path);
         }
         /**
          * Configure the consumer to work in async mode. The option is a boolean
          * type.
          */
-        public AtmosphereWebsocketConsumer async(boolean async) {
+        public AtmosphereWebsocketConsumerBuilder async(boolean async) {
             this.properties.put("async", async);
-            return (AtmosphereWebsocketConsumer) this;
+            return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
          * Allows for bridging the consumer to the Camel routing Error Handler,
@@ -198,46 +200,46 @@ public interface AtmosphereWebsocketEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public AtmosphereWebsocketConsumer bridgeErrorHandler(
+        public AtmosphereWebsocketConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (AtmosphereWebsocketConsumer) this;
+            return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
          * Used to only allow consuming if the HttpMethod matches, such as
          * GET/POST/PUT etc. Multiple methods can be specified separated by
          * comma. The option is a java.lang.String type.
          */
-        public AtmosphereWebsocketConsumer httpMethodRestrict(
+        public AtmosphereWebsocketConsumerBuilder httpMethodRestrict(
                 String httpMethodRestrict) {
             this.properties.put("httpMethodRestrict", httpMethodRestrict);
-            return (AtmosphereWebsocketConsumer) this;
+            return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
          * Whether or not the consumer should try to find a target consumer by
          * matching the URI prefix if no exact match is found. The option is a
          * boolean type.
          */
-        public AtmosphereWebsocketConsumer matchOnUriPrefix(
+        public AtmosphereWebsocketConsumerBuilder matchOnUriPrefix(
                 boolean matchOnUriPrefix) {
             this.properties.put("matchOnUriPrefix", matchOnUriPrefix);
-            return (AtmosphereWebsocketConsumer) this;
+            return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
          * To use a custom buffer size on the javax.servlet.ServletResponse. The
          * option is a java.lang.Integer type.
          */
-        public AtmosphereWebsocketConsumer responseBufferSize(
+        public AtmosphereWebsocketConsumerBuilder responseBufferSize(
                 Integer responseBufferSize) {
             this.properties.put("responseBufferSize", responseBufferSize);
-            return (AtmosphereWebsocketConsumer) this;
+            return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
          * Name of the servlet to use. The option is a java.lang.String type.
          */
-        public AtmosphereWebsocketConsumer servletName(String servletName) {
+        public AtmosphereWebsocketConsumerBuilder servletName(String servletName) {
             this.properties.put("servletName", servletName);
-            return (AtmosphereWebsocketConsumer) this;
+            return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
          * Whether to automatic bind multipart/form-data as attachments on the
@@ -247,10 +249,10 @@ public interface AtmosphereWebsocketEndpoint {
          * off by default as this may require servlet specific configuration to
          * enable this when using Servlet's. The option is a boolean type.
          */
-        public AtmosphereWebsocketConsumer attachmentMultipartBinding(
+        public AtmosphereWebsocketConsumerBuilder attachmentMultipartBinding(
                 boolean attachmentMultipartBinding) {
             this.properties.put("attachmentMultipartBinding", attachmentMultipartBinding);
-            return (AtmosphereWebsocketConsumer) this;
+            return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
          * Whether to eager check whether the HTTP requests has content if the
@@ -258,10 +260,10 @@ public interface AtmosphereWebsocketEndpoint {
          * case HTTP clients do not send streamed data. The option is a boolean
          * type.
          */
-        public AtmosphereWebsocketConsumer eagerCheckContentAvailable(
+        public AtmosphereWebsocketConsumerBuilder eagerCheckContentAvailable(
                 boolean eagerCheckContentAvailable) {
             this.properties.put("eagerCheckContentAvailable", eagerCheckContentAvailable);
-            return (AtmosphereWebsocketConsumer) this;
+            return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -270,62 +272,65 @@ public interface AtmosphereWebsocketEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public AtmosphereWebsocketConsumer exceptionHandler(
+        public AtmosphereWebsocketConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (AtmosphereWebsocketConsumer) this;
+            return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public AtmosphereWebsocketConsumer exchangePattern(
+        public AtmosphereWebsocketConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (AtmosphereWebsocketConsumer) this;
+            return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
          * Whitelist of accepted filename extensions for accepting uploaded
          * files. Multiple extensions can be separated by comma, such as
          * txt,xml. The option is a java.lang.String type.
          */
-        public AtmosphereWebsocketConsumer fileNameExtWhitelist(
+        public AtmosphereWebsocketConsumerBuilder fileNameExtWhitelist(
                 String fileNameExtWhitelist) {
             this.properties.put("fileNameExtWhitelist", fileNameExtWhitelist);
-            return (AtmosphereWebsocketConsumer) this;
+            return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
          * Specifies whether to enable HTTP OPTIONS for this Servlet consumer.
          * By default OPTIONS is turned off. The option is a boolean type.
          */
-        public AtmosphereWebsocketConsumer optionsEnabled(boolean optionsEnabled) {
+        public AtmosphereWebsocketConsumerBuilder optionsEnabled(
+                boolean optionsEnabled) {
             this.properties.put("optionsEnabled", optionsEnabled);
-            return (AtmosphereWebsocketConsumer) this;
+            return (AtmosphereWebsocketConsumerBuilder) this;
         }
         /**
          * Specifies whether to enable HTTP TRACE for this Servlet consumer. By
          * default TRACE is turned off. The option is a boolean type.
          */
-        public AtmosphereWebsocketConsumer traceEnabled(boolean traceEnabled) {
+        public AtmosphereWebsocketConsumerBuilder traceEnabled(
+                boolean traceEnabled) {
             this.properties.put("traceEnabled", traceEnabled);
-            return (AtmosphereWebsocketConsumer) this;
+            return (AtmosphereWebsocketConsumerBuilder) this;
         }
     }
 
-    public static class AtmosphereWebsocketProducer
+    public static class AtmosphereWebsocketProducerBuilder
             extends
-                AtmosphereWebsocketCommon<AtmosphereWebsocketProducer>
+                AtmosphereWebsocketCommonBuilder<AtmosphereWebsocketProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public AtmosphereWebsocketProducer(String path) {
+                EndpointProducerBuilder {
+        public AtmosphereWebsocketProducerBuilder(String path) {
             super(path);
         }
     }
-    public default AtmosphereWebsocketConsumer fromAtmosphereWebsocket(
+    public default AtmosphereWebsocketConsumerBuilder fromAtmosphereWebsocket(
             String path) {
-        return new AtmosphereWebsocketConsumer(path);
+        return new AtmosphereWebsocketConsumerBuilder(path);
     }
-    public default AtmosphereWebsocketProducer toAtmosphereWebsocket(String path) {
-        return new AtmosphereWebsocketProducer(path);
+    public default AtmosphereWebsocketProducerBuilder toAtmosphereWebsocket(
+            String path) {
+        return new AtmosphereWebsocketProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java
similarity index 80%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java
index 09a1501..4d1af42 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomEndpointBuilder.java
@@ -23,7 +23,9 @@ import java.util.concurrent.TimeUnit;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
 import org.apache.camel.LoggingLevel;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 import org.apache.camel.spi.PollingConsumerPollStrategy;
 import org.apache.camel.spi.ScheduledPollConsumerScheduler;
@@ -34,13 +36,13 @@ import org.apache.camel.spi.ScheduledPollConsumerScheduler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface AtomEndpoint {
+public interface AtomEndpointBuilder {
 
 
-    public static class AtomCommon<T extends EndpointDefinition>
+    public static class AtomCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        AtomCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        AtomCommonBuilder(String path) {
             super("atom", path);
         }
         /**
@@ -138,12 +140,12 @@ public interface AtomEndpoint {
         }
     }
 
-    public static class AtomConsumer
+    public static class AtomConsumerBuilder
             extends
-                AtomCommon<AtomConsumer>
+                AtomCommonBuilder<AtomConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public AtomConsumer(String path) {
+                EndpointConsumerBuilder {
+        public AtomConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -155,19 +157,19 @@ public interface AtomEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public AtomConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public AtomConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option is a
          * boolean type.
          */
-        public AtomConsumer sendEmptyMessageWhenIdle(
+        public AtomConsumerBuilder sendEmptyMessageWhenIdle(
                 boolean sendEmptyMessageWhenIdle) {
             this.properties.put("sendEmptyMessageWhenIdle", sendEmptyMessageWhenIdle);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -176,17 +178,19 @@ public interface AtomEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public AtomConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public AtomConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public AtomConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public AtomConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing
@@ -195,27 +199,28 @@ public interface AtomEndpoint {
          * been created and being routed in Camel. The option is a
          * org.apache.camel.spi.PollingConsumerPollStrategy type.
          */
-        public AtomConsumer pollStrategy(
+        public AtomConsumerBuilder pollStrategy(
                 PollingConsumerPollStrategy pollStrategy) {
             this.properties.put("pollStrategy", pollStrategy);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
          * is a int type.
          */
-        public AtomConsumer backoffErrorThreshold(int backoffErrorThreshold) {
+        public AtomConsumerBuilder backoffErrorThreshold(
+                int backoffErrorThreshold) {
             this.properties.put("backoffErrorThreshold", backoffErrorThreshold);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * The number of subsequent idle polls that should happen before the
          * backoffMultipler should kick-in. The option is a int type.
          */
-        public AtomConsumer backoffIdleThreshold(int backoffIdleThreshold) {
+        public AtomConsumerBuilder backoffIdleThreshold(int backoffIdleThreshold) {
             this.properties.put("backoffIdleThreshold", backoffIdleThreshold);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * To let the scheduled polling consumer backoff if there has been a
@@ -225,45 +230,45 @@ public interface AtomEndpoint {
          * backoffIdleThreshold and/or backoffErrorThreshold must also be
          * configured. The option is a int type.
          */
-        public AtomConsumer backoffMultiplier(int backoffMultiplier) {
+        public AtomConsumerBuilder backoffMultiplier(int backoffMultiplier) {
             this.properties.put("backoffMultiplier", backoffMultiplier);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
          */
-        public AtomConsumer delay(long delay) {
+        public AtomConsumerBuilder delay(long delay) {
             this.properties.put("delay", delay);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
          * option is a boolean type.
          */
-        public AtomConsumer greedy(boolean greedy) {
+        public AtomConsumerBuilder greedy(boolean greedy) {
             this.properties.put("greedy", greedy);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
          */
-        public AtomConsumer initialDelay(long initialDelay) {
+        public AtomConsumerBuilder initialDelay(long initialDelay) {
             this.properties.put("initialDelay", initialDelay);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
          * is a org.apache.camel.LoggingLevel type.
          */
-        public AtomConsumer runLoggingLevel(LoggingLevel runLoggingLevel) {
+        public AtomConsumerBuilder runLoggingLevel(LoggingLevel runLoggingLevel) {
             this.properties.put("runLoggingLevel", runLoggingLevel);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * Allows for configuring a custom/shared thread pool to use for the
@@ -271,57 +276,58 @@ public interface AtomEndpoint {
          * pool. The option is a java.util.concurrent.ScheduledExecutorService
          * type.
          */
-        public AtomConsumer scheduledExecutorService(
+        public AtomConsumerBuilder scheduledExecutorService(
                 ScheduledExecutorService scheduledExecutorService) {
             this.properties.put("scheduledExecutorService", scheduledExecutorService);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option is a
          * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
          */
-        public AtomConsumer scheduler(ScheduledPollConsumerScheduler scheduler) {
+        public AtomConsumerBuilder scheduler(
+                ScheduledPollConsumerScheduler scheduler) {
             this.properties.put("scheduler", scheduler);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
          * java.util.Map<java.lang.String,java.lang.Object> type.
          */
-        public AtomConsumer schedulerProperties(
+        public AtomConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
             this.properties.put("schedulerProperties", schedulerProperties);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * Whether the scheduler should be auto started. The option is a boolean
          * type.
          */
-        public AtomConsumer startScheduler(boolean startScheduler) {
+        public AtomConsumerBuilder startScheduler(boolean startScheduler) {
             this.properties.put("startScheduler", startScheduler);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * Time unit for initialDelay and delay options. The option is a
          * java.util.concurrent.TimeUnit type.
          */
-        public AtomConsumer timeUnit(TimeUnit timeUnit) {
+        public AtomConsumerBuilder timeUnit(TimeUnit timeUnit) {
             this.properties.put("timeUnit", timeUnit);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
         /**
          * Controls if fixed delay or fixed rate is used. See
          * ScheduledExecutorService in JDK for details. The option is a boolean
          * type.
          */
-        public AtomConsumer useFixedDelay(boolean useFixedDelay) {
+        public AtomConsumerBuilder useFixedDelay(boolean useFixedDelay) {
             this.properties.put("useFixedDelay", useFixedDelay);
-            return (AtomConsumer) this;
+            return (AtomConsumerBuilder) this;
         }
     }
-    public default AtomConsumer fromAtom(String path) {
-        return new AtomConsumer(path);
+    public default AtomConsumerBuilder fromAtom(String path) {
+        return new AtomConsumerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java
similarity index 84%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java
index 25ecf03..9dafbc9 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMapEndpointBuilder.java
@@ -21,7 +21,9 @@ import java.util.Map;
 import java.util.Properties;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -30,13 +32,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface AtomixMapEndpoint {
+public interface AtomixMapEndpointBuilder {
 
 
-    public static class AtomixMapCommon<T extends EndpointDefinition>
+    public static class AtomixMapCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        AtomixMapCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        AtomixMapCommonBuilder(String path) {
             super("atomix-map", path);
         }
         /**
@@ -177,12 +179,12 @@ public interface AtomixMapEndpoint {
         }
     }
 
-    public static class AtomixMapConsumer
+    public static class AtomixMapConsumerBuilder
             extends
-                AtomixMapCommon<AtomixMapConsumer>
+                AtomixMapCommonBuilder<AtomixMapConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public AtomixMapConsumer(String path) {
+                EndpointConsumerBuilder {
+        public AtomixMapConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -194,9 +196,10 @@ public interface AtomixMapEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public AtomixMapConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public AtomixMapConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (AtomixMapConsumer) this;
+            return (AtomixMapConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -205,27 +208,28 @@ public interface AtomixMapEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public AtomixMapConsumer exceptionHandler(
+        public AtomixMapConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (AtomixMapConsumer) this;
+            return (AtomixMapConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public AtomixMapConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public AtomixMapConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (AtomixMapConsumer) this;
+            return (AtomixMapConsumerBuilder) this;
         }
     }
 
-    public static class AtomixMapProducer
+    public static class AtomixMapProducerBuilder
             extends
-                AtomixMapCommon<AtomixMapProducer>
+                AtomixMapCommonBuilder<AtomixMapProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public AtomixMapProducer(String path) {
+                EndpointProducerBuilder {
+        public AtomixMapProducerBuilder(String path) {
             super(path);
         }
     }
@@ -233,10 +237,10 @@ public interface AtomixMapEndpoint {
     public static enum ReadConsistency {
         ATOMIC, ATOMIC_LEASE, SEQUENTIAL, LOCAL;
     }
-    public default AtomixMapConsumer fromAtomixMap(String path) {
-        return new AtomixMapConsumer(path);
+    public default AtomixMapConsumerBuilder fromAtomixMap(String path) {
+        return new AtomixMapConsumerBuilder(path);
     }
-    public default AtomixMapProducer toAtomixMap(String path) {
-        return new AtomixMapProducer(path);
+    public default AtomixMapProducerBuilder toAtomixMap(String path) {
+        return new AtomixMapProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java
similarity index 84%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java
index 5e35196..8a849e8 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMessagingEndpointBuilder.java
@@ -21,7 +21,9 @@ import java.util.Map;
 import java.util.Properties;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -30,13 +32,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface AtomixMessagingEndpoint {
+public interface AtomixMessagingEndpointBuilder {
 
 
-    public static class AtomixMessagingCommon<T extends EndpointDefinition>
+    public static class AtomixMessagingCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        AtomixMessagingCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        AtomixMessagingCommonBuilder(String path) {
             super("atomix-messaging", path);
         }
         /**
@@ -184,12 +186,12 @@ public interface AtomixMessagingEndpoint {
         }
     }
 
-    public static class AtomixMessagingConsumer
+    public static class AtomixMessagingConsumerBuilder
             extends
-                AtomixMessagingCommon<AtomixMessagingConsumer>
+                AtomixMessagingCommonBuilder<AtomixMessagingConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public AtomixMessagingConsumer(String path) {
+                EndpointConsumerBuilder {
+        public AtomixMessagingConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -201,10 +203,10 @@ public interface AtomixMessagingEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public AtomixMessagingConsumer bridgeErrorHandler(
+        public AtomixMessagingConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (AtomixMessagingConsumer) this;
+            return (AtomixMessagingConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -213,28 +215,28 @@ public interface AtomixMessagingEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public AtomixMessagingConsumer exceptionHandler(
+        public AtomixMessagingConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (AtomixMessagingConsumer) this;
+            return (AtomixMessagingConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public AtomixMessagingConsumer exchangePattern(
+        public AtomixMessagingConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (AtomixMessagingConsumer) this;
+            return (AtomixMessagingConsumerBuilder) this;
         }
     }
 
-    public static class AtomixMessagingProducer
+    public static class AtomixMessagingProducerBuilder
             extends
-                AtomixMessagingCommon<AtomixMessagingProducer>
+                AtomixMessagingCommonBuilder<AtomixMessagingProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public AtomixMessagingProducer(String path) {
+                EndpointProducerBuilder {
+        public AtomixMessagingProducerBuilder(String path) {
             super(path);
         }
     }
@@ -242,10 +244,11 @@ public interface AtomixMessagingEndpoint {
     public static enum ReadConsistency {
         ATOMIC, ATOMIC_LEASE, SEQUENTIAL, LOCAL;
     }
-    public default AtomixMessagingConsumer fromAtomixMessaging(String path) {
-        return new AtomixMessagingConsumer(path);
+    public default AtomixMessagingConsumerBuilder fromAtomixMessaging(
+            String path) {
+        return new AtomixMessagingConsumerBuilder(path);
     }
-    public default AtomixMessagingProducer toAtomixMessaging(String path) {
-        return new AtomixMessagingProducer(path);
+    public default AtomixMessagingProducerBuilder toAtomixMessaging(String path) {
+        return new AtomixMessagingProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java
similarity index 87%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java
index 86b6961..756ed85 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixMultiMapEndpointBuilder.java
@@ -21,7 +21,9 @@ import java.util.Map;
 import java.util.Properties;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -31,13 +33,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface AtomixMultiMapEndpoint {
+public interface AtomixMultiMapEndpointBuilder {
 
 
-    public static class AtomixMultiMapCommon<T extends EndpointDefinition>
+    public static class AtomixMultiMapCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        AtomixMultiMapCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        AtomixMultiMapCommonBuilder(String path) {
             super("atomix-multimap", path);
         }
         /**
@@ -178,12 +180,12 @@ public interface AtomixMultiMapEndpoint {
         }
     }
 
-    public static class AtomixMultiMapConsumer
+    public static class AtomixMultiMapConsumerBuilder
             extends
-                AtomixMultiMapCommon<AtomixMultiMapConsumer>
+                AtomixMultiMapCommonBuilder<AtomixMultiMapConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public AtomixMultiMapConsumer(String path) {
+                EndpointConsumerBuilder {
+        public AtomixMultiMapConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -195,10 +197,10 @@ public interface AtomixMultiMapEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public AtomixMultiMapConsumer bridgeErrorHandler(
+        public AtomixMultiMapConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (AtomixMultiMapConsumer) this;
+            return (AtomixMultiMapConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -207,26 +209,26 @@ public interface AtomixMultiMapEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public AtomixMultiMapConsumer exceptionHandler(
+        public AtomixMultiMapConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (AtomixMultiMapConsumer) this;
+            return (AtomixMultiMapConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public AtomixMultiMapConsumer exchangePattern(
+        public AtomixMultiMapConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (AtomixMultiMapConsumer) this;
+            return (AtomixMultiMapConsumerBuilder) this;
         }
     }
 
     public static enum ReadConsistency {
         ATOMIC, ATOMIC_LEASE, SEQUENTIAL, LOCAL;
     }
-    public default AtomixMultiMapConsumer fromAtomixMultiMap(String path) {
-        return new AtomixMultiMapConsumer(path);
+    public default AtomixMultiMapConsumerBuilder fromAtomixMultiMap(String path) {
+        return new AtomixMultiMapConsumerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java
similarity index 84%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java
index 9618216..998bcb8 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixQueueEndpointBuilder.java
@@ -21,7 +21,9 @@ import java.util.Map;
 import java.util.Properties;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -30,13 +32,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface AtomixQueueEndpoint {
+public interface AtomixQueueEndpointBuilder {
 
 
-    public static class AtomixQueueCommon<T extends EndpointDefinition>
+    public static class AtomixQueueCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        AtomixQueueCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        AtomixQueueCommonBuilder(String path) {
             super("atomix-queue", path);
         }
         /**
@@ -163,12 +165,12 @@ public interface AtomixQueueEndpoint {
         }
     }
 
-    public static class AtomixQueueConsumer
+    public static class AtomixQueueConsumerBuilder
             extends
-                AtomixQueueCommon<AtomixQueueConsumer>
+                AtomixQueueCommonBuilder<AtomixQueueConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public AtomixQueueConsumer(String path) {
+                EndpointConsumerBuilder {
+        public AtomixQueueConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -180,9 +182,10 @@ public interface AtomixQueueEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public AtomixQueueConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public AtomixQueueConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (AtomixQueueConsumer) this;
+            return (AtomixQueueConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -191,28 +194,28 @@ public interface AtomixQueueEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public AtomixQueueConsumer exceptionHandler(
+        public AtomixQueueConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (AtomixQueueConsumer) this;
+            return (AtomixQueueConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public AtomixQueueConsumer exchangePattern(
+        public AtomixQueueConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (AtomixQueueConsumer) this;
+            return (AtomixQueueConsumerBuilder) this;
         }
     }
 
-    public static class AtomixQueueProducer
+    public static class AtomixQueueProducerBuilder
             extends
-                AtomixQueueCommon<AtomixQueueProducer>
+                AtomixQueueCommonBuilder<AtomixQueueProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public AtomixQueueProducer(String path) {
+                EndpointProducerBuilder {
+        public AtomixQueueProducerBuilder(String path) {
             super(path);
         }
     }
@@ -220,10 +223,10 @@ public interface AtomixQueueEndpoint {
     public static enum ReadConsistency {
         ATOMIC, ATOMIC_LEASE, SEQUENTIAL, LOCAL;
     }
-    public default AtomixQueueConsumer fromAtomixQueue(String path) {
-        return new AtomixQueueConsumer(path);
+    public default AtomixQueueConsumerBuilder fromAtomixQueue(String path) {
+        return new AtomixQueueConsumerBuilder(path);
     }
-    public default AtomixQueueProducer toAtomixQueue(String path) {
-        return new AtomixQueueProducer(path);
+    public default AtomixQueueProducerBuilder toAtomixQueue(String path) {
+        return new AtomixQueueProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java
similarity index 84%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java
index 15c3c33..ad68432 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixSetEndpointBuilder.java
@@ -21,7 +21,9 @@ import java.util.Map;
 import java.util.Properties;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -30,13 +32,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface AtomixSetEndpoint {
+public interface AtomixSetEndpointBuilder {
 
 
-    public static class AtomixSetCommon<T extends EndpointDefinition>
+    public static class AtomixSetCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        AtomixSetCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        AtomixSetCommonBuilder(String path) {
             super("atomix-set", path);
         }
         /**
@@ -169,12 +171,12 @@ public interface AtomixSetEndpoint {
         }
     }
 
-    public static class AtomixSetConsumer
+    public static class AtomixSetConsumerBuilder
             extends
-                AtomixSetCommon<AtomixSetConsumer>
+                AtomixSetCommonBuilder<AtomixSetConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public AtomixSetConsumer(String path) {
+                EndpointConsumerBuilder {
+        public AtomixSetConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -186,9 +188,10 @@ public interface AtomixSetEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public AtomixSetConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public AtomixSetConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (AtomixSetConsumer) this;
+            return (AtomixSetConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -197,27 +200,28 @@ public interface AtomixSetEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public AtomixSetConsumer exceptionHandler(
+        public AtomixSetConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (AtomixSetConsumer) this;
+            return (AtomixSetConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public AtomixSetConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public AtomixSetConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (AtomixSetConsumer) this;
+            return (AtomixSetConsumerBuilder) this;
         }
     }
 
-    public static class AtomixSetProducer
+    public static class AtomixSetProducerBuilder
             extends
-                AtomixSetCommon<AtomixSetProducer>
+                AtomixSetCommonBuilder<AtomixSetProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public AtomixSetProducer(String path) {
+                EndpointProducerBuilder {
+        public AtomixSetProducerBuilder(String path) {
             super(path);
         }
     }
@@ -225,10 +229,10 @@ public interface AtomixSetEndpoint {
     public static enum ReadConsistency {
         ATOMIC, ATOMIC_LEASE, SEQUENTIAL, LOCAL;
     }
-    public default AtomixSetConsumer fromAtomixSet(String path) {
-        return new AtomixSetConsumer(path);
+    public default AtomixSetConsumerBuilder fromAtomixSet(String path) {
+        return new AtomixSetConsumerBuilder(path);
     }
-    public default AtomixSetProducer toAtomixSet(String path) {
-        return new AtomixSetProducer(path);
+    public default AtomixSetProducerBuilder toAtomixSet(String path) {
+        return new AtomixSetProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java
similarity index 84%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java
index 952b80b..60e0fda 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AtomixValueEndpointBuilder.java
@@ -21,7 +21,9 @@ import java.util.Map;
 import java.util.Properties;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -30,13 +32,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface AtomixValueEndpoint {
+public interface AtomixValueEndpointBuilder {
 
 
-    public static class AtomixValueCommon<T extends EndpointDefinition>
+    public static class AtomixValueCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        AtomixValueCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        AtomixValueCommonBuilder(String path) {
             super("atomix-value", path);
         }
         /**
@@ -170,12 +172,12 @@ public interface AtomixValueEndpoint {
         }
     }
 
-    public static class AtomixValueConsumer
+    public static class AtomixValueConsumerBuilder
             extends
-                AtomixValueCommon<AtomixValueConsumer>
+                AtomixValueCommonBuilder<AtomixValueConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public AtomixValueConsumer(String path) {
+                EndpointConsumerBuilder {
+        public AtomixValueConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -187,9 +189,10 @@ public interface AtomixValueEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public AtomixValueConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public AtomixValueConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (AtomixValueConsumer) this;
+            return (AtomixValueConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -198,28 +201,28 @@ public interface AtomixValueEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public AtomixValueConsumer exceptionHandler(
+        public AtomixValueConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (AtomixValueConsumer) this;
+            return (AtomixValueConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public AtomixValueConsumer exchangePattern(
+        public AtomixValueConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (AtomixValueConsumer) this;
+            return (AtomixValueConsumerBuilder) this;
         }
     }
 
-    public static class AtomixValueProducer
+    public static class AtomixValueProducerBuilder
             extends
-                AtomixValueCommon<AtomixValueProducer>
+                AtomixValueCommonBuilder<AtomixValueProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public AtomixValueProducer(String path) {
+                EndpointProducerBuilder {
+        public AtomixValueProducerBuilder(String path) {
             super(path);
         }
     }
@@ -227,10 +230,10 @@ public interface AtomixValueEndpoint {
     public static enum ReadConsistency {
         ATOMIC, ATOMIC_LEASE, SEQUENTIAL, LOCAL;
     }
-    public default AtomixValueConsumer fromAtomixValue(String path) {
-        return new AtomixValueConsumer(path);
+    public default AtomixValueConsumerBuilder fromAtomixValue(String path) {
+        return new AtomixValueConsumerBuilder(path);
     }
-    public default AtomixValueProducer toAtomixValue(String path) {
-        return new AtomixValueProducer(path);
+    public default AtomixValueProducerBuilder toAtomixValue(String path) {
+        return new AtomixValueProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpointBuilder.java
similarity index 82%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpointBuilder.java
index e2cfcc8..bc77d77 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/AvroEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -27,13 +29,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface AvroEndpoint {
+public interface AvroEndpointBuilder {
 
 
-    public static class AvroCommon<T extends EndpointDefinition>
+    public static class AvroCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        AvroCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        AvroCommonBuilder(String path) {
             super("avro", path);
         }
         /**
@@ -134,12 +136,12 @@ public interface AvroEndpoint {
         }
     }
 
-    public static class AvroConsumer
+    public static class AvroConsumerBuilder
             extends
-                AvroCommon<AvroConsumer>
+                AvroCommonBuilder<AvroConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public AvroConsumer(String path) {
+                EndpointConsumerBuilder {
+        public AvroConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -151,9 +153,9 @@ public interface AvroEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public AvroConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public AvroConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (AvroConsumer) this;
+            return (AvroConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -162,26 +164,28 @@ public interface AvroEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public AvroConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public AvroConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (AvroConsumer) this;
+            return (AvroConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public AvroConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public AvroConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (AvroConsumer) this;
+            return (AvroConsumerBuilder) this;
         }
     }
 
-    public static class AvroProducer
+    public static class AvroProducerBuilder
             extends
-                AvroCommon<AvroProducer>
+                AvroCommonBuilder<AvroProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public AvroProducer(String path) {
+                EndpointProducerBuilder {
+        public AvroProducerBuilder(String path) {
             super(path);
         }
     }
@@ -189,10 +193,10 @@ public interface AvroEndpoint {
     public static enum AvroTransport {
         http, netty;
     }
-    public default AvroConsumer fromAvro(String path) {
-        return new AvroConsumer(path);
+    public default AvroConsumerBuilder fromAvro(String path) {
+        return new AvroConsumerBuilder(path);
     }
-    public default AvroProducer toAvro(String path) {
-        return new AvroProducer(path);
+    public default AvroProducerBuilder toAvro(String path) {
+        return new AvroProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java
similarity index 83%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java
index 441196f..d356bec 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import java.util.Map;
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * The bean component is for invoking Java beans from Camel.
@@ -26,13 +28,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface BeanEndpoint {
+public interface BeanEndpointBuilder {
 
 
-    public static class BeanCommon<T extends EndpointDefinition>
+    public static class BeanCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        BeanCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        BeanCommonBuilder(String path) {
             super("bean", path);
         }
         /**
@@ -88,16 +90,16 @@ public interface BeanEndpoint {
         }
     }
 
-    public static class BeanProducer
+    public static class BeanProducerBuilder
             extends
-                BeanCommon<BeanProducer>
+                BeanCommonBuilder<BeanProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public BeanProducer(String path) {
+                EndpointProducerBuilder {
+        public BeanProducerBuilder(String path) {
             super(path);
         }
     }
-    public default BeanProducer toBean(String path) {
-        return new BeanProducer(path);
+    public default BeanProducerBuilder toBean(String path) {
+        return new BeanProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpointBuilder.java
similarity index 84%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpointBuilder.java
index 4b64f57..bbecb82 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanValidatorEndpointBuilder.java
@@ -17,7 +17,9 @@
 package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * The Validator component performs bean validation of the message body using
@@ -26,13 +28,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface BeanValidatorEndpoint {
+public interface BeanValidatorEndpointBuilder {
 
 
-    public static class BeanValidatorCommon<T extends EndpointDefinition>
+    public static class BeanValidatorCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        BeanValidatorCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        BeanValidatorCommonBuilder(String path) {
             super("bean-validator", path);
         }
         /**
@@ -103,16 +105,16 @@ public interface BeanValidatorEndpoint {
         }
     }
 
-    public static class BeanValidatorProducer
+    public static class BeanValidatorProducerBuilder
             extends
-                BeanValidatorCommon<BeanValidatorProducer>
+                BeanValidatorCommonBuilder<BeanValidatorProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public BeanValidatorProducer(String path) {
+                EndpointProducerBuilder {
+        public BeanValidatorProducerBuilder(String path) {
             super(path);
         }
     }
-    public default BeanValidatorProducer toBeanValidator(String path) {
-        return new BeanValidatorProducer(path);
+    public default BeanValidatorProducerBuilder toBeanValidator(String path) {
+        return new BeanValidatorProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java
similarity index 75%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java
index 71e7d2e..bd1044b 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BeanstalkEndpointBuilder.java
@@ -22,7 +22,9 @@ import java.util.concurrent.TimeUnit;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
 import org.apache.camel.LoggingLevel;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 import org.apache.camel.spi.PollingConsumerPollStrategy;
 import org.apache.camel.spi.ScheduledPollConsumerScheduler;
@@ -34,13 +36,13 @@ import org.apache.camel.spi.ScheduledPollConsumerScheduler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface BeanstalkEndpoint {
+public interface BeanstalkEndpointBuilder {
 
 
-    public static class BeanstalkCommon<T extends EndpointDefinition>
+    public static class BeanstalkCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        BeanstalkCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        BeanstalkCommonBuilder(String path) {
             super("beanstalk", path);
         }
         /**
@@ -109,21 +111,21 @@ public interface BeanstalkEndpoint {
         }
     }
 
-    public static class BeanstalkConsumer
+    public static class BeanstalkConsumerBuilder
             extends
-                BeanstalkCommon<BeanstalkConsumer>
+                BeanstalkCommonBuilder<BeanstalkConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public BeanstalkConsumer(String path) {
+                EndpointConsumerBuilder {
+        public BeanstalkConsumerBuilder(String path) {
             super(path);
         }
         /**
          * Whether to wait for job to complete before ack the job from
          * beanstalk. The option is a boolean type.
          */
-        public BeanstalkConsumer awaitJob(boolean awaitJob) {
+        public BeanstalkConsumerBuilder awaitJob(boolean awaitJob) {
             this.properties.put("awaitJob", awaitJob);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * Allows for bridging the consumer to the Camel routing Error Handler,
@@ -134,34 +136,35 @@ public interface BeanstalkEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public BeanstalkConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public BeanstalkConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * Command to use when processing failed. The option is a
          * org.apache.camel.component.beanstalk.BeanstalkCommand type.
          */
-        public BeanstalkConsumer onFailure(BeanstalkCommand onFailure) {
+        public BeanstalkConsumerBuilder onFailure(BeanstalkCommand onFailure) {
             this.properties.put("onFailure", onFailure);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option is a
          * boolean type.
          */
-        public BeanstalkConsumer sendEmptyMessageWhenIdle(
+        public BeanstalkConsumerBuilder sendEmptyMessageWhenIdle(
                 boolean sendEmptyMessageWhenIdle) {
             this.properties.put("sendEmptyMessageWhenIdle", sendEmptyMessageWhenIdle);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * Whether to use blockIO. The option is a boolean type.
          */
-        public BeanstalkConsumer useBlockIO(boolean useBlockIO) {
+        public BeanstalkConsumerBuilder useBlockIO(boolean useBlockIO) {
             this.properties.put("useBlockIO", useBlockIO);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -170,18 +173,19 @@ public interface BeanstalkEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public BeanstalkConsumer exceptionHandler(
+        public BeanstalkConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public BeanstalkConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public BeanstalkConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing
@@ -190,27 +194,29 @@ public interface BeanstalkEndpoint {
          * been created and being routed in Camel. The option is a
          * org.apache.camel.spi.PollingConsumerPollStrategy type.
          */
-        public BeanstalkConsumer pollStrategy(
+        public BeanstalkConsumerBuilder pollStrategy(
                 PollingConsumerPollStrategy pollStrategy) {
             this.properties.put("pollStrategy", pollStrategy);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
          * is a int type.
          */
-        public BeanstalkConsumer backoffErrorThreshold(int backoffErrorThreshold) {
+        public BeanstalkConsumerBuilder backoffErrorThreshold(
+                int backoffErrorThreshold) {
             this.properties.put("backoffErrorThreshold", backoffErrorThreshold);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * The number of subsequent idle polls that should happen before the
          * backoffMultipler should kick-in. The option is a int type.
          */
-        public BeanstalkConsumer backoffIdleThreshold(int backoffIdleThreshold) {
+        public BeanstalkConsumerBuilder backoffIdleThreshold(
+                int backoffIdleThreshold) {
             this.properties.put("backoffIdleThreshold", backoffIdleThreshold);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * To let the scheduled polling consumer backoff if there has been a
@@ -220,45 +226,46 @@ public interface BeanstalkEndpoint {
          * backoffIdleThreshold and/or backoffErrorThreshold must also be
          * configured. The option is a int type.
          */
-        public BeanstalkConsumer backoffMultiplier(int backoffMultiplier) {
+        public BeanstalkConsumerBuilder backoffMultiplier(int backoffMultiplier) {
             this.properties.put("backoffMultiplier", backoffMultiplier);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
          */
-        public BeanstalkConsumer delay(long delay) {
+        public BeanstalkConsumerBuilder delay(long delay) {
             this.properties.put("delay", delay);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
          * option is a boolean type.
          */
-        public BeanstalkConsumer greedy(boolean greedy) {
+        public BeanstalkConsumerBuilder greedy(boolean greedy) {
             this.properties.put("greedy", greedy);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
          */
-        public BeanstalkConsumer initialDelay(long initialDelay) {
+        public BeanstalkConsumerBuilder initialDelay(long initialDelay) {
             this.properties.put("initialDelay", initialDelay);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
          * is a org.apache.camel.LoggingLevel type.
          */
-        public BeanstalkConsumer runLoggingLevel(LoggingLevel runLoggingLevel) {
+        public BeanstalkConsumerBuilder runLoggingLevel(
+                LoggingLevel runLoggingLevel) {
             this.properties.put("runLoggingLevel", runLoggingLevel);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * Allows for configuring a custom/shared thread pool to use for the
@@ -266,64 +273,64 @@ public interface BeanstalkEndpoint {
          * pool. The option is a java.util.concurrent.ScheduledExecutorService
          * type.
          */
-        public BeanstalkConsumer scheduledExecutorService(
+        public BeanstalkConsumerBuilder scheduledExecutorService(
                 ScheduledExecutorService scheduledExecutorService) {
             this.properties.put("scheduledExecutorService", scheduledExecutorService);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option is a
          * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
          */
-        public BeanstalkConsumer scheduler(
+        public BeanstalkConsumerBuilder scheduler(
                 ScheduledPollConsumerScheduler scheduler) {
             this.properties.put("scheduler", scheduler);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
          * java.util.Map<java.lang.String,java.lang.Object> type.
          */
-        public BeanstalkConsumer schedulerProperties(
+        public BeanstalkConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
             this.properties.put("schedulerProperties", schedulerProperties);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * Whether the scheduler should be auto started. The option is a boolean
          * type.
          */
-        public BeanstalkConsumer startScheduler(boolean startScheduler) {
+        public BeanstalkConsumerBuilder startScheduler(boolean startScheduler) {
             this.properties.put("startScheduler", startScheduler);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * Time unit for initialDelay and delay options. The option is a
          * java.util.concurrent.TimeUnit type.
          */
-        public BeanstalkConsumer timeUnit(TimeUnit timeUnit) {
+        public BeanstalkConsumerBuilder timeUnit(TimeUnit timeUnit) {
             this.properties.put("timeUnit", timeUnit);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
         /**
          * Controls if fixed delay or fixed rate is used. See
          * ScheduledExecutorService in JDK for details. The option is a boolean
          * type.
          */
-        public BeanstalkConsumer useFixedDelay(boolean useFixedDelay) {
+        public BeanstalkConsumerBuilder useFixedDelay(boolean useFixedDelay) {
             this.properties.put("useFixedDelay", useFixedDelay);
-            return (BeanstalkConsumer) this;
+            return (BeanstalkConsumerBuilder) this;
         }
     }
 
-    public static class BeanstalkProducer
+    public static class BeanstalkProducerBuilder
             extends
-                BeanstalkCommon<BeanstalkProducer>
+                BeanstalkCommonBuilder<BeanstalkProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public BeanstalkProducer(String path) {
+                EndpointProducerBuilder {
+        public BeanstalkProducerBuilder(String path) {
             super(path);
         }
     }
@@ -331,10 +338,10 @@ public interface BeanstalkEndpoint {
     public static enum BeanstalkCommand {
         bury, release, put, touch, delete, kick;
     }
-    public default BeanstalkConsumer fromBeanstalk(String path) {
-        return new BeanstalkConsumer(path);
+    public default BeanstalkConsumerBuilder fromBeanstalk(String path) {
+        return new BeanstalkConsumerBuilder(path);
     }
-    public default BeanstalkProducer toBeanstalk(String path) {
-        return new BeanstalkProducer(path);
+    public default BeanstalkProducerBuilder toBeanstalk(String path) {
+        return new BeanstalkProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java
similarity index 78%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java
index f2c94ef..172bc6c 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BlobServiceEndpointBuilder.java
@@ -19,7 +19,9 @@ package org.apache.camel.model.endpoint;
 import java.util.Map;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -29,13 +31,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface BlobServiceEndpoint {
+public interface BlobServiceEndpointBuilder {
 
 
-    public static class BlobServiceCommon<T extends EndpointDefinition>
+    public static class BlobServiceCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        BlobServiceCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        BlobServiceCommonBuilder(String path) {
             super("azure-blob", path);
         }
         /**
@@ -138,12 +140,12 @@ public interface BlobServiceEndpoint {
         }
     }
 
-    public static class BlobServiceConsumer
+    public static class BlobServiceConsumerBuilder
             extends
-                BlobServiceCommon<BlobServiceConsumer>
+                BlobServiceCommonBuilder<BlobServiceConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public BlobServiceConsumer(String path) {
+                EndpointConsumerBuilder {
+        public BlobServiceConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -155,9 +157,10 @@ public interface BlobServiceEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public BlobServiceConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public BlobServiceConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (BlobServiceConsumer) this;
+            return (BlobServiceConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -166,78 +169,80 @@ public interface BlobServiceEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public BlobServiceConsumer exceptionHandler(
+        public BlobServiceConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (BlobServiceConsumer) this;
+            return (BlobServiceConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public BlobServiceConsumer exchangePattern(
+        public BlobServiceConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (BlobServiceConsumer) this;
+            return (BlobServiceConsumerBuilder) this;
         }
     }
 
-    public static class BlobServiceProducer
+    public static class BlobServiceProducerBuilder
             extends
-                BlobServiceCommon<BlobServiceProducer>
+                BlobServiceCommonBuilder<BlobServiceProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public BlobServiceProducer(String path) {
+                EndpointProducerBuilder {
+        public BlobServiceProducerBuilder(String path) {
             super(path);
         }
         /**
          * Set the blob meta-data. The option is a
          * java.util.Map<java.lang.String,java.lang.String> type.
          */
-        public BlobServiceProducer blobMetadata(Map<String, String> blobMetadata) {
+        public BlobServiceProducerBuilder blobMetadata(
+                Map<String, String> blobMetadata) {
             this.properties.put("blobMetadata", blobMetadata);
-            return (BlobServiceProducer) this;
+            return (BlobServiceProducerBuilder) this;
         }
         /**
          * Set a prefix which can be used for listing the blobs. The option is a
          * java.lang.String type.
          */
-        public BlobServiceProducer blobPrefix(String blobPrefix) {
+        public BlobServiceProducerBuilder blobPrefix(String blobPrefix) {
             this.properties.put("blobPrefix", blobPrefix);
-            return (BlobServiceProducer) this;
+            return (BlobServiceProducerBuilder) this;
         }
         /**
          * Close the stream after write or keep it open, default is true. The
          * option is a boolean type.
          */
-        public BlobServiceProducer closeStreamAfterWrite(
+        public BlobServiceProducerBuilder closeStreamAfterWrite(
                 boolean closeStreamAfterWrite) {
             this.properties.put("closeStreamAfterWrite", closeStreamAfterWrite);
-            return (BlobServiceProducer) this;
+            return (BlobServiceProducerBuilder) this;
         }
         /**
          * Blob service operation hint to the producer. The option is a
          * org.apache.camel.component.azure.blob.BlobServiceOperations type.
          */
-        public BlobServiceProducer operation(BlobServiceOperations operation) {
+        public BlobServiceProducerBuilder operation(
+                BlobServiceOperations operation) {
             this.properties.put("operation", operation);
-            return (BlobServiceProducer) this;
+            return (BlobServiceProducerBuilder) this;
         }
         /**
          * Set the size of the buffer for writing block and page blocks. The
          * option is a int type.
          */
-        public BlobServiceProducer streamWriteSize(int streamWriteSize) {
+        public BlobServiceProducerBuilder streamWriteSize(int streamWriteSize) {
             this.properties.put("streamWriteSize", streamWriteSize);
-            return (BlobServiceProducer) this;
+            return (BlobServiceProducerBuilder) this;
         }
         /**
          * Specify if the flat or hierarchical blob listing should be used. The
          * option is a boolean type.
          */
-        public BlobServiceProducer useFlatListing(boolean useFlatListing) {
+        public BlobServiceProducerBuilder useFlatListing(boolean useFlatListing) {
             this.properties.put("useFlatListing", useFlatListing);
-            return (BlobServiceProducer) this;
+            return (BlobServiceProducerBuilder) this;
         }
     }
 
@@ -248,10 +253,10 @@ public interface BlobServiceEndpoint {
     public static enum BlobServiceOperations {
         getBlob, deleteBlob, listBlobs, updateBlockBlob, uploadBlobBlocks, commitBlobBlockList, getBlobBlockList, createAppendBlob, updateAppendBlob, createPageBlob, updatePageBlob, resizePageBlob, clearPageBlob, getPageBlobRanges;
     }
-    public default BlobServiceConsumer fromBlobService(String path) {
-        return new BlobServiceConsumer(path);
+    public default BlobServiceConsumerBuilder fromBlobService(String path) {
+        return new BlobServiceConsumerBuilder(path);
     }
-    public default BlobServiceProducer toBlobService(String path) {
-        return new BlobServiceProducer(path);
+    public default BlobServiceProducerBuilder toBlobService(String path) {
+        return new BlobServiceProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpointBuilder.java
similarity index 81%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpointBuilder.java
index 4395deb..6fed5d1 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BonitaEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -27,13 +29,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface BonitaEndpoint {
+public interface BonitaEndpointBuilder {
 
 
-    public static class BonitaCommon<T extends EndpointDefinition>
+    public static class BonitaCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        BonitaCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        BonitaCommonBuilder(String path) {
             super("bonita", path);
         }
         /**
@@ -104,12 +106,12 @@ public interface BonitaEndpoint {
         }
     }
 
-    public static class BonitaConsumer
+    public static class BonitaConsumerBuilder
             extends
-                BonitaCommon<BonitaConsumer>
+                BonitaCommonBuilder<BonitaConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public BonitaConsumer(String path) {
+                EndpointConsumerBuilder {
+        public BonitaConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -121,9 +123,10 @@ public interface BonitaEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public BonitaConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public BonitaConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (BonitaConsumer) this;
+            return (BonitaConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -132,24 +135,26 @@ public interface BonitaEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public BonitaConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public BonitaConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (BonitaConsumer) this;
+            return (BonitaConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public BonitaConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public BonitaConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (BonitaConsumer) this;
+            return (BonitaConsumerBuilder) this;
         }
     }
 
     public static enum BonitaOperation {
         startCase;
     }
-    public default BonitaConsumer fromBonita(String path) {
-        return new BonitaConsumer(path);
+    public default BonitaConsumerBuilder fromBonita(String path) {
+        return new BonitaConsumerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java
similarity index 87%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java
index e576acc..ca7a180 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BoxEndpointBuilder.java
@@ -19,7 +19,9 @@ package org.apache.camel.model.endpoint;
 import java.util.Map;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -29,13 +31,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface BoxEndpoint {
+public interface BoxEndpointBuilder {
 
 
-    public static class BoxCommon<T extends EndpointDefinition>
+    public static class BoxCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        BoxCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        BoxCommonBuilder(String path) {
             super("box", path);
         }
         /**
@@ -203,12 +205,12 @@ public interface BoxEndpoint {
         }
     }
 
-    public static class BoxConsumer
+    public static class BoxConsumerBuilder
             extends
-                BoxCommon<BoxConsumer>
+                BoxCommonBuilder<BoxConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public BoxConsumer(String path) {
+                EndpointConsumerBuilder {
+        public BoxConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -220,9 +222,9 @@ public interface BoxEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public BoxConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public BoxConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (BoxConsumer) this;
+            return (BoxConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -231,26 +233,28 @@ public interface BoxEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public BoxConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public BoxConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (BoxConsumer) this;
+            return (BoxConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public BoxConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public BoxConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (BoxConsumer) this;
+            return (BoxConsumerBuilder) this;
         }
     }
 
-    public static class BoxProducer
+    public static class BoxProducerBuilder
             extends
-                BoxCommon<BoxProducer>
+                BoxCommonBuilder<BoxProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public BoxProducer(String path) {
+                EndpointProducerBuilder {
+        public BoxProducerBuilder(String path) {
             super(path);
         }
     }
@@ -262,10 +266,10 @@ public interface BoxEndpoint {
     public static enum EncryptionAlgorithm {
         RSA_SHA_256, RSA_SHA_384, RSA_SHA_512;
     }
-    public default BoxConsumer fromBox(String path) {
-        return new BoxConsumer(path);
+    public default BoxConsumerBuilder fromBox(String path) {
+        return new BoxConsumerBuilder(path);
     }
-    public default BoxProducer toBox(String path) {
-        return new BoxProducer(path);
+    public default BoxProducerBuilder toBox(String path) {
+        return new BoxProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BraintreeEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BraintreeEndpointBuilder.java
similarity index 83%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/BraintreeEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/BraintreeEndpointBuilder.java
index db701df..20bd91a 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BraintreeEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BraintreeEndpointBuilder.java
@@ -19,7 +19,9 @@ package org.apache.camel.model.endpoint;
 import java.util.logging.Level;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -29,13 +31,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface BraintreeEndpoint {
+public interface BraintreeEndpointBuilder {
 
 
-    public static class BraintreeCommon<T extends EndpointDefinition>
+    public static class BraintreeCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        BraintreeCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        BraintreeCommonBuilder(String path) {
             super("braintree", path);
         }
         /**
@@ -154,12 +156,12 @@ public interface BraintreeEndpoint {
         }
     }
 
-    public static class BraintreeConsumer
+    public static class BraintreeConsumerBuilder
             extends
-                BraintreeCommon<BraintreeConsumer>
+                BraintreeCommonBuilder<BraintreeConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public BraintreeConsumer(String path) {
+                EndpointConsumerBuilder {
+        public BraintreeConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -171,9 +173,10 @@ public interface BraintreeEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public BraintreeConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public BraintreeConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (BraintreeConsumer) this;
+            return (BraintreeConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -182,27 +185,28 @@ public interface BraintreeEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public BraintreeConsumer exceptionHandler(
+        public BraintreeConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (BraintreeConsumer) this;
+            return (BraintreeConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public BraintreeConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public BraintreeConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (BraintreeConsumer) this;
+            return (BraintreeConsumerBuilder) this;
         }
     }
 
-    public static class BraintreeProducer
+    public static class BraintreeProducerBuilder
             extends
-                BraintreeCommon<BraintreeProducer>
+                BraintreeCommonBuilder<BraintreeProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public BraintreeProducer(String path) {
+                EndpointProducerBuilder {
+        public BraintreeProducerBuilder(String path) {
             super(path);
         }
     }
@@ -210,10 +214,10 @@ public interface BraintreeEndpoint {
     public static enum BraintreeApiName {
         ADDON, ADDRESS, CLIENTTOKEN, CREDITCARDVERIFICATION, CUSTOMER, DISCOUNT, DISPUTE, DOCUMENTUPLOAD, MERCHANTACCOUNT, PAYMENTMETHOD, PAYMENTMETHODNONCE, PLAN, REPORT, SETTLEMENTBATCHSUMMARY, SUBSCRIPTION, TRANSACTION, WEBHOOKNOTIFICATION;
     }
-    public default BraintreeConsumer fromBraintree(String path) {
-        return new BraintreeConsumer(path);
+    public default BraintreeConsumerBuilder fromBraintree(String path) {
+        return new BraintreeConsumerBuilder(path);
     }
-    public default BraintreeProducer toBraintree(String path) {
-        return new BraintreeProducer(path);
+    public default BraintreeProducerBuilder toBraintree(String path) {
+        return new BraintreeProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BrowseEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BrowseEndpointBuilder.java
similarity index 72%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/BrowseEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/BrowseEndpointBuilder.java
index f23b7e6..eec3049 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BrowseEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/BrowseEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -28,13 +30,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface BrowseEndpoint {
+public interface BrowseEndpointBuilder {
 
 
-    public static class BrowseCommon<T extends EndpointDefinition>
+    public static class BrowseCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        BrowseCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        BrowseCommonBuilder(String path) {
             super("browse", path);
         }
         /**
@@ -65,12 +67,12 @@ public interface BrowseEndpoint {
         }
     }
 
-    public static class BrowseConsumer
+    public static class BrowseConsumerBuilder
             extends
-                BrowseCommon<BrowseConsumer>
+                BrowseCommonBuilder<BrowseConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public BrowseConsumer(String path) {
+                EndpointConsumerBuilder {
+        public BrowseConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -82,9 +84,10 @@ public interface BrowseEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public BrowseConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public BrowseConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (BrowseConsumer) this;
+            return (BrowseConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -93,33 +96,35 @@ public interface BrowseEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public BrowseConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public BrowseConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (BrowseConsumer) this;
+            return (BrowseConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public BrowseConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public BrowseConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (BrowseConsumer) this;
+            return (BrowseConsumerBuilder) this;
         }
     }
 
-    public static class BrowseProducer
+    public static class BrowseProducerBuilder
             extends
-                BrowseCommon<BrowseProducer>
+                BrowseCommonBuilder<BrowseProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public BrowseProducer(String path) {
+                EndpointProducerBuilder {
+        public BrowseProducerBuilder(String path) {
             super(path);
         }
     }
-    public default BrowseConsumer fromBrowse(String path) {
-        return new BrowseConsumer(path);
+    public default BrowseConsumerBuilder fromBrowse(String path) {
+        return new BrowseConsumerBuilder(path);
     }
-    public default BrowseProducer toBrowse(String path) {
-        return new BrowseProducer(path);
+    public default BrowseProducerBuilder toBrowse(String path) {
+        return new BrowseProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMEndpointBuilder.java
similarity index 85%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMEndpointBuilder.java
index d3ca588..280aba5 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMEndpointBuilder.java
@@ -17,7 +17,9 @@
 package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * The cm-sms component allows to integrate with CM SMS Gateway.
@@ -25,13 +27,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CMEndpoint {
+public interface CMEndpointBuilder {
 
 
-    public static class CMCommon<T extends EndpointDefinition>
+    public static class CMCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CMCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CMCommonBuilder(String path) {
             super("cm-sms", path);
         }
         /**
@@ -98,16 +100,16 @@ public interface CMEndpoint {
         }
     }
 
-    public static class CMProducer
+    public static class CMProducerBuilder
             extends
-                CMCommon<CMProducer>
+                CMCommonBuilder<CMProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CMProducer(String path) {
+                EndpointProducerBuilder {
+        public CMProducerBuilder(String path) {
             super(path);
         }
     }
-    public default CMProducer toCM(String path) {
-        return new CMProducer(path);
+    public default CMProducerBuilder toCM(String path) {
+        return new CMProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMISEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMISEndpointBuilder.java
similarity index 80%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMISEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMISEndpointBuilder.java
index b9bf9b0..bcfff67 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMISEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CMISEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -28,13 +30,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CMISEndpoint {
+public interface CMISEndpointBuilder {
 
 
-    public static class CMISCommon<T extends EndpointDefinition>
+    public static class CMISCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CMISCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CMISCommonBuilder(String path) {
             super("cmis", path);
         }
         /**
@@ -119,12 +121,12 @@ public interface CMISEndpoint {
         }
     }
 
-    public static class CMISConsumer
+    public static class CMISConsumerBuilder
             extends
-                CMISCommon<CMISConsumer>
+                CMISCommonBuilder<CMISConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public CMISConsumer(String path) {
+                EndpointConsumerBuilder {
+        public CMISConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -136,9 +138,9 @@ public interface CMISEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public CMISConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public CMISConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (CMISConsumer) this;
+            return (CMISConsumerBuilder) this;
         }
         /**
          * The cmis query to execute against the repository. If not specified,
@@ -146,9 +148,9 @@ public interface CMISEndpoint {
          * iterating the content tree recursively. The option is a
          * java.lang.String type.
          */
-        public CMISConsumer query(String query) {
+        public CMISConsumerBuilder query(String query) {
             this.properties.put("query", query);
-            return (CMISConsumer) this;
+            return (CMISConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -157,26 +159,28 @@ public interface CMISEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public CMISConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public CMISConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (CMISConsumer) this;
+            return (CMISConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public CMISConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public CMISConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (CMISConsumer) this;
+            return (CMISConsumerBuilder) this;
         }
     }
 
-    public static class CMISProducer
+    public static class CMISProducerBuilder
             extends
-                CMISCommon<CMISProducer>
+                CMISCommonBuilder<CMISProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CMISProducer(String path) {
+                EndpointProducerBuilder {
+        public CMISProducerBuilder(String path) {
             super(path);
         }
         /**
@@ -184,15 +188,15 @@ public interface CMISEndpoint {
          * result, otherwise will create a node in the cmis repository. The
          * option is a boolean type.
          */
-        public CMISProducer queryMode(boolean queryMode) {
+        public CMISProducerBuilder queryMode(boolean queryMode) {
             this.properties.put("queryMode", queryMode);
-            return (CMISProducer) this;
+            return (CMISProducerBuilder) this;
         }
     }
-    public default CMISConsumer fromCMIS(String path) {
-        return new CMISConsumer(path);
+    public default CMISConsumerBuilder fromCMIS(String path) {
+        return new CMISConsumerBuilder(path);
     }
-    public default CMISProducer toCMIS(String path) {
-        return new CMISProducer(path);
+    public default CMISProducerBuilder toCMIS(String path) {
+        return new CMISProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpointBuilder.java
similarity index 71%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpointBuilder.java
index 9910c07..f6921c7 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineCacheEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -27,13 +29,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CaffeineCacheEndpoint {
+public interface CaffeineCacheEndpointBuilder {
 
 
-    public static class CaffeineCacheCommon<T extends EndpointDefinition>
+    public static class CaffeineCacheCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CaffeineCacheCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CaffeineCacheCommonBuilder(String path) {
             super("caffeine-cache", path);
         }
         /**
@@ -87,12 +89,12 @@ public interface CaffeineCacheEndpoint {
         }
     }
 
-    public static class CaffeineCacheConsumer
+    public static class CaffeineCacheConsumerBuilder
             extends
-                CaffeineCacheCommon<CaffeineCacheConsumer>
+                CaffeineCacheCommonBuilder<CaffeineCacheConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public CaffeineCacheConsumer(String path) {
+                EndpointConsumerBuilder {
+        public CaffeineCacheConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -104,10 +106,10 @@ public interface CaffeineCacheEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public CaffeineCacheConsumer bridgeErrorHandler(
+        public CaffeineCacheConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (CaffeineCacheConsumer) this;
+            return (CaffeineCacheConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -116,28 +118,28 @@ public interface CaffeineCacheEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public CaffeineCacheConsumer exceptionHandler(
+        public CaffeineCacheConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (CaffeineCacheConsumer) this;
+            return (CaffeineCacheConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public CaffeineCacheConsumer exchangePattern(
+        public CaffeineCacheConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (CaffeineCacheConsumer) this;
+            return (CaffeineCacheConsumerBuilder) this;
         }
     }
 
-    public static class CaffeineCacheProducer
+    public static class CaffeineCacheProducerBuilder
             extends
-                CaffeineCacheCommon<CaffeineCacheProducer>
+                CaffeineCacheCommonBuilder<CaffeineCacheProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CaffeineCacheProducer(String path) {
+                EndpointProducerBuilder {
+        public CaffeineCacheProducerBuilder(String path) {
             super(path);
         }
         /**
@@ -145,107 +147,109 @@ public interface CaffeineCacheEndpoint {
          * message header, then the operation from the header takes precedence.
          * The option is a java.lang.String type.
          */
-        public CaffeineCacheProducer action(String action) {
+        public CaffeineCacheProducerBuilder action(String action) {
             this.properties.put("action", action);
-            return (CaffeineCacheProducer) this;
+            return (CaffeineCacheProducerBuilder) this;
         }
         /**
          * To configure an already instantiated cache to be used. The option is
          * a com.github.benmanes.caffeine.cache.Cache type.
          */
-        public CaffeineCacheProducer cache(Object cache) {
+        public CaffeineCacheProducerBuilder cache(Object cache) {
             this.properties.put("cache", cache);
-            return (CaffeineCacheProducer) this;
+            return (CaffeineCacheProducerBuilder) this;
         }
         /**
          * To configure a CacheLoader in case of a LoadCache use. The option is
          * a com.github.benmanes.caffeine.cache.CacheLoader type.
          */
-        public CaffeineCacheProducer cacheLoader(Object cacheLoader) {
+        public CaffeineCacheProducerBuilder cacheLoader(Object cacheLoader) {
             this.properties.put("cacheLoader", cacheLoader);
-            return (CaffeineCacheProducer) this;
+            return (CaffeineCacheProducerBuilder) this;
         }
         /**
          * Set the eviction Type for this cache. The option is a
          * org.apache.camel.component.caffeine.EvictionType type.
          */
-        public CaffeineCacheProducer evictionType(EvictionType evictionType) {
+        public CaffeineCacheProducerBuilder evictionType(
+                EvictionType evictionType) {
             this.properties.put("evictionType", evictionType);
-            return (CaffeineCacheProducer) this;
+            return (CaffeineCacheProducerBuilder) this;
         }
         /**
          * Set the expire After Access Time in case of time based Eviction (in
          * seconds). The option is a int type.
          */
-        public CaffeineCacheProducer expireAfterAccessTime(
+        public CaffeineCacheProducerBuilder expireAfterAccessTime(
                 int expireAfterAccessTime) {
             this.properties.put("expireAfterAccessTime", expireAfterAccessTime);
-            return (CaffeineCacheProducer) this;
+            return (CaffeineCacheProducerBuilder) this;
         }
         /**
          * Set the expire After Access Write in case of time based Eviction (in
          * seconds). The option is a int type.
          */
-        public CaffeineCacheProducer expireAfterWriteTime(
+        public CaffeineCacheProducerBuilder expireAfterWriteTime(
                 int expireAfterWriteTime) {
             this.properties.put("expireAfterWriteTime", expireAfterWriteTime);
-            return (CaffeineCacheProducer) this;
+            return (CaffeineCacheProducerBuilder) this;
         }
         /**
          * Set the initial Capacity for the cache. The option is a int type.
          */
-        public CaffeineCacheProducer initialCapacity(int initialCapacity) {
+        public CaffeineCacheProducerBuilder initialCapacity(int initialCapacity) {
             this.properties.put("initialCapacity", initialCapacity);
-            return (CaffeineCacheProducer) this;
+            return (CaffeineCacheProducerBuilder) this;
         }
         /**
          * To configure the default action key. If a key is set in the message
          * header, then the key from the header takes precedence. The option is
          * a java.lang.Object type.
          */
-        public CaffeineCacheProducer key(Object key) {
+        public CaffeineCacheProducerBuilder key(Object key) {
             this.properties.put("key", key);
-            return (CaffeineCacheProducer) this;
+            return (CaffeineCacheProducerBuilder) this;
         }
         /**
          * Set the maximum size for the cache. The option is a int type.
          */
-        public CaffeineCacheProducer maximumSize(int maximumSize) {
+        public CaffeineCacheProducerBuilder maximumSize(int maximumSize) {
             this.properties.put("maximumSize", maximumSize);
-            return (CaffeineCacheProducer) this;
+            return (CaffeineCacheProducerBuilder) this;
         }
         /**
          * Set a specific removal Listener for the cache. The option is a
          * com.github.benmanes.caffeine.cache.RemovalListener type.
          */
-        public CaffeineCacheProducer removalListener(Object removalListener) {
+        public CaffeineCacheProducerBuilder removalListener(
+                Object removalListener) {
             this.properties.put("removalListener", removalListener);
-            return (CaffeineCacheProducer) this;
+            return (CaffeineCacheProducerBuilder) this;
         }
         /**
          * Set a specific Stats Counter for the cache stats. The option is a
          * com.github.benmanes.caffeine.cache.stats.StatsCounter type.
          */
-        public CaffeineCacheProducer statsCounter(Object statsCounter) {
+        public CaffeineCacheProducerBuilder statsCounter(Object statsCounter) {
             this.properties.put("statsCounter", statsCounter);
-            return (CaffeineCacheProducer) this;
+            return (CaffeineCacheProducerBuilder) this;
         }
         /**
          * To enable stats on the cache. The option is a boolean type.
          */
-        public CaffeineCacheProducer statsEnabled(boolean statsEnabled) {
+        public CaffeineCacheProducerBuilder statsEnabled(boolean statsEnabled) {
             this.properties.put("statsEnabled", statsEnabled);
-            return (CaffeineCacheProducer) this;
+            return (CaffeineCacheProducerBuilder) this;
         }
     }
 
     public static enum EvictionType {
         SIZE_BASED, TIME_BASED;
     }
-    public default CaffeineCacheConsumer fromCaffeineCache(String path) {
-        return new CaffeineCacheConsumer(path);
+    public default CaffeineCacheConsumerBuilder fromCaffeineCache(String path) {
+        return new CaffeineCacheConsumerBuilder(path);
     }
-    public default CaffeineCacheProducer toCaffeineCache(String path) {
-        return new CaffeineCacheProducer(path);
+    public default CaffeineCacheProducerBuilder toCaffeineCache(String path) {
+        return new CaffeineCacheProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpointBuilder.java
similarity index 70%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpointBuilder.java
index 96f259d..df85803 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CaffeineLoadCacheEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -28,13 +30,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CaffeineLoadCacheEndpoint {
+public interface CaffeineLoadCacheEndpointBuilder {
 
 
-    public static class CaffeineLoadCacheCommon<T extends EndpointDefinition>
+    public static class CaffeineLoadCacheCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CaffeineLoadCacheCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CaffeineLoadCacheCommonBuilder(String path) {
             super("caffeine-loadcache", path);
         }
         /**
@@ -88,12 +90,12 @@ public interface CaffeineLoadCacheEndpoint {
         }
     }
 
-    public static class CaffeineLoadCacheConsumer
+    public static class CaffeineLoadCacheConsumerBuilder
             extends
-                CaffeineLoadCacheCommon<CaffeineLoadCacheConsumer>
+                CaffeineLoadCacheCommonBuilder<CaffeineLoadCacheConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public CaffeineLoadCacheConsumer(String path) {
+                EndpointConsumerBuilder {
+        public CaffeineLoadCacheConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -105,10 +107,10 @@ public interface CaffeineLoadCacheEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public CaffeineLoadCacheConsumer bridgeErrorHandler(
+        public CaffeineLoadCacheConsumerBuilder bridgeErrorHandler(
                 boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (CaffeineLoadCacheConsumer) this;
+            return (CaffeineLoadCacheConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -117,28 +119,28 @@ public interface CaffeineLoadCacheEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public CaffeineLoadCacheConsumer exceptionHandler(
+        public CaffeineLoadCacheConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (CaffeineLoadCacheConsumer) this;
+            return (CaffeineLoadCacheConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public CaffeineLoadCacheConsumer exchangePattern(
+        public CaffeineLoadCacheConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (CaffeineLoadCacheConsumer) this;
+            return (CaffeineLoadCacheConsumerBuilder) this;
         }
     }
 
-    public static class CaffeineLoadCacheProducer
+    public static class CaffeineLoadCacheProducerBuilder
             extends
-                CaffeineLoadCacheCommon<CaffeineLoadCacheProducer>
+                CaffeineLoadCacheCommonBuilder<CaffeineLoadCacheProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CaffeineLoadCacheProducer(String path) {
+                EndpointProducerBuilder {
+        public CaffeineLoadCacheProducerBuilder(String path) {
             super(path);
         }
         /**
@@ -146,107 +148,113 @@ public interface CaffeineLoadCacheEndpoint {
          * message header, then the operation from the header takes precedence.
          * The option is a java.lang.String type.
          */
-        public CaffeineLoadCacheProducer action(String action) {
+        public CaffeineLoadCacheProducerBuilder action(String action) {
             this.properties.put("action", action);
-            return (CaffeineLoadCacheProducer) this;
+            return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
          * To configure an already instantiated cache to be used. The option is
          * a com.github.benmanes.caffeine.cache.Cache type.
          */
-        public CaffeineLoadCacheProducer cache(Object cache) {
+        public CaffeineLoadCacheProducerBuilder cache(Object cache) {
             this.properties.put("cache", cache);
-            return (CaffeineLoadCacheProducer) this;
+            return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
          * To configure a CacheLoader in case of a LoadCache use. The option is
          * a com.github.benmanes.caffeine.cache.CacheLoader type.
          */
-        public CaffeineLoadCacheProducer cacheLoader(Object cacheLoader) {
+        public CaffeineLoadCacheProducerBuilder cacheLoader(Object cacheLoader) {
             this.properties.put("cacheLoader", cacheLoader);
-            return (CaffeineLoadCacheProducer) this;
+            return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
          * Set the eviction Type for this cache. The option is a
          * org.apache.camel.component.caffeine.EvictionType type.
          */
-        public CaffeineLoadCacheProducer evictionType(EvictionType evictionType) {
+        public CaffeineLoadCacheProducerBuilder evictionType(
+                EvictionType evictionType) {
             this.properties.put("evictionType", evictionType);
-            return (CaffeineLoadCacheProducer) this;
+            return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
          * Set the expire After Access Time in case of time based Eviction (in
          * seconds). The option is a int type.
          */
-        public CaffeineLoadCacheProducer expireAfterAccessTime(
+        public CaffeineLoadCacheProducerBuilder expireAfterAccessTime(
                 int expireAfterAccessTime) {
             this.properties.put("expireAfterAccessTime", expireAfterAccessTime);
-            return (CaffeineLoadCacheProducer) this;
+            return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
          * Set the expire After Access Write in case of time based Eviction (in
          * seconds). The option is a int type.
          */
-        public CaffeineLoadCacheProducer expireAfterWriteTime(
+        public CaffeineLoadCacheProducerBuilder expireAfterWriteTime(
                 int expireAfterWriteTime) {
             this.properties.put("expireAfterWriteTime", expireAfterWriteTime);
-            return (CaffeineLoadCacheProducer) this;
+            return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
          * Set the initial Capacity for the cache. The option is a int type.
          */
-        public CaffeineLoadCacheProducer initialCapacity(int initialCapacity) {
+        public CaffeineLoadCacheProducerBuilder initialCapacity(
+                int initialCapacity) {
             this.properties.put("initialCapacity", initialCapacity);
-            return (CaffeineLoadCacheProducer) this;
+            return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
          * To configure the default action key. If a key is set in the message
          * header, then the key from the header takes precedence. The option is
          * a java.lang.Object type.
          */
-        public CaffeineLoadCacheProducer key(Object key) {
+        public CaffeineLoadCacheProducerBuilder key(Object key) {
             this.properties.put("key", key);
-            return (CaffeineLoadCacheProducer) this;
+            return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
          * Set the maximum size for the cache. The option is a int type.
          */
-        public CaffeineLoadCacheProducer maximumSize(int maximumSize) {
+        public CaffeineLoadCacheProducerBuilder maximumSize(int maximumSize) {
             this.properties.put("maximumSize", maximumSize);
-            return (CaffeineLoadCacheProducer) this;
+            return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
          * Set a specific removal Listener for the cache. The option is a
          * com.github.benmanes.caffeine.cache.RemovalListener type.
          */
-        public CaffeineLoadCacheProducer removalListener(Object removalListener) {
+        public CaffeineLoadCacheProducerBuilder removalListener(
+                Object removalListener) {
             this.properties.put("removalListener", removalListener);
-            return (CaffeineLoadCacheProducer) this;
+            return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
          * Set a specific Stats Counter for the cache stats. The option is a
          * com.github.benmanes.caffeine.cache.stats.StatsCounter type.
          */
-        public CaffeineLoadCacheProducer statsCounter(Object statsCounter) {
+        public CaffeineLoadCacheProducerBuilder statsCounter(Object statsCounter) {
             this.properties.put("statsCounter", statsCounter);
-            return (CaffeineLoadCacheProducer) this;
+            return (CaffeineLoadCacheProducerBuilder) this;
         }
         /**
          * To enable stats on the cache. The option is a boolean type.
          */
-        public CaffeineLoadCacheProducer statsEnabled(boolean statsEnabled) {
+        public CaffeineLoadCacheProducerBuilder statsEnabled(
+                boolean statsEnabled) {
             this.properties.put("statsEnabled", statsEnabled);
-            return (CaffeineLoadCacheProducer) this;
+            return (CaffeineLoadCacheProducerBuilder) this;
         }
     }
 
     public static enum EvictionType {
         SIZE_BASED, TIME_BASED;
     }
-    public default CaffeineLoadCacheConsumer fromCaffeineLoadCache(String path) {
-        return new CaffeineLoadCacheConsumer(path);
+    public default CaffeineLoadCacheConsumerBuilder fromCaffeineLoadCache(
+            String path) {
+        return new CaffeineLoadCacheConsumerBuilder(path);
     }
-    public default CaffeineLoadCacheProducer toCaffeineLoadCache(String path) {
-        return new CaffeineLoadCacheProducer(path);
+    public default CaffeineLoadCacheProducerBuilder toCaffeineLoadCache(
+            String path) {
+        return new CaffeineLoadCacheProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpointBuilder.java
similarity index 79%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpointBuilder.java
index 06bbdc1..cd4ab79 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CassandraEndpointBuilder.java
@@ -22,7 +22,9 @@ import java.util.concurrent.TimeUnit;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
 import org.apache.camel.LoggingLevel;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 import org.apache.camel.spi.PollingConsumerPollStrategy;
 import org.apache.camel.spi.ScheduledPollConsumerScheduler;
@@ -34,13 +36,13 @@ import org.apache.camel.spi.ScheduledPollConsumerScheduler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CassandraEndpoint {
+public interface CassandraEndpointBuilder {
 
 
-    public static class CassandraCommon<T extends EndpointDefinition>
+    public static class CassandraCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CassandraCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CassandraCommonBuilder(String path) {
             super("cql", path);
         }
         /**
@@ -174,12 +176,12 @@ public interface CassandraEndpoint {
         }
     }
 
-    public static class CassandraConsumer
+    public static class CassandraConsumerBuilder
             extends
-                CassandraCommon<CassandraConsumer>
+                CassandraCommonBuilder<CassandraConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public CassandraConsumer(String path) {
+                EndpointConsumerBuilder {
+        public CassandraConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -191,19 +193,20 @@ public interface CassandraEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public CassandraConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public CassandraConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option is a
          * boolean type.
          */
-        public CassandraConsumer sendEmptyMessageWhenIdle(
+        public CassandraConsumerBuilder sendEmptyMessageWhenIdle(
                 boolean sendEmptyMessageWhenIdle) {
             this.properties.put("sendEmptyMessageWhenIdle", sendEmptyMessageWhenIdle);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -212,18 +215,19 @@ public interface CassandraEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public CassandraConsumer exceptionHandler(
+        public CassandraConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public CassandraConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public CassandraConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing
@@ -232,27 +236,29 @@ public interface CassandraEndpoint {
          * been created and being routed in Camel. The option is a
          * org.apache.camel.spi.PollingConsumerPollStrategy type.
          */
-        public CassandraConsumer pollStrategy(
+        public CassandraConsumerBuilder pollStrategy(
                 PollingConsumerPollStrategy pollStrategy) {
             this.properties.put("pollStrategy", pollStrategy);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
          * is a int type.
          */
-        public CassandraConsumer backoffErrorThreshold(int backoffErrorThreshold) {
+        public CassandraConsumerBuilder backoffErrorThreshold(
+                int backoffErrorThreshold) {
             this.properties.put("backoffErrorThreshold", backoffErrorThreshold);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * The number of subsequent idle polls that should happen before the
          * backoffMultipler should kick-in. The option is a int type.
          */
-        public CassandraConsumer backoffIdleThreshold(int backoffIdleThreshold) {
+        public CassandraConsumerBuilder backoffIdleThreshold(
+                int backoffIdleThreshold) {
             this.properties.put("backoffIdleThreshold", backoffIdleThreshold);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * To let the scheduled polling consumer backoff if there has been a
@@ -262,45 +268,46 @@ public interface CassandraEndpoint {
          * backoffIdleThreshold and/or backoffErrorThreshold must also be
          * configured. The option is a int type.
          */
-        public CassandraConsumer backoffMultiplier(int backoffMultiplier) {
+        public CassandraConsumerBuilder backoffMultiplier(int backoffMultiplier) {
             this.properties.put("backoffMultiplier", backoffMultiplier);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
          */
-        public CassandraConsumer delay(long delay) {
+        public CassandraConsumerBuilder delay(long delay) {
             this.properties.put("delay", delay);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
          * option is a boolean type.
          */
-        public CassandraConsumer greedy(boolean greedy) {
+        public CassandraConsumerBuilder greedy(boolean greedy) {
             this.properties.put("greedy", greedy);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
          */
-        public CassandraConsumer initialDelay(long initialDelay) {
+        public CassandraConsumerBuilder initialDelay(long initialDelay) {
             this.properties.put("initialDelay", initialDelay);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
          * is a org.apache.camel.LoggingLevel type.
          */
-        public CassandraConsumer runLoggingLevel(LoggingLevel runLoggingLevel) {
+        public CassandraConsumerBuilder runLoggingLevel(
+                LoggingLevel runLoggingLevel) {
             this.properties.put("runLoggingLevel", runLoggingLevel);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * Allows for configuring a custom/shared thread pool to use for the
@@ -308,64 +315,64 @@ public interface CassandraEndpoint {
          * pool. The option is a java.util.concurrent.ScheduledExecutorService
          * type.
          */
-        public CassandraConsumer scheduledExecutorService(
+        public CassandraConsumerBuilder scheduledExecutorService(
                 ScheduledExecutorService scheduledExecutorService) {
             this.properties.put("scheduledExecutorService", scheduledExecutorService);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option is a
          * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
          */
-        public CassandraConsumer scheduler(
+        public CassandraConsumerBuilder scheduler(
                 ScheduledPollConsumerScheduler scheduler) {
             this.properties.put("scheduler", scheduler);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
          * java.util.Map<java.lang.String,java.lang.Object> type.
          */
-        public CassandraConsumer schedulerProperties(
+        public CassandraConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
             this.properties.put("schedulerProperties", schedulerProperties);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * Whether the scheduler should be auto started. The option is a boolean
          * type.
          */
-        public CassandraConsumer startScheduler(boolean startScheduler) {
+        public CassandraConsumerBuilder startScheduler(boolean startScheduler) {
             this.properties.put("startScheduler", startScheduler);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * Time unit for initialDelay and delay options. The option is a
          * java.util.concurrent.TimeUnit type.
          */
-        public CassandraConsumer timeUnit(TimeUnit timeUnit) {
+        public CassandraConsumerBuilder timeUnit(TimeUnit timeUnit) {
             this.properties.put("timeUnit", timeUnit);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
         /**
          * Controls if fixed delay or fixed rate is used. See
          * ScheduledExecutorService in JDK for details. The option is a boolean
          * type.
          */
-        public CassandraConsumer useFixedDelay(boolean useFixedDelay) {
+        public CassandraConsumerBuilder useFixedDelay(boolean useFixedDelay) {
             this.properties.put("useFixedDelay", useFixedDelay);
-            return (CassandraConsumer) this;
+            return (CassandraConsumerBuilder) this;
         }
     }
 
-    public static class CassandraProducer
+    public static class CassandraProducerBuilder
             extends
-                CassandraCommon<CassandraProducer>
+                CassandraCommonBuilder<CassandraProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CassandraProducer(String path) {
+                EndpointProducerBuilder {
+        public CassandraProducerBuilder(String path) {
             super(path);
         }
     }
@@ -373,10 +380,10 @@ public interface CassandraEndpoint {
     public static enum ConsistencyLevel {
         ANY, ONE, TWO, THREE, QUORUM, ALL, LOCAL_QUORUM, EACH_QUORUM, SERIAL, LOCAL_SERIAL, LOCAL_ONE;
     }
-    public default CassandraConsumer fromCassandra(String path) {
-        return new CassandraConsumer(path);
+    public default CassandraConsumerBuilder fromCassandra(String path) {
+        return new CassandraConsumerBuilder(path);
     }
-    public default CassandraProducer toCassandra(String path) {
-        return new CassandraProducer(path);
+    public default CassandraProducerBuilder toCassandra(String path) {
+        return new CassandraProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChatScriptEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChatScriptEndpointBuilder.java
similarity index 82%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChatScriptEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChatScriptEndpointBuilder.java
index 7582fc4..b902f0b 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChatScriptEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChatScriptEndpointBuilder.java
@@ -17,7 +17,9 @@
 package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * Represents a ChatScript endpoint.
@@ -25,13 +27,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface ChatScriptEndpoint {
+public interface ChatScriptEndpointBuilder {
 
 
-    public static class ChatScriptCommon<T extends EndpointDefinition>
+    public static class ChatScriptCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        ChatScriptCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        ChatScriptCommonBuilder(String path) {
             super("chatscript", path);
         }
         /**
@@ -93,16 +95,16 @@ public interface ChatScriptEndpoint {
         }
     }
 
-    public static class ChatScriptProducer
+    public static class ChatScriptProducerBuilder
             extends
-                ChatScriptCommon<ChatScriptProducer>
+                ChatScriptCommonBuilder<ChatScriptProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public ChatScriptProducer(String path) {
+                EndpointProducerBuilder {
+        public ChatScriptProducerBuilder(String path) {
             super(path);
         }
     }
-    public default ChatScriptProducer toChatScript(String path) {
-        return new ChatScriptProducer(path);
+    public default ChatScriptProducerBuilder toChatScript(String path) {
+        return new ChatScriptProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChunkEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChunkEndpointBuilder.java
similarity index 86%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChunkEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChunkEndpointBuilder.java
index 4b6d502..6efa021 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChunkEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ChunkEndpointBuilder.java
@@ -17,7 +17,9 @@
 package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * Transforms the message using a Chunk template.
@@ -25,13 +27,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface ChunkEndpoint {
+public interface ChunkEndpointBuilder {
 
 
-    public static class ChunkCommon<T extends EndpointDefinition>
+    public static class ChunkCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        ChunkCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        ChunkCommonBuilder(String path) {
             super("chunk", path);
         }
         /**
@@ -114,16 +116,16 @@ public interface ChunkEndpoint {
         }
     }
 
-    public static class ChunkProducer
+    public static class ChunkProducerBuilder
             extends
-                ChunkCommon<ChunkProducer>
+                ChunkCommonBuilder<ChunkProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public ChunkProducer(String path) {
+                EndpointProducerBuilder {
+        public ChunkProducerBuilder(String path) {
             super(path);
         }
     }
-    public default ChunkProducer toChunk(String path) {
-        return new ChunkProducer(path);
+    public default ChunkProducerBuilder toChunk(String path) {
+        return new ChunkProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CinderEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CinderEndpointBuilder.java
similarity index 85%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CinderEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CinderEndpointBuilder.java
index 498c079..e6650f2 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CinderEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CinderEndpointBuilder.java
@@ -17,7 +17,9 @@
 package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * The openstack-cinder component allows messages to be sent to an OpenStack
@@ -26,13 +28,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CinderEndpoint {
+public interface CinderEndpointBuilder {
 
 
-    public static class CinderCommon<T extends EndpointDefinition>
+    public static class CinderCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CinderCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CinderCommonBuilder(String path) {
             super("openstack-cinder", path);
         }
         /**
@@ -119,16 +121,16 @@ public interface CinderEndpoint {
         }
     }
 
-    public static class CinderProducer
+    public static class CinderProducerBuilder
             extends
-                CinderCommon<CinderProducer>
+                CinderCommonBuilder<CinderProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CinderProducer(String path) {
+                EndpointProducerBuilder {
+        public CinderProducerBuilder(String path) {
             super(path);
         }
     }
-    public default CinderProducer toCinder(String path) {
-        return new CinderProducer(path);
+    public default CinderProducerBuilder toCinder(String path) {
+        return new CinderProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClassEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClassEndpointBuilder.java
similarity index 82%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClassEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClassEndpointBuilder.java
index 6ff7919..03ad30b 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClassEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClassEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import java.util.Map;
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * The class component is for invoking Java classes (Java beans) from Camel.
@@ -26,13 +28,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface ClassEndpoint {
+public interface ClassEndpointBuilder {
 
 
-    public static class ClassCommon<T extends EndpointDefinition>
+    public static class ClassCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        ClassCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        ClassCommonBuilder(String path) {
             super("class", path);
         }
         /**
@@ -88,16 +90,16 @@ public interface ClassEndpoint {
         }
     }
 
-    public static class ClassProducer
+    public static class ClassProducerBuilder
             extends
-                ClassCommon<ClassProducer>
+                ClassCommonBuilder<ClassProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public ClassProducer(String path) {
+                EndpointProducerBuilder {
+        public ClassProducerBuilder(String path) {
             super(path);
         }
     }
-    public default ClassProducer toClass(String path) {
-        return new ClassProducer(path);
+    public default ClassProducerBuilder toClass(String path) {
+        return new ClassProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClientEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClientEndpointBuilder.java
similarity index 85%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClientEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClientEndpointBuilder.java
index 734208b..9bbdfa1 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClientEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ClientEndpointBuilder.java
@@ -19,7 +19,9 @@ package org.apache.camel.model.endpoint;
 import java.util.TimeZone;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -30,13 +32,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface ClientEndpoint {
+public interface ClientEndpointBuilder {
 
 
-    public static class ClientCommon<T extends EndpointDefinition>
+    public static class ClientCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        ClientCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        ClientCommonBuilder(String path) {
             super("iec60870-client", path);
         }
         /**
@@ -185,12 +187,12 @@ public interface ClientEndpoint {
         }
     }
 
-    public static class ClientConsumer
+    public static class ClientConsumerBuilder
             extends
-                ClientCommon<ClientConsumer>
+                ClientCommonBuilder<ClientConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public ClientConsumer(String path) {
+                EndpointConsumerBuilder {
+        public ClientConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -202,9 +204,10 @@ public interface ClientEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public ClientConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public ClientConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (ClientConsumer) this;
+            return (ClientConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -213,26 +216,28 @@ public interface ClientEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public ClientConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public ClientConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (ClientConsumer) this;
+            return (ClientConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public ClientConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public ClientConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (ClientConsumer) this;
+            return (ClientConsumerBuilder) this;
         }
     }
 
-    public static class ClientProducer
+    public static class ClientProducerBuilder
             extends
-                ClientCommon<ClientProducer>
+                ClientCommonBuilder<ClientProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public ClientProducer(String path) {
+                EndpointProducerBuilder {
+        public ClientProducerBuilder(String path) {
             super(path);
         }
     }
@@ -248,10 +253,10 @@ public interface ClientEndpoint {
     public static enum InformationObjectAddressType {
         SIZE_1,  SIZE_2,  SIZE_3;
     }
-    public default ClientConsumer fromClient(String path) {
-        return new ClientConsumer(path);
+    public default ClientConsumerBuilder fromClient(String path) {
+        return new ClientConsumerBuilder(path);
     }
-    public default ClientProducer toClient(String path) {
-        return new ClientProducer(path);
+    public default ClientProducerBuilder toClient(String path) {
+        return new ClientProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CoAPEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CoAPEndpointBuilder.java
similarity index 83%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CoAPEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CoAPEndpointBuilder.java
index d863e38..590e08c 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CoAPEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CoAPEndpointBuilder.java
@@ -21,7 +21,9 @@ import java.security.PrivateKey;
 import java.security.PublicKey;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -31,13 +33,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CoAPEndpoint {
+public interface CoAPEndpointBuilder {
 
 
-    public static class CoAPCommon<T extends EndpointDefinition>
+    public static class CoAPCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CoAPCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CoAPCommonBuilder(String path) {
             super("coap", path);
         }
         /**
@@ -146,12 +148,12 @@ public interface CoAPEndpoint {
         }
     }
 
-    public static class CoAPConsumer
+    public static class CoAPConsumerBuilder
             extends
-                CoAPCommon<CoAPConsumer>
+                CoAPCommonBuilder<CoAPConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public CoAPConsumer(String path) {
+                EndpointConsumerBuilder {
+        public CoAPConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -163,18 +165,18 @@ public interface CoAPEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public CoAPConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public CoAPConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (CoAPConsumer) this;
+            return (CoAPConsumerBuilder) this;
         }
         /**
          * Comma separated list of methods that the CoAP consumer will bind to.
          * The default is to bind to all methods (DELETE, GET, POST, PUT). The
          * option is a java.lang.String type.
          */
-        public CoAPConsumer coapMethodRestrict(String coapMethodRestrict) {
+        public CoAPConsumerBuilder coapMethodRestrict(String coapMethodRestrict) {
             this.properties.put("coapMethodRestrict", coapMethodRestrict);
-            return (CoAPConsumer) this;
+            return (CoAPConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -183,33 +185,35 @@ public interface CoAPEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public CoAPConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public CoAPConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (CoAPConsumer) this;
+            return (CoAPConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public CoAPConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public CoAPConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (CoAPConsumer) this;
+            return (CoAPConsumerBuilder) this;
         }
     }
 
-    public static class CoAPProducer
+    public static class CoAPProducerBuilder
             extends
-                CoAPCommon<CoAPProducer>
+                CoAPCommonBuilder<CoAPProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CoAPProducer(String path) {
+                EndpointProducerBuilder {
+        public CoAPProducerBuilder(String path) {
             super(path);
         }
     }
-    public default CoAPConsumer fromCoAP(String path) {
-        return new CoAPConsumer(path);
+    public default CoAPConsumerBuilder fromCoAP(String path) {
+        return new CoAPConsumerBuilder(path);
     }
-    public default CoAPProducer toCoAP(String path) {
-        return new CoAPProducer(path);
+    public default CoAPProducerBuilder toCoAP(String path) {
+        return new CoAPProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CometdEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CometdEndpointBuilder.java
similarity index 83%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CometdEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CometdEndpointBuilder.java
index 3332c18..68a80f0 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CometdEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CometdEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -28,13 +30,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CometdEndpoint {
+public interface CometdEndpointBuilder {
 
 
-    public static class CometdCommon<T extends EndpointDefinition>
+    public static class CometdCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CometdCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CometdCommonBuilder(String path) {
             super("cometd", path);
         }
         /**
@@ -164,12 +166,12 @@ public interface CometdEndpoint {
         }
     }
 
-    public static class CometdConsumer
+    public static class CometdConsumerBuilder
             extends
-                CometdCommon<CometdConsumer>
+                CometdCommonBuilder<CometdConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public CometdConsumer(String path) {
+                EndpointConsumerBuilder {
+        public CometdConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -181,19 +183,20 @@ public interface CometdEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public CometdConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public CometdConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (CometdConsumer) this;
+            return (CometdConsumerBuilder) this;
         }
         /**
          * Whether to include the server session headers in the Camel message
          * when creating a Camel Message for incoming requests. The option is a
          * boolean type.
          */
-        public CometdConsumer sessionHeadersEnabled(
+        public CometdConsumerBuilder sessionHeadersEnabled(
                 boolean sessionHeadersEnabled) {
             this.properties.put("sessionHeadersEnabled", sessionHeadersEnabled);
-            return (CometdConsumer) this;
+            return (CometdConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -202,26 +205,28 @@ public interface CometdEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public CometdConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public CometdConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (CometdConsumer) this;
+            return (CometdConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public CometdConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public CometdConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (CometdConsumer) this;
+            return (CometdConsumerBuilder) this;
         }
     }
 
-    public static class CometdProducer
+    public static class CometdProducerBuilder
             extends
-                CometdCommon<CometdProducer>
+                CometdCommonBuilder<CometdProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CometdProducer(String path) {
+                EndpointProducerBuilder {
+        public CometdProducerBuilder(String path) {
             super(path);
         }
         /**
@@ -230,16 +235,16 @@ public interface CometdEndpoint {
          * swept by default by CometD, and therefore you can run out of memory.
          * The option is a boolean type.
          */
-        public CometdProducer disconnectLocalSession(
+        public CometdProducerBuilder disconnectLocalSession(
                 boolean disconnectLocalSession) {
             this.properties.put("disconnectLocalSession", disconnectLocalSession);
-            return (CometdProducer) this;
+            return (CometdProducerBuilder) this;
         }
     }
-    public default CometdConsumer fromCometd(String path) {
-        return new CometdConsumer(path);
+    public default CometdConsumerBuilder fromCometd(String path) {
+        return new CometdConsumerBuilder(path);
     }
-    public default CometdProducer toCometd(String path) {
-        return new CometdProducer(path);
+    public default CometdProducerBuilder toCometd(String path) {
+        return new CometdProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ConsulEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ConsulEndpointBuilder.java
similarity index 72%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/ConsulEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/ConsulEndpointBuilder.java
index 77826ea..33e2844 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ConsulEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ConsulEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -29,13 +31,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface ConsulEndpoint {
+public interface ConsulEndpointBuilder {
 
 
-    public static class ConsulCommon<T extends EndpointDefinition>
+    public static class ConsulCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        ConsulCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        ConsulCommonBuilder(String path) {
             super("consul", path);
         }
         /**
@@ -65,12 +67,12 @@ public interface ConsulEndpoint {
         }
     }
 
-    public static class ConsulConsumer
+    public static class ConsulConsumerBuilder
             extends
-                ConsulCommon<ConsulConsumer>
+                ConsulCommonBuilder<ConsulConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public ConsulConsumer(String path) {
+                EndpointConsumerBuilder {
+        public ConsulConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -82,9 +84,10 @@ public interface ConsulEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public ConsulConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public ConsulConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (ConsulConsumer) this;
+            return (ConsulConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -93,33 +96,35 @@ public interface ConsulEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public ConsulConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public ConsulConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (ConsulConsumer) this;
+            return (ConsulConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public ConsulConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public ConsulConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (ConsulConsumer) this;
+            return (ConsulConsumerBuilder) this;
         }
     }
 
-    public static class ConsulProducer
+    public static class ConsulProducerBuilder
             extends
-                ConsulCommon<ConsulProducer>
+                ConsulCommonBuilder<ConsulProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public ConsulProducer(String path) {
+                EndpointProducerBuilder {
+        public ConsulProducerBuilder(String path) {
             super(path);
         }
     }
-    public default ConsulConsumer fromConsul(String path) {
-        return new ConsulConsumer(path);
+    public default ConsulConsumerBuilder fromConsul(String path) {
+        return new ConsulConsumerBuilder(path);
     }
-    public default ConsulProducer toConsul(String path) {
-        return new ConsulProducer(path);
+    public default ConsulProducerBuilder toConsul(String path) {
+        return new ConsulProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ControlBusEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ControlBusEndpointBuilder.java
similarity index 87%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/ControlBusEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/ControlBusEndpointBuilder.java
index 6994df8..8d18ae4 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ControlBusEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/ControlBusEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.LoggingLevel;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.Language;
 
 /**
@@ -28,13 +30,13 @@ import org.apache.camel.spi.Language;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface ControlBusEndpoint {
+public interface ControlBusEndpointBuilder {
 
 
-    public static class ControlBusCommon<T extends EndpointDefinition>
+    public static class ControlBusCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        ControlBusCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        ControlBusCommonBuilder(String path) {
             super("controlbus", path);
         }
         /**
@@ -125,16 +127,16 @@ public interface ControlBusEndpoint {
         }
     }
 
-    public static class ControlBusProducer
+    public static class ControlBusProducerBuilder
             extends
-                ControlBusCommon<ControlBusProducer>
+                ControlBusCommonBuilder<ControlBusProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public ControlBusProducer(String path) {
+                EndpointProducerBuilder {
+        public ControlBusProducerBuilder(String path) {
             super(path);
         }
     }
-    public default ControlBusProducer toControlBus(String path) {
-        return new ControlBusProducer(path);
+    public default ControlBusProducerBuilder toControlBus(String path) {
+        return new ControlBusProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CordaEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CordaEndpointBuilder.java
similarity index 72%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CordaEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CordaEndpointBuilder.java
index 847904a..ff2ae07 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CordaEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CordaEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -27,13 +29,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CordaEndpoint {
+public interface CordaEndpointBuilder {
 
 
-    public static class CordaCommon<T extends EndpointDefinition>
+    public static class CordaCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CordaCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CordaCommonBuilder(String path) {
             super("corda", path);
         }
         /**
@@ -64,12 +66,12 @@ public interface CordaEndpoint {
         }
     }
 
-    public static class CordaConsumer
+    public static class CordaConsumerBuilder
             extends
-                CordaCommon<CordaConsumer>
+                CordaCommonBuilder<CordaConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public CordaConsumer(String path) {
+                EndpointConsumerBuilder {
+        public CordaConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -81,9 +83,10 @@ public interface CordaEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public CordaConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public CordaConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (CordaConsumer) this;
+            return (CordaConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -92,33 +95,35 @@ public interface CordaEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public CordaConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public CordaConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (CordaConsumer) this;
+            return (CordaConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public CordaConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public CordaConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (CordaConsumer) this;
+            return (CordaConsumerBuilder) this;
         }
     }
 
-    public static class CordaProducer
+    public static class CordaProducerBuilder
             extends
-                CordaCommon<CordaProducer>
+                CordaCommonBuilder<CordaProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CordaProducer(String path) {
+                EndpointProducerBuilder {
+        public CordaProducerBuilder(String path) {
             super(path);
         }
     }
-    public default CordaConsumer fromCorda(String path) {
-        return new CordaConsumer(path);
+    public default CordaConsumerBuilder fromCorda(String path) {
+        return new CordaConsumerBuilder(path);
     }
-    public default CordaProducer toCorda(String path) {
-        return new CordaProducer(path);
+    public default CordaProducerBuilder toCorda(String path) {
+        return new CordaProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchDbEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchDbEndpointBuilder.java
similarity index 77%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchDbEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchDbEndpointBuilder.java
index d1f1905..075e5ef 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchDbEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchDbEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -27,13 +29,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CouchDbEndpoint {
+public interface CouchDbEndpointBuilder {
 
 
-    public static class CouchDbCommon<T extends EndpointDefinition>
+    public static class CouchDbCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CouchDbCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CouchDbCommonBuilder(String path) {
             super("couchdb", path);
         }
         /**
@@ -111,12 +113,12 @@ public interface CouchDbEndpoint {
         }
     }
 
-    public static class CouchDbConsumer
+    public static class CouchDbConsumerBuilder
             extends
-                CouchDbCommon<CouchDbConsumer>
+                CouchDbCommonBuilder<CouchDbConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public CouchDbConsumer(String path) {
+                EndpointConsumerBuilder {
+        public CouchDbConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -128,34 +130,35 @@ public interface CouchDbEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public CouchDbConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public CouchDbConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (CouchDbConsumer) this;
+            return (CouchDbConsumerBuilder) this;
         }
         /**
          * Document deletes are published as events. The option is a boolean
          * type.
          */
-        public CouchDbConsumer deletes(boolean deletes) {
+        public CouchDbConsumerBuilder deletes(boolean deletes) {
             this.properties.put("deletes", deletes);
-            return (CouchDbConsumer) this;
+            return (CouchDbConsumerBuilder) this;
         }
         /**
          * How often to send an empty message to keep socket alive in millis.
          * The option is a long type.
          */
-        public CouchDbConsumer heartbeat(long heartbeat) {
+        public CouchDbConsumerBuilder heartbeat(long heartbeat) {
             this.properties.put("heartbeat", heartbeat);
-            return (CouchDbConsumer) this;
+            return (CouchDbConsumerBuilder) this;
         }
         /**
          * Start tracking changes immediately after the given update sequence.
          * The default, null, will start monitoring from the latest sequence.
          * The option is a java.lang.String type.
          */
-        public CouchDbConsumer since(String since) {
+        public CouchDbConsumerBuilder since(String since) {
             this.properties.put("since", since);
-            return (CouchDbConsumer) this;
+            return (CouchDbConsumerBuilder) this;
         }
         /**
          * Specifies how many revisions are returned in the changes array. The
@@ -163,17 +166,17 @@ public interface CouchDbEndpoint {
          * all_docs will return all leaf revisions (including conflicts and
          * deleted former conflicts.). The option is a java.lang.String type.
          */
-        public CouchDbConsumer style(String style) {
+        public CouchDbConsumerBuilder style(String style) {
             this.properties.put("style", style);
-            return (CouchDbConsumer) this;
+            return (CouchDbConsumerBuilder) this;
         }
         /**
          * Document inserts/updates are published as events. The option is a
          * boolean type.
          */
-        public CouchDbConsumer updates(boolean updates) {
+        public CouchDbConsumerBuilder updates(boolean updates) {
             this.properties.put("updates", updates);
-            return (CouchDbConsumer) this;
+            return (CouchDbConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -182,34 +185,35 @@ public interface CouchDbEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public CouchDbConsumer exceptionHandler(
+        public CouchDbConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (CouchDbConsumer) this;
+            return (CouchDbConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public CouchDbConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public CouchDbConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (CouchDbConsumer) this;
+            return (CouchDbConsumerBuilder) this;
         }
     }
 
-    public static class CouchDbProducer
+    public static class CouchDbProducerBuilder
             extends
-                CouchDbCommon<CouchDbProducer>
+                CouchDbCommonBuilder<CouchDbProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CouchDbProducer(String path) {
+                EndpointProducerBuilder {
+        public CouchDbProducerBuilder(String path) {
             super(path);
         }
     }
-    public default CouchDbConsumer fromCouchDb(String path) {
-        return new CouchDbConsumer(path);
+    public default CouchDbConsumerBuilder fromCouchDb(String path) {
+        return new CouchDbConsumerBuilder(path);
     }
-    public default CouchDbProducer toCouchDb(String path) {
-        return new CouchDbProducer(path);
+    public default CouchDbProducerBuilder toCouchDb(String path) {
+        return new CouchDbProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchbaseEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchbaseEndpointBuilder.java
similarity index 75%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchbaseEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchbaseEndpointBuilder.java
index fecfa88..38bb58e 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchbaseEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CouchbaseEndpointBuilder.java
@@ -22,7 +22,9 @@ import java.util.concurrent.TimeUnit;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
 import org.apache.camel.LoggingLevel;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 import org.apache.camel.spi.PollingConsumerPollStrategy;
 import org.apache.camel.spi.ScheduledPollConsumerScheduler;
@@ -34,13 +36,13 @@ import org.apache.camel.spi.ScheduledPollConsumerScheduler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CouchbaseEndpoint {
+public interface CouchbaseEndpointBuilder {
 
 
-    public static class CouchbaseCommon<T extends EndpointDefinition>
+    public static class CouchbaseCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CouchbaseCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CouchbaseCommonBuilder(String path) {
             super("couchbase", path);
         }
         /**
@@ -179,12 +181,12 @@ public interface CouchbaseEndpoint {
         }
     }
 
-    public static class CouchbaseConsumer
+    public static class CouchbaseConsumerBuilder
             extends
-                CouchbaseCommon<CouchbaseConsumer>
+                CouchbaseCommonBuilder<CouchbaseConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public CouchbaseConsumer(String path) {
+                EndpointConsumerBuilder {
+        public CouchbaseConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -196,81 +198,83 @@ public interface CouchbaseEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public CouchbaseConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public CouchbaseConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * Define the consumer Processed strategy to use. The option is a
          * java.lang.String type.
          */
-        public CouchbaseConsumer consumerProcessedStrategy(
+        public CouchbaseConsumerBuilder consumerProcessedStrategy(
                 String consumerProcessedStrategy) {
             this.properties.put("consumerProcessedStrategy", consumerProcessedStrategy);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * Define if this operation is descending or not. The option is a
          * boolean type.
          */
-        public CouchbaseConsumer descending(boolean descending) {
+        public CouchbaseConsumerBuilder descending(boolean descending) {
             this.properties.put("descending", descending);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * The design document name to use. The option is a java.lang.String
          * type.
          */
-        public CouchbaseConsumer designDocumentName(String designDocumentName) {
+        public CouchbaseConsumerBuilder designDocumentName(
+                String designDocumentName) {
             this.properties.put("designDocumentName", designDocumentName);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * The output limit to use. The option is a int type.
          */
-        public CouchbaseConsumer limit(int limit) {
+        public CouchbaseConsumerBuilder limit(int limit) {
             this.properties.put("limit", limit);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * Define a range for the end key. The option is a java.lang.String
          * type.
          */
-        public CouchbaseConsumer rangeEndKey(String rangeEndKey) {
+        public CouchbaseConsumerBuilder rangeEndKey(String rangeEndKey) {
             this.properties.put("rangeEndKey", rangeEndKey);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * Define a range for the start key. The option is a java.lang.String
          * type.
          */
-        public CouchbaseConsumer rangeStartKey(String rangeStartKey) {
+        public CouchbaseConsumerBuilder rangeStartKey(String rangeStartKey) {
             this.properties.put("rangeStartKey", rangeStartKey);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option is a
          * boolean type.
          */
-        public CouchbaseConsumer sendEmptyMessageWhenIdle(
+        public CouchbaseConsumerBuilder sendEmptyMessageWhenIdle(
                 boolean sendEmptyMessageWhenIdle) {
             this.properties.put("sendEmptyMessageWhenIdle", sendEmptyMessageWhenIdle);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * Define the skip to use. The option is a int type.
          */
-        public CouchbaseConsumer skip(int skip) {
+        public CouchbaseConsumerBuilder skip(int skip) {
             this.properties.put("skip", skip);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * The view name to use. The option is a java.lang.String type.
          */
-        public CouchbaseConsumer viewName(String viewName) {
+        public CouchbaseConsumerBuilder viewName(String viewName) {
             this.properties.put("viewName", viewName);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -279,18 +283,19 @@ public interface CouchbaseEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public CouchbaseConsumer exceptionHandler(
+        public CouchbaseConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public CouchbaseConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public CouchbaseConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing
@@ -299,27 +304,29 @@ public interface CouchbaseEndpoint {
          * been created and being routed in Camel. The option is a
          * org.apache.camel.spi.PollingConsumerPollStrategy type.
          */
-        public CouchbaseConsumer pollStrategy(
+        public CouchbaseConsumerBuilder pollStrategy(
                 PollingConsumerPollStrategy pollStrategy) {
             this.properties.put("pollStrategy", pollStrategy);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
          * is a int type.
          */
-        public CouchbaseConsumer backoffErrorThreshold(int backoffErrorThreshold) {
+        public CouchbaseConsumerBuilder backoffErrorThreshold(
+                int backoffErrorThreshold) {
             this.properties.put("backoffErrorThreshold", backoffErrorThreshold);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * The number of subsequent idle polls that should happen before the
          * backoffMultipler should kick-in. The option is a int type.
          */
-        public CouchbaseConsumer backoffIdleThreshold(int backoffIdleThreshold) {
+        public CouchbaseConsumerBuilder backoffIdleThreshold(
+                int backoffIdleThreshold) {
             this.properties.put("backoffIdleThreshold", backoffIdleThreshold);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * To let the scheduled polling consumer backoff if there has been a
@@ -329,45 +336,46 @@ public interface CouchbaseEndpoint {
          * backoffIdleThreshold and/or backoffErrorThreshold must also be
          * configured. The option is a int type.
          */
-        public CouchbaseConsumer backoffMultiplier(int backoffMultiplier) {
+        public CouchbaseConsumerBuilder backoffMultiplier(int backoffMultiplier) {
             this.properties.put("backoffMultiplier", backoffMultiplier);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
          */
-        public CouchbaseConsumer delay(long delay) {
+        public CouchbaseConsumerBuilder delay(long delay) {
             this.properties.put("delay", delay);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
          * option is a boolean type.
          */
-        public CouchbaseConsumer greedy(boolean greedy) {
+        public CouchbaseConsumerBuilder greedy(boolean greedy) {
             this.properties.put("greedy", greedy);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
          */
-        public CouchbaseConsumer initialDelay(long initialDelay) {
+        public CouchbaseConsumerBuilder initialDelay(long initialDelay) {
             this.properties.put("initialDelay", initialDelay);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
          * is a org.apache.camel.LoggingLevel type.
          */
-        public CouchbaseConsumer runLoggingLevel(LoggingLevel runLoggingLevel) {
+        public CouchbaseConsumerBuilder runLoggingLevel(
+                LoggingLevel runLoggingLevel) {
             this.properties.put("runLoggingLevel", runLoggingLevel);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * Allows for configuring a custom/shared thread pool to use for the
@@ -375,125 +383,127 @@ public interface CouchbaseEndpoint {
          * pool. The option is a java.util.concurrent.ScheduledExecutorService
          * type.
          */
-        public CouchbaseConsumer scheduledExecutorService(
+        public CouchbaseConsumerBuilder scheduledExecutorService(
                 ScheduledExecutorService scheduledExecutorService) {
             this.properties.put("scheduledExecutorService", scheduledExecutorService);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option is a
          * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
          */
-        public CouchbaseConsumer scheduler(
+        public CouchbaseConsumerBuilder scheduler(
                 ScheduledPollConsumerScheduler scheduler) {
             this.properties.put("scheduler", scheduler);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
          * java.util.Map<java.lang.String,java.lang.Object> type.
          */
-        public CouchbaseConsumer schedulerProperties(
+        public CouchbaseConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
             this.properties.put("schedulerProperties", schedulerProperties);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * Whether the scheduler should be auto started. The option is a boolean
          * type.
          */
-        public CouchbaseConsumer startScheduler(boolean startScheduler) {
+        public CouchbaseConsumerBuilder startScheduler(boolean startScheduler) {
             this.properties.put("startScheduler", startScheduler);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * Time unit for initialDelay and delay options. The option is a
          * java.util.concurrent.TimeUnit type.
          */
-        public CouchbaseConsumer timeUnit(TimeUnit timeUnit) {
+        public CouchbaseConsumerBuilder timeUnit(TimeUnit timeUnit) {
             this.properties.put("timeUnit", timeUnit);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
         /**
          * Controls if fixed delay or fixed rate is used. See
          * ScheduledExecutorService in JDK for details. The option is a boolean
          * type.
          */
-        public CouchbaseConsumer useFixedDelay(boolean useFixedDelay) {
+        public CouchbaseConsumerBuilder useFixedDelay(boolean useFixedDelay) {
             this.properties.put("useFixedDelay", useFixedDelay);
-            return (CouchbaseConsumer) this;
+            return (CouchbaseConsumerBuilder) this;
         }
     }
 
-    public static class CouchbaseProducer
+    public static class CouchbaseProducerBuilder
             extends
-                CouchbaseCommon<CouchbaseProducer>
+                CouchbaseCommonBuilder<CouchbaseProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CouchbaseProducer(String path) {
+                EndpointProducerBuilder {
+        public CouchbaseProducerBuilder(String path) {
             super(path);
         }
         /**
          * Define if we want an autostart Id when we are doing an insert
          * operation. The option is a boolean type.
          */
-        public CouchbaseProducer autoStartIdForInserts(
+        public CouchbaseProducerBuilder autoStartIdForInserts(
                 boolean autoStartIdForInserts) {
             this.properties.put("autoStartIdForInserts", autoStartIdForInserts);
-            return (CouchbaseProducer) this;
+            return (CouchbaseProducerBuilder) this;
         }
         /**
          * The operation to do. The option is a java.lang.String type.
          */
-        public CouchbaseProducer operation(String operation) {
+        public CouchbaseProducerBuilder operation(String operation) {
             this.properties.put("operation", operation);
-            return (CouchbaseProducer) this;
+            return (CouchbaseProducerBuilder) this;
         }
         /**
          * Where to persist the data. The option is a int type.
          */
-        public CouchbaseProducer persistTo(int persistTo) {
+        public CouchbaseProducerBuilder persistTo(int persistTo) {
             this.properties.put("persistTo", persistTo);
-            return (CouchbaseProducer) this;
+            return (CouchbaseProducerBuilder) this;
         }
         /**
          * Define the number of retry attempts. The option is a int type.
          */
-        public CouchbaseProducer producerRetryAttempts(int producerRetryAttempts) {
+        public CouchbaseProducerBuilder producerRetryAttempts(
+                int producerRetryAttempts) {
             this.properties.put("producerRetryAttempts", producerRetryAttempts);
-            return (CouchbaseProducer) this;
+            return (CouchbaseProducerBuilder) this;
         }
         /**
          * Define the retry pause between different attempts. The option is a
          * int type.
          */
-        public CouchbaseProducer producerRetryPause(int producerRetryPause) {
+        public CouchbaseProducerBuilder producerRetryPause(
+                int producerRetryPause) {
             this.properties.put("producerRetryPause", producerRetryPause);
-            return (CouchbaseProducer) this;
+            return (CouchbaseProducerBuilder) this;
         }
         /**
          * Where to replicate the data. The option is a int type.
          */
-        public CouchbaseProducer replicateTo(int replicateTo) {
+        public CouchbaseProducerBuilder replicateTo(int replicateTo) {
             this.properties.put("replicateTo", replicateTo);
-            return (CouchbaseProducer) this;
+            return (CouchbaseProducerBuilder) this;
         }
         /**
          * Define the starting Id where we are doing an insert operation. The
          * option is a long type.
          */
-        public CouchbaseProducer startingIdForInsertsFrom(
+        public CouchbaseProducerBuilder startingIdForInsertsFrom(
                 long startingIdForInsertsFrom) {
             this.properties.put("startingIdForInsertsFrom", startingIdForInsertsFrom);
-            return (CouchbaseProducer) this;
+            return (CouchbaseProducerBuilder) this;
         }
     }
-    public default CouchbaseConsumer fromCouchbase(String path) {
-        return new CouchbaseConsumer(path);
+    public default CouchbaseConsumerBuilder fromCouchbase(String path) {
+        return new CouchbaseConsumerBuilder(path);
     }
-    public default CouchbaseProducer toCouchbase(String path) {
-        return new CouchbaseProducer(path);
+    public default CouchbaseProducerBuilder toCouchbase(String path) {
+        return new CouchbaseProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CryptoCmsEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CryptoCmsEndpointBuilder.java
similarity index 93%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CryptoCmsEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CryptoCmsEndpointBuilder.java
index 115bb9f..22707aa 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CryptoCmsEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CryptoCmsEndpointBuilder.java
@@ -19,7 +19,9 @@ package org.apache.camel.model.endpoint;
 import java.security.KeyStore;
 import java.util.List;
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * The crypto cms component is used for encrypting data in CMS Enveloped Data
@@ -29,13 +31,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CryptoCmsEndpoint {
+public interface CryptoCmsEndpointBuilder {
 
 
-    public static class CryptoCmsCommon<T extends EndpointDefinition>
+    public static class CryptoCmsCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CryptoCmsCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CryptoCmsCommonBuilder(String path) {
             super("crypto-cms", path);
         }
         /**
@@ -225,12 +227,12 @@ public interface CryptoCmsEndpoint {
         }
     }
 
-    public static class CryptoCmsProducer
+    public static class CryptoCmsProducerBuilder
             extends
-                CryptoCmsCommon<CryptoCmsProducer>
+                CryptoCmsCommonBuilder<CryptoCmsProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CryptoCmsProducer(String path) {
+                EndpointProducerBuilder {
+        public CryptoCmsProducerBuilder(String path) {
             super(path);
         }
     }
@@ -238,7 +240,7 @@ public interface CryptoCmsEndpoint {
     public static enum CryptoOperation {
         sign, verify, encrypt, decrypt;
     }
-    public default CryptoCmsProducer toCryptoCms(String path) {
-        return new CryptoCmsProducer(path);
+    public default CryptoCmsProducerBuilder toCryptoCms(String path) {
+        return new CryptoCmsProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CwEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CwEndpointBuilder.java
similarity index 88%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CwEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CwEndpointBuilder.java
index 9002ee9..681bb7f 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CwEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CwEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import java.util.Date;
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * The aws-cw component is used for sending metrics to an Amazon CloudWatch.
@@ -26,13 +28,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CwEndpoint {
+public interface CwEndpointBuilder {
 
 
-    public static class CwCommon<T extends EndpointDefinition>
+    public static class CwCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CwCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CwCommonBuilder(String path) {
             super("aws-cw", path);
         }
         /**
@@ -136,16 +138,16 @@ public interface CwEndpoint {
         }
     }
 
-    public static class CwProducer
+    public static class CwProducerBuilder
             extends
-                CwCommon<CwProducer>
+                CwCommonBuilder<CwProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CwProducer(String path) {
+                EndpointProducerBuilder {
+        public CwProducerBuilder(String path) {
             super(path);
         }
     }
-    public default CwProducer toCw(String path) {
-        return new CwProducer(path);
+    public default CwProducerBuilder toCw(String path) {
+        return new CwProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfEndpointBuilder.java
similarity index 87%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfEndpointBuilder.java
index f223025..a3a88f4 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfEndpointBuilder.java
@@ -19,7 +19,9 @@ package org.apache.camel.model.endpoint;
 import java.util.Map;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 import org.apache.camel.spi.HeaderFilterStrategy;
 
@@ -29,13 +31,13 @@ import org.apache.camel.spi.HeaderFilterStrategy;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CxfEndpoint {
+public interface CxfEndpointBuilder {
 
 
-    public static class CxfCommon<T extends EndpointDefinition>
+    public static class CxfCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CxfCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CxfCommonBuilder(String path) {
             super("cxf", path);
         }
         /**
@@ -285,12 +287,12 @@ public interface CxfEndpoint {
         }
     }
 
-    public static class CxfConsumer
+    public static class CxfConsumerBuilder
             extends
-                CxfCommon<CxfConsumer>
+                CxfCommonBuilder<CxfConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public CxfConsumer(String path) {
+                EndpointConsumerBuilder {
+        public CxfConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -302,9 +304,9 @@ public interface CxfEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public CxfConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public CxfConsumerBuilder bridgeErrorHandler(boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (CxfConsumer) this;
+            return (CxfConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -313,90 +315,94 @@ public interface CxfEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public CxfConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public CxfConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (CxfConsumer) this;
+            return (CxfConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public CxfConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public CxfConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (CxfConsumer) this;
+            return (CxfConsumerBuilder) this;
         }
     }
 
-    public static class CxfProducer
+    public static class CxfProducerBuilder
             extends
-                CxfCommon<CxfProducer>
+                CxfCommonBuilder<CxfProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CxfProducer(String path) {
+                EndpointProducerBuilder {
+        public CxfProducerBuilder(String path) {
             super(path);
         }
         /**
          * Configure a cookie handler to maintain a HTTP session. The option is
          * a org.apache.camel.http.common.cookie.CookieHandler type.
          */
-        public CxfProducer cookieHandler(Object cookieHandler) {
+        public CxfProducerBuilder cookieHandler(Object cookieHandler) {
             this.properties.put("cookieHandler", cookieHandler);
-            return (CxfProducer) this;
+            return (CxfProducerBuilder) this;
         }
         /**
          * This option will set the default operationName that will be used by
          * the CxfProducer which invokes the remote service. The option is a
          * java.lang.String type.
          */
-        public CxfProducer defaultOperationName(String defaultOperationName) {
+        public CxfProducerBuilder defaultOperationName(
+                String defaultOperationName) {
             this.properties.put("defaultOperationName", defaultOperationName);
-            return (CxfProducer) this;
+            return (CxfProducerBuilder) this;
         }
         /**
          * This option will set the default operationNamespace that will be used
          * by the CxfProducer which invokes the remote service. The option is a
          * java.lang.String type.
          */
-        public CxfProducer defaultOperationNamespace(
+        public CxfProducerBuilder defaultOperationNamespace(
                 String defaultOperationNamespace) {
             this.properties.put("defaultOperationNamespace", defaultOperationNamespace);
-            return (CxfProducer) this;
+            return (CxfProducerBuilder) this;
         }
         /**
          * The hostname verifier to be used. Use the # notation to reference a
          * HostnameVerifier from the registry. The option is a
          * javax.net.ssl.HostnameVerifier type.
          */
-        public CxfProducer hostnameVerifier(Object hostnameVerifier) {
+        public CxfProducerBuilder hostnameVerifier(Object hostnameVerifier) {
             this.properties.put("hostnameVerifier", hostnameVerifier);
-            return (CxfProducer) this;
+            return (CxfProducerBuilder) this;
         }
         /**
          * The Camel SSL setting reference. Use the # notation to reference the
          * SSL Context. The option is a
          * org.apache.camel.support.jsse.SSLContextParameters type.
          */
-        public CxfProducer sslContextParameters(Object sslContextParameters) {
+        public CxfProducerBuilder sslContextParameters(
+                Object sslContextParameters) {
             this.properties.put("sslContextParameters", sslContextParameters);
-            return (CxfProducer) this;
+            return (CxfProducerBuilder) this;
         }
         /**
          * Which kind of operation that CXF endpoint producer will invoke. The
          * option is a boolean type.
          */
-        public CxfProducer wrapped(boolean wrapped) {
+        public CxfProducerBuilder wrapped(boolean wrapped) {
             this.properties.put("wrapped", wrapped);
-            return (CxfProducer) this;
+            return (CxfProducerBuilder) this;
         }
     }
 
     public static enum DataFormat {
         PAYLOAD, RAW, MESSAGE, CXF_MESSAGE, POJO;
     }
-    public default CxfConsumer fromCxf(String path) {
-        return new CxfConsumer(path);
+    public default CxfConsumerBuilder fromCxf(String path) {
+        return new CxfConsumerBuilder(path);
     }
-    public default CxfProducer toCxf(String path) {
-        return new CxfProducer(path);
+    public default CxfProducerBuilder toCxf(String path) {
+        return new CxfProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfRsEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfRsEndpointBuilder.java
similarity index 84%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfRsEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfRsEndpointBuilder.java
index 1448879..e193752 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfRsEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/CxfRsEndpointBuilder.java
@@ -19,7 +19,9 @@ package org.apache.camel.model.endpoint;
 import java.util.List;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 import org.apache.camel.spi.HeaderFilterStrategy;
 
@@ -29,13 +31,13 @@ import org.apache.camel.spi.HeaderFilterStrategy;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface CxfRsEndpoint {
+public interface CxfRsEndpointBuilder {
 
 
-    public static class CxfRsCommon<T extends EndpointDefinition>
+    public static class CxfRsCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        CxfRsCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        CxfRsCommonBuilder(String path) {
             super("cxfrs", path);
         }
         /**
@@ -218,12 +220,12 @@ public interface CxfRsEndpoint {
         }
     }
 
-    public static class CxfRsConsumer
+    public static class CxfRsConsumerBuilder
             extends
-                CxfRsCommon<CxfRsConsumer>
+                CxfRsCommonBuilder<CxfRsConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public CxfRsConsumer(String path) {
+                EndpointConsumerBuilder {
+        public CxfRsConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -244,9 +246,9 @@ public interface CxfRsEndpoint {
          * binding option. The option is a
          * org.apache.camel.component.cxf.jaxrs.BindingStyle type.
          */
-        public CxfRsConsumer bindingStyle(BindingStyle bindingStyle) {
+        public CxfRsConsumerBuilder bindingStyle(BindingStyle bindingStyle) {
             this.properties.put("bindingStyle", bindingStyle);
-            return (CxfRsConsumer) this;
+            return (CxfRsConsumerBuilder) this;
         }
         /**
          * Allows for bridging the consumer to the Camel routing Error Handler,
@@ -257,18 +259,20 @@ public interface CxfRsEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public CxfRsConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public CxfRsConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (CxfRsConsumer) this;
+            return (CxfRsConsumerBuilder) this;
         }
         /**
          * This option can override the endpointUrl that published from the WADL
          * which can be accessed with resource address url plus _wadl. The
          * option is a java.lang.String type.
          */
-        public CxfRsConsumer publishedEndpointUrl(String publishedEndpointUrl) {
+        public CxfRsConsumerBuilder publishedEndpointUrl(
+                String publishedEndpointUrl) {
             this.properties.put("publishedEndpointUrl", publishedEndpointUrl);
-            return (CxfRsConsumer) this;
+            return (CxfRsConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -277,110 +281,113 @@ public interface CxfRsEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public CxfRsConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public CxfRsConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (CxfRsConsumer) this;
+            return (CxfRsConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public CxfRsConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public CxfRsConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (CxfRsConsumer) this;
+            return (CxfRsConsumerBuilder) this;
         }
         /**
          * The service beans which you want to export as REST service. Multiple
          * beans can be separated by comma. The option is a
          * java.util.List<java.lang.Object> type.
          */
-        public CxfRsConsumer serviceBeans(List<Object> serviceBeans) {
+        public CxfRsConsumerBuilder serviceBeans(List<Object> serviceBeans) {
             this.properties.put("serviceBeans", serviceBeans);
-            return (CxfRsConsumer) this;
+            return (CxfRsConsumerBuilder) this;
         }
     }
 
-    public static class CxfRsProducer
+    public static class CxfRsProducerBuilder
             extends
-                CxfRsCommon<CxfRsProducer>
+                CxfRsCommonBuilder<CxfRsProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public CxfRsProducer(String path) {
+                EndpointProducerBuilder {
+        public CxfRsProducerBuilder(String path) {
             super(path);
         }
         /**
          * Configure a cookie handler to maintain a HTTP session. The option is
          * a org.apache.camel.http.common.cookie.CookieHandler type.
          */
-        public CxfRsProducer cookieHandler(Object cookieHandler) {
+        public CxfRsProducerBuilder cookieHandler(Object cookieHandler) {
             this.properties.put("cookieHandler", cookieHandler);
-            return (CxfRsProducer) this;
+            return (CxfRsProducerBuilder) this;
         }
         /**
          * The hostname verifier to be used. Use the # notation to reference a
          * HostnameVerifier from the registry. The option is a
          * javax.net.ssl.HostnameVerifier type.
          */
-        public CxfRsProducer hostnameVerifier(Object hostnameVerifier) {
+        public CxfRsProducerBuilder hostnameVerifier(Object hostnameVerifier) {
             this.properties.put("hostnameVerifier", hostnameVerifier);
-            return (CxfRsProducer) this;
+            return (CxfRsProducerBuilder) this;
         }
         /**
          * The Camel SSL setting reference. Use the # notation to reference the
          * SSL Context. The option is a
          * org.apache.camel.support.jsse.SSLContextParameters type.
          */
-        public CxfRsProducer sslContextParameters(Object sslContextParameters) {
+        public CxfRsProducerBuilder sslContextParameters(
+                Object sslContextParameters) {
             this.properties.put("sslContextParameters", sslContextParameters);
-            return (CxfRsProducer) this;
+            return (CxfRsProducerBuilder) this;
         }
         /**
          * This option tells the CxfRsProducer to inspect return codes and will
          * generate an Exception if the return code is larger than 207. The
          * option is a boolean type.
          */
-        public CxfRsProducer throwExceptionOnFailure(
+        public CxfRsProducerBuilder throwExceptionOnFailure(
                 boolean throwExceptionOnFailure) {
             this.properties.put("throwExceptionOnFailure", throwExceptionOnFailure);
-            return (CxfRsProducer) this;
+            return (CxfRsProducerBuilder) this;
         }
         /**
          * If it is true, the CxfRsProducer will use the HttpClientAPI to invoke
          * the service. If it is false, the CxfRsProducer will use the
          * ProxyClientAPI to invoke the service. The option is a boolean type.
          */
-        public CxfRsProducer httpClientAPI(boolean httpClientAPI) {
+        public CxfRsProducerBuilder httpClientAPI(boolean httpClientAPI) {
             this.properties.put("httpClientAPI", httpClientAPI);
-            return (CxfRsProducer) this;
+            return (CxfRsProducerBuilder) this;
         }
         /**
          * This option is used to tell CxfRsProducer to ignore the message body
          * of the DELETE method when using HTTP API. The option is a boolean
          * type.
          */
-        public CxfRsProducer ignoreDeleteMethodMessageBody(
+        public CxfRsProducerBuilder ignoreDeleteMethodMessageBody(
                 boolean ignoreDeleteMethodMessageBody) {
             this.properties.put("ignoreDeleteMethodMessageBody", ignoreDeleteMethodMessageBody);
-            return (CxfRsProducer) this;
+            return (CxfRsProducerBuilder) this;
         }
         /**
          * This option allows you to configure the maximum size of the cache.
          * The implementation caches CXF clients or ClientFactoryBean in
          * CxfProvider and CxfRsProvider. The option is a int type.
          */
-        public CxfRsProducer maxClientCacheSize(int maxClientCacheSize) {
+        public CxfRsProducerBuilder maxClientCacheSize(int maxClientCacheSize) {
             this.properties.put("maxClientCacheSize", maxClientCacheSize);
-            return (CxfRsProducer) this;
+            return (CxfRsProducerBuilder) this;
         }
     }
 
     public static enum BindingStyle {
         SimpleConsumer, Default, Custom;
     }
-    public default CxfRsConsumer fromCxfRs(String path) {
-        return new CxfRsConsumer(path);
+    public default CxfRsConsumerBuilder fromCxfRs(String path) {
+        return new CxfRsConsumerBuilder(path);
     }
-    public default CxfRsProducer toCxfRs(String path) {
-        return new CxfRsProducer(path);
+    public default CxfRsProducerBuilder toCxfRs(String path) {
+        return new CxfRsProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataFormatEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataFormatEndpointBuilder.java
similarity index 78%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataFormatEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataFormatEndpointBuilder.java
index 849ed49..d742760 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataFormatEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataFormatEndpointBuilder.java
@@ -17,7 +17,9 @@
 package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * The dataformat component is used for working with Data Formats as if it was a
@@ -26,13 +28,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface DataFormatEndpoint {
+public interface DataFormatEndpointBuilder {
 
 
-    public static class DataFormatCommon<T extends EndpointDefinition>
+    public static class DataFormatCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        DataFormatCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        DataFormatCommonBuilder(String path) {
             super("dataformat", path);
         }
         /**
@@ -70,16 +72,16 @@ public interface DataFormatEndpoint {
         }
     }
 
-    public static class DataFormatProducer
+    public static class DataFormatProducerBuilder
             extends
-                DataFormatCommon<DataFormatProducer>
+                DataFormatCommonBuilder<DataFormatProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public DataFormatProducer(String path) {
+                EndpointProducerBuilder {
+        public DataFormatProducerBuilder(String path) {
             super(path);
         }
     }
-    public default DataFormatProducer toDataFormat(String path) {
-        return new DataFormatProducer(path);
+    public default DataFormatProducerBuilder toDataFormat(String path) {
+        return new DataFormatProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetEndpointBuilder.java
similarity index 78%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetEndpointBuilder.java
index f8923aa..93f3ac4 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetEndpointBuilder.java
@@ -17,7 +17,9 @@
 package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * The dataset component provides a mechanism to easily perform load & soak
@@ -26,13 +28,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface DataSetEndpoint {
+public interface DataSetEndpointBuilder {
 
 
-    public static class DataSetCommon<T extends EndpointDefinition>
+    public static class DataSetCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        DataSetCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        DataSetCommonBuilder(String path) {
             super("dataset", path);
         }
         /**
@@ -76,55 +78,55 @@ public interface DataSetEndpoint {
         }
     }
 
-    public static class DataSetConsumer
+    public static class DataSetConsumerBuilder
             extends
-                DataSetCommon<DataSetConsumer>
+                DataSetCommonBuilder<DataSetConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public DataSetConsumer(String path) {
+                EndpointConsumerBuilder {
+        public DataSetConsumerBuilder(String path) {
             super(path);
         }
         /**
          * Time period in millis to wait before starting sending messages. The
          * option is a long type.
          */
-        public DataSetConsumer initialDelay(long initialDelay) {
+        public DataSetConsumerBuilder initialDelay(long initialDelay) {
             this.properties.put("initialDelay", initialDelay);
-            return (DataSetConsumer) this;
+            return (DataSetConsumerBuilder) this;
         }
         /**
          * Wait until the DataSet contains at least this number of messages. The
          * option is a int type.
          */
-        public DataSetConsumer minRate(int minRate) {
+        public DataSetConsumerBuilder minRate(int minRate) {
             this.properties.put("minRate", minRate);
-            return (DataSetConsumer) this;
+            return (DataSetConsumerBuilder) this;
         }
         /**
          * Sets how many messages should be preloaded (sent) before the route
          * completes its initialization. The option is a long type.
          */
-        public DataSetConsumer preloadSize(long preloadSize) {
+        public DataSetConsumerBuilder preloadSize(long preloadSize) {
             this.properties.put("preloadSize", preloadSize);
-            return (DataSetConsumer) this;
+            return (DataSetConsumerBuilder) this;
         }
         /**
          * Allows a delay to be specified which causes a delay when a message is
          * sent by the consumer (to simulate slow processing). The option is a
          * long type.
          */
-        public DataSetConsumer produceDelay(long produceDelay) {
+        public DataSetConsumerBuilder produceDelay(long produceDelay) {
             this.properties.put("produceDelay", produceDelay);
-            return (DataSetConsumer) this;
+            return (DataSetConsumerBuilder) this;
         }
     }
 
-    public static class DataSetProducer
+    public static class DataSetProducerBuilder
             extends
-                DataSetCommon<DataSetProducer>
+                DataSetCommonBuilder<DataSetProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public DataSetProducer(String path) {
+                EndpointProducerBuilder {
+        public DataSetProducerBuilder(String path) {
             super(path);
         }
         /**
@@ -132,9 +134,9 @@ public interface DataSetEndpoint {
          * consumed by the producer (to simulate slow processing). The option is
          * a long type.
          */
-        public DataSetProducer consumeDelay(long consumeDelay) {
+        public DataSetProducerBuilder consumeDelay(long consumeDelay) {
             this.properties.put("consumeDelay", consumeDelay);
-            return (DataSetProducer) this;
+            return (DataSetProducerBuilder) this;
         }
         /**
          * Sets a grace period after which the mock endpoint will re-assert to
@@ -147,9 +149,9 @@ public interface DataSetEndpoint {
          * method for. By default this period is disabled. The option is a long
          * type.
          */
-        public DataSetProducer assertPeriod(long assertPeriod) {
+        public DataSetProducerBuilder assertPeriod(long assertPeriod) {
             this.properties.put("assertPeriod", assertPeriod);
-            return (DataSetProducer) this;
+            return (DataSetProducerBuilder) this;
         }
         /**
          * Specifies the expected number of message exchanges that should be
@@ -165,35 +167,36 @@ public interface DataSetEndpoint {
          * this mock endpoint, then see also the setAssertPeriod(long) method
          * for further details. The option is a int type.
          */
-        public DataSetProducer expectedCount(int expectedCount) {
+        public DataSetProducerBuilder expectedCount(int expectedCount) {
             this.properties.put("expectedCount", expectedCount);
-            return (DataSetProducer) this;
+            return (DataSetProducerBuilder) this;
         }
         /**
          * A number that is used to turn on throughput logging based on groups
          * of the size. The option is a int type.
          */
-        public DataSetProducer reportGroup(int reportGroup) {
+        public DataSetProducerBuilder reportGroup(int reportGroup) {
             this.properties.put("reportGroup", reportGroup);
-            return (DataSetProducer) this;
+            return (DataSetProducerBuilder) this;
         }
         /**
          * Sets the minimum expected amount of time (in millis) the
          * assertIsSatisfied() will wait on a latch until it is satisfied. The
          * option is a long type.
          */
-        public DataSetProducer resultMinimumWaitTime(long resultMinimumWaitTime) {
+        public DataSetProducerBuilder resultMinimumWaitTime(
+                long resultMinimumWaitTime) {
             this.properties.put("resultMinimumWaitTime", resultMinimumWaitTime);
-            return (DataSetProducer) this;
+            return (DataSetProducerBuilder) this;
         }
         /**
          * Sets the maximum amount of time (in millis) the assertIsSatisfied()
          * will wait on a latch until it is satisfied. The option is a long
          * type.
          */
-        public DataSetProducer resultWaitTime(long resultWaitTime) {
+        public DataSetProducerBuilder resultWaitTime(long resultWaitTime) {
             this.properties.put("resultWaitTime", resultWaitTime);
-            return (DataSetProducer) this;
+            return (DataSetProducerBuilder) this;
         }
         /**
          * Specifies to only retain the first n'th number of received Exchanges.
@@ -211,9 +214,9 @@ public interface DataSetEndpoint {
          * both setRetainFirst(int) and setRetainLast(int) methods, to limit
          * both the first and last received. The option is a int type.
          */
-        public DataSetProducer retainFirst(int retainFirst) {
+        public DataSetProducerBuilder retainFirst(int retainFirst) {
             this.properties.put("retainFirst", retainFirst);
-            return (DataSetProducer) this;
+            return (DataSetProducerBuilder) this;
         }
         /**
          * Specifies to only retain the last n'th number of received Exchanges.
@@ -231,33 +234,33 @@ public interface DataSetEndpoint {
          * setRetainFirst(int) and setRetainLast(int) methods, to limit both the
          * first and last received. The option is a int type.
          */
-        public DataSetProducer retainLast(int retainLast) {
+        public DataSetProducerBuilder retainLast(int retainLast) {
             this.properties.put("retainLast", retainLast);
-            return (DataSetProducer) this;
+            return (DataSetProducerBuilder) this;
         }
         /**
          * Allows a sleep to be specified to wait to check that this endpoint
          * really is empty when expectedMessageCount(int) is called with zero.
          * The option is a long type.
          */
-        public DataSetProducer sleepForEmptyTest(long sleepForEmptyTest) {
+        public DataSetProducerBuilder sleepForEmptyTest(long sleepForEmptyTest) {
             this.properties.put("sleepForEmptyTest", sleepForEmptyTest);
-            return (DataSetProducer) this;
+            return (DataSetProducerBuilder) this;
         }
         /**
          * Sets whether to make a deep copy of the incoming Exchange when
          * received at this mock endpoint. Is by default true. The option is a
          * boolean type.
          */
-        public DataSetProducer copyOnExchange(boolean copyOnExchange) {
+        public DataSetProducerBuilder copyOnExchange(boolean copyOnExchange) {
             this.properties.put("copyOnExchange", copyOnExchange);
-            return (DataSetProducer) this;
+            return (DataSetProducerBuilder) this;
         }
     }
-    public default DataSetConsumer fromDataSet(String path) {
-        return new DataSetConsumer(path);
+    public default DataSetConsumerBuilder fromDataSet(String path) {
+        return new DataSetConsumerBuilder(path);
     }
-    public default DataSetProducer toDataSet(String path) {
-        return new DataSetProducer(path);
+    public default DataSetProducerBuilder toDataSet(String path) {
+        return new DataSetProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetTestEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetTestEndpointBuilder.java
similarity index 82%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetTestEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetTestEndpointBuilder.java
index 4dd5d1f..a710689 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetTestEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DataSetTestEndpointBuilder.java
@@ -17,7 +17,9 @@
 package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * The dataset-test component extends the mock component by on startup to pull
@@ -26,13 +28,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface DataSetTestEndpoint {
+public interface DataSetTestEndpointBuilder {
 
 
-    public static class DataSetTestCommon<T extends EndpointDefinition>
+    public static class DataSetTestCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        DataSetTestCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        DataSetTestCommonBuilder(String path) {
             super("dataset-test", path);
         }
         /**
@@ -98,12 +100,12 @@ public interface DataSetTestEndpoint {
         }
     }
 
-    public static class DataSetTestProducer
+    public static class DataSetTestProducerBuilder
             extends
-                DataSetTestCommon<DataSetTestProducer>
+                DataSetTestCommonBuilder<DataSetTestProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public DataSetTestProducer(String path) {
+                EndpointProducerBuilder {
+        public DataSetTestProducerBuilder(String path) {
             super(path);
         }
         /**
@@ -117,9 +119,9 @@ public interface DataSetTestEndpoint {
          * method for. By default this period is disabled. The option is a long
          * type.
          */
-        public DataSetTestProducer assertPeriod(long assertPeriod) {
+        public DataSetTestProducerBuilder assertPeriod(long assertPeriod) {
             this.properties.put("assertPeriod", assertPeriod);
-            return (DataSetTestProducer) this;
+            return (DataSetTestProducerBuilder) this;
         }
         /**
          * Specifies the expected number of message exchanges that should be
@@ -135,36 +137,36 @@ public interface DataSetTestEndpoint {
          * this mock endpoint, then see also the setAssertPeriod(long) method
          * for further details. The option is a int type.
          */
-        public DataSetTestProducer expectedCount(int expectedCount) {
+        public DataSetTestProducerBuilder expectedCount(int expectedCount) {
             this.properties.put("expectedCount", expectedCount);
-            return (DataSetTestProducer) this;
+            return (DataSetTestProducerBuilder) this;
         }
         /**
          * A number that is used to turn on throughput logging based on groups
          * of the size. The option is a int type.
          */
-        public DataSetTestProducer reportGroup(int reportGroup) {
+        public DataSetTestProducerBuilder reportGroup(int reportGroup) {
             this.properties.put("reportGroup", reportGroup);
-            return (DataSetTestProducer) this;
+            return (DataSetTestProducerBuilder) this;
         }
         /**
          * Sets the minimum expected amount of time (in millis) the
          * assertIsSatisfied() will wait on a latch until it is satisfied. The
          * option is a long type.
          */
-        public DataSetTestProducer resultMinimumWaitTime(
+        public DataSetTestProducerBuilder resultMinimumWaitTime(
                 long resultMinimumWaitTime) {
             this.properties.put("resultMinimumWaitTime", resultMinimumWaitTime);
-            return (DataSetTestProducer) this;
+            return (DataSetTestProducerBuilder) this;
         }
         /**
          * Sets the maximum amount of time (in millis) the assertIsSatisfied()
          * will wait on a latch until it is satisfied. The option is a long
          * type.
          */
-        public DataSetTestProducer resultWaitTime(long resultWaitTime) {
+        public DataSetTestProducerBuilder resultWaitTime(long resultWaitTime) {
             this.properties.put("resultWaitTime", resultWaitTime);
-            return (DataSetTestProducer) this;
+            return (DataSetTestProducerBuilder) this;
         }
         /**
          * Specifies to only retain the first n'th number of received Exchanges.
@@ -182,9 +184,9 @@ public interface DataSetTestEndpoint {
          * both setRetainFirst(int) and setRetainLast(int) methods, to limit
          * both the first and last received. The option is a int type.
          */
-        public DataSetTestProducer retainFirst(int retainFirst) {
+        public DataSetTestProducerBuilder retainFirst(int retainFirst) {
             this.properties.put("retainFirst", retainFirst);
-            return (DataSetTestProducer) this;
+            return (DataSetTestProducerBuilder) this;
         }
         /**
          * Specifies to only retain the last n'th number of received Exchanges.
@@ -202,30 +204,31 @@ public interface DataSetTestEndpoint {
          * setRetainFirst(int) and setRetainLast(int) methods, to limit both the
          * first and last received. The option is a int type.
          */
-        public DataSetTestProducer retainLast(int retainLast) {
+        public DataSetTestProducerBuilder retainLast(int retainLast) {
             this.properties.put("retainLast", retainLast);
-            return (DataSetTestProducer) this;
+            return (DataSetTestProducerBuilder) this;
         }
         /**
          * Allows a sleep to be specified to wait to check that this endpoint
          * really is empty when expectedMessageCount(int) is called with zero.
          * The option is a long type.
          */
-        public DataSetTestProducer sleepForEmptyTest(long sleepForEmptyTest) {
+        public DataSetTestProducerBuilder sleepForEmptyTest(
+                long sleepForEmptyTest) {
             this.properties.put("sleepForEmptyTest", sleepForEmptyTest);
-            return (DataSetTestProducer) this;
+            return (DataSetTestProducerBuilder) this;
         }
         /**
          * Sets whether to make a deep copy of the incoming Exchange when
          * received at this mock endpoint. Is by default true. The option is a
          * boolean type.
          */
-        public DataSetTestProducer copyOnExchange(boolean copyOnExchange) {
+        public DataSetTestProducerBuilder copyOnExchange(boolean copyOnExchange) {
             this.properties.put("copyOnExchange", copyOnExchange);
-            return (DataSetTestProducer) this;
+            return (DataSetTestProducerBuilder) this;
         }
     }
-    public default DataSetTestProducer toDataSetTest(String path) {
-        return new DataSetTestProducer(path);
+    public default DataSetTestProducerBuilder toDataSetTest(String path) {
+        return new DataSetTestProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbEndpointBuilder.java
similarity index 90%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbEndpointBuilder.java
index 1d510cc..9b8187c 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbEndpointBuilder.java
@@ -17,7 +17,9 @@
 package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * The aws-ddb component is used for storing and retrieving data from Amazon's
@@ -26,13 +28,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface DdbEndpoint {
+public interface DdbEndpointBuilder {
 
 
-    public static class DdbCommon<T extends EndpointDefinition>
+    public static class DdbCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        DdbCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        DdbCommonBuilder(String path) {
             super("aws-ddb", path);
         }
         /**
@@ -157,12 +159,12 @@ public interface DdbEndpoint {
         }
     }
 
-    public static class DdbProducer
+    public static class DdbProducerBuilder
             extends
-                DdbCommon<DdbProducer>
+                DdbCommonBuilder<DdbProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public DdbProducer(String path) {
+                EndpointProducerBuilder {
+        public DdbProducerBuilder(String path) {
             super(path);
         }
     }
@@ -170,7 +172,7 @@ public interface DdbEndpoint {
     public static enum DdbOperations {
         BatchGetItems, DeleteItem, DeleteTable, DescribeTable, GetItem, PutItem, Query, Scan, UpdateItem, UpdateTable;
     }
-    public default DdbProducer toDdb(String path) {
-        return new DdbProducer(path);
+    public default DdbProducerBuilder toDdb(String path) {
+        return new DdbProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbStreamEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbStreamEndpointBuilder.java
similarity index 76%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbStreamEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbStreamEndpointBuilder.java
index 2b85b2e..e2e9771 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbStreamEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DdbStreamEndpointBuilder.java
@@ -22,7 +22,9 @@ import java.util.concurrent.TimeUnit;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
 import org.apache.camel.LoggingLevel;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 import org.apache.camel.spi.PollingConsumerPollStrategy;
 import org.apache.camel.spi.ScheduledPollConsumerScheduler;
@@ -33,13 +35,13 @@ import org.apache.camel.spi.ScheduledPollConsumerScheduler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface DdbStreamEndpoint {
+public interface DdbStreamEndpointBuilder {
 
 
-    public static class DdbStreamCommon<T extends EndpointDefinition>
+    public static class DdbStreamCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        DdbStreamCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        DdbStreamCommonBuilder(String path) {
             super("aws-ddbstream", path);
         }
         /**
@@ -100,30 +102,30 @@ public interface DdbStreamEndpoint {
         }
     }
 
-    public static class DdbStreamConsumer
+    public static class DdbStreamConsumerBuilder
             extends
-                DdbStreamCommon<DdbStreamConsumer>
+                DdbStreamCommonBuilder<DdbStreamConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public DdbStreamConsumer(String path) {
+                EndpointConsumerBuilder {
+        public DdbStreamConsumerBuilder(String path) {
             super(path);
         }
         /**
          * Name of the dynamodb table. The option is a java.lang.String type.
          */
-        public DdbStreamConsumer tableName(String tableName) {
+        public DdbStreamConsumerBuilder tableName(String tableName) {
             this.properties.put("tableName", tableName);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * Amazon DynamoDB client to use for all requests for this endpoint. The
          * option is a com.amazonaws.services.dynamodbv2.AmazonDynamoDBStreams
          * type.
          */
-        public DdbStreamConsumer amazonDynamoDbStreamsClient(
+        public DdbStreamConsumerBuilder amazonDynamoDbStreamsClient(
                 Object amazonDynamoDbStreamsClient) {
             this.properties.put("amazonDynamoDbStreamsClient", amazonDynamoDbStreamsClient);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * Allows for bridging the consumer to the Camel routing Error Handler,
@@ -134,9 +136,10 @@ public interface DdbStreamEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public DdbStreamConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public DdbStreamConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * Defines where in the DynaboDB stream to start getting records. Note
@@ -145,27 +148,29 @@ public interface DdbStreamEndpoint {
          * used, then a sequenceNumberProvider MUST be supplied. The option is a
          * com.amazonaws.services.dynamodbv2.model.ShardIteratorType type.
          */
-        public DdbStreamConsumer iteratorType(ShardIteratorType iteratorType) {
+        public DdbStreamConsumerBuilder iteratorType(
+                ShardIteratorType iteratorType) {
             this.properties.put("iteratorType", iteratorType);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * Maximum number of records that will be fetched in each poll. The
          * option is a int type.
          */
-        public DdbStreamConsumer maxResultsPerRequest(int maxResultsPerRequest) {
+        public DdbStreamConsumerBuilder maxResultsPerRequest(
+                int maxResultsPerRequest) {
             this.properties.put("maxResultsPerRequest", maxResultsPerRequest);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * If the polling consumer did not poll any files, you can enable this
          * option to send an empty message (no body) instead. The option is a
          * boolean type.
          */
-        public DdbStreamConsumer sendEmptyMessageWhenIdle(
+        public DdbStreamConsumerBuilder sendEmptyMessageWhenIdle(
                 boolean sendEmptyMessageWhenIdle) {
             this.properties.put("sendEmptyMessageWhenIdle", sendEmptyMessageWhenIdle);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * Provider for the sequence number when using one of the two
@@ -173,10 +178,10 @@ public interface DdbStreamEndpoint {
          * registry reference or a literal sequence number. The option is a
          * org.apache.camel.component.aws.ddbstream.SequenceNumberProvider type.
          */
-        public DdbStreamConsumer sequenceNumberProvider(
+        public DdbStreamConsumerBuilder sequenceNumberProvider(
                 Object sequenceNumberProvider) {
             this.properties.put("sequenceNumberProvider", sequenceNumberProvider);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -185,18 +190,19 @@ public interface DdbStreamEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public DdbStreamConsumer exceptionHandler(
+        public DdbStreamConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public DdbStreamConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public DdbStreamConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing
@@ -205,27 +211,29 @@ public interface DdbStreamEndpoint {
          * been created and being routed in Camel. The option is a
          * org.apache.camel.spi.PollingConsumerPollStrategy type.
          */
-        public DdbStreamConsumer pollStrategy(
+        public DdbStreamConsumerBuilder pollStrategy(
                 PollingConsumerPollStrategy pollStrategy) {
             this.properties.put("pollStrategy", pollStrategy);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * The number of subsequent error polls (failed due some error) that
          * should happen before the backoffMultipler should kick-in. The option
          * is a int type.
          */
-        public DdbStreamConsumer backoffErrorThreshold(int backoffErrorThreshold) {
+        public DdbStreamConsumerBuilder backoffErrorThreshold(
+                int backoffErrorThreshold) {
             this.properties.put("backoffErrorThreshold", backoffErrorThreshold);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * The number of subsequent idle polls that should happen before the
          * backoffMultipler should kick-in. The option is a int type.
          */
-        public DdbStreamConsumer backoffIdleThreshold(int backoffIdleThreshold) {
+        public DdbStreamConsumerBuilder backoffIdleThreshold(
+                int backoffIdleThreshold) {
             this.properties.put("backoffIdleThreshold", backoffIdleThreshold);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * To let the scheduled polling consumer backoff if there has been a
@@ -235,45 +243,46 @@ public interface DdbStreamEndpoint {
          * backoffIdleThreshold and/or backoffErrorThreshold must also be
          * configured. The option is a int type.
          */
-        public DdbStreamConsumer backoffMultiplier(int backoffMultiplier) {
+        public DdbStreamConsumerBuilder backoffMultiplier(int backoffMultiplier) {
             this.properties.put("backoffMultiplier", backoffMultiplier);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * Milliseconds before the next poll. You can also specify time values
          * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
          */
-        public DdbStreamConsumer delay(long delay) {
+        public DdbStreamConsumerBuilder delay(long delay) {
             this.properties.put("delay", delay);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * If greedy is enabled, then the ScheduledPollConsumer will run
          * immediately again, if the previous run polled 1 or more messages. The
          * option is a boolean type.
          */
-        public DdbStreamConsumer greedy(boolean greedy) {
+        public DdbStreamConsumerBuilder greedy(boolean greedy) {
             this.properties.put("greedy", greedy);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * Milliseconds before the first poll starts. You can also specify time
          * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30
          * seconds), and 1h (1 hour). The option is a long type.
          */
-        public DdbStreamConsumer initialDelay(long initialDelay) {
+        public DdbStreamConsumerBuilder initialDelay(long initialDelay) {
             this.properties.put("initialDelay", initialDelay);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * The consumer logs a start/complete log line when it polls. This
          * option allows you to configure the logging level for that. The option
          * is a org.apache.camel.LoggingLevel type.
          */
-        public DdbStreamConsumer runLoggingLevel(LoggingLevel runLoggingLevel) {
+        public DdbStreamConsumerBuilder runLoggingLevel(
+                LoggingLevel runLoggingLevel) {
             this.properties.put("runLoggingLevel", runLoggingLevel);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * Allows for configuring a custom/shared thread pool to use for the
@@ -281,62 +290,62 @@ public interface DdbStreamEndpoint {
          * pool. The option is a java.util.concurrent.ScheduledExecutorService
          * type.
          */
-        public DdbStreamConsumer scheduledExecutorService(
+        public DdbStreamConsumerBuilder scheduledExecutorService(
                 ScheduledExecutorService scheduledExecutorService) {
             this.properties.put("scheduledExecutorService", scheduledExecutorService);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz2
          * component. The option is a
          * org.apache.camel.spi.ScheduledPollConsumerScheduler type.
          */
-        public DdbStreamConsumer scheduler(
+        public DdbStreamConsumerBuilder scheduler(
                 ScheduledPollConsumerScheduler scheduler) {
             this.properties.put("scheduler", scheduler);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * To configure additional properties when using a custom scheduler or
          * any of the Quartz2, Spring based scheduler. The option is a
          * java.util.Map<java.lang.String,java.lang.Object> type.
          */
-        public DdbStreamConsumer schedulerProperties(
+        public DdbStreamConsumerBuilder schedulerProperties(
                 Map<String, Object> schedulerProperties) {
             this.properties.put("schedulerProperties", schedulerProperties);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * Whether the scheduler should be auto started. The option is a boolean
          * type.
          */
-        public DdbStreamConsumer startScheduler(boolean startScheduler) {
+        public DdbStreamConsumerBuilder startScheduler(boolean startScheduler) {
             this.properties.put("startScheduler", startScheduler);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * Time unit for initialDelay and delay options. The option is a
          * java.util.concurrent.TimeUnit type.
          */
-        public DdbStreamConsumer timeUnit(TimeUnit timeUnit) {
+        public DdbStreamConsumerBuilder timeUnit(TimeUnit timeUnit) {
             this.properties.put("timeUnit", timeUnit);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
         /**
          * Controls if fixed delay or fixed rate is used. See
          * ScheduledExecutorService in JDK for details. The option is a boolean
          * type.
          */
-        public DdbStreamConsumer useFixedDelay(boolean useFixedDelay) {
+        public DdbStreamConsumerBuilder useFixedDelay(boolean useFixedDelay) {
             this.properties.put("useFixedDelay", useFixedDelay);
-            return (DdbStreamConsumer) this;
+            return (DdbStreamConsumerBuilder) this;
         }
     }
 
     public static enum ShardIteratorType {
         TRIM_HORIZON, LATEST, AT_SEQUENCE_NUMBER, AFTER_SEQUENCE_NUMBER;
     }
-    public default DdbStreamConsumer fromDdbStream(String path) {
-        return new DdbStreamConsumer(path);
+    public default DdbStreamConsumerBuilder fromDdbStream(String path) {
+        return new DdbStreamConsumerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DigitalOceanEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DigitalOceanEndpointBuilder.java
similarity index 88%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/DigitalOceanEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/DigitalOceanEndpointBuilder.java
index 1d726ab..a7aea1f 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DigitalOceanEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DigitalOceanEndpointBuilder.java
@@ -17,7 +17,9 @@
 package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * The DigitalOcean component allows you to manage Droplets and resources within
@@ -26,13 +28,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface DigitalOceanEndpoint {
+public interface DigitalOceanEndpointBuilder {
 
 
-    public static class DigitalOceanCommon<T extends EndpointDefinition>
+    public static class DigitalOceanCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        DigitalOceanCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        DigitalOceanCommonBuilder(String path) {
             super("digitalocean", path);
         }
         /**
@@ -133,12 +135,12 @@ public interface DigitalOceanEndpoint {
         }
     }
 
-    public static class DigitalOceanProducer
+    public static class DigitalOceanProducerBuilder
             extends
-                DigitalOceanCommon<DigitalOceanProducer>
+                DigitalOceanCommonBuilder<DigitalOceanProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public DigitalOceanProducer(String path) {
+                EndpointProducerBuilder {
+        public DigitalOceanProducerBuilder(String path) {
             super(path);
         }
     }
@@ -150,7 +152,7 @@ public interface DigitalOceanEndpoint {
     public static enum DigitalOceanResources {
         account, actions, blockStorages, droplets, mages, snapshots, keys, regions, sizes, floatingIPs, tags;
     }
-    public default DigitalOceanProducer toDigitalOcean(String path) {
-        return new DigitalOceanProducer(path);
+    public default DigitalOceanProducerBuilder toDigitalOcean(String path) {
+        return new DigitalOceanProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DigitalSignatureEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DigitalSignatureEndpointBuilder.java
similarity index 92%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/DigitalSignatureEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/DigitalSignatureEndpointBuilder.java
index 5c8c6ec..978decd 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DigitalSignatureEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DigitalSignatureEndpointBuilder.java
@@ -22,7 +22,9 @@ import java.security.PublicKey;
 import java.security.SecureRandom;
 import java.security.cert.Certificate;
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * The crypto component is used for signing and verifying exchanges using the
@@ -31,13 +33,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface DigitalSignatureEndpoint {
+public interface DigitalSignatureEndpointBuilder {
 
 
-    public static class DigitalSignatureCommon<T extends EndpointDefinition>
+    public static class DigitalSignatureCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        DigitalSignatureCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        DigitalSignatureCommonBuilder(String path) {
             super("crypto", path);
         }
         /**
@@ -239,12 +241,12 @@ public interface DigitalSignatureEndpoint {
         }
     }
 
-    public static class DigitalSignatureProducer
+    public static class DigitalSignatureProducerBuilder
             extends
-                DigitalSignatureCommon<DigitalSignatureProducer>
+                DigitalSignatureCommonBuilder<DigitalSignatureProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public DigitalSignatureProducer(String path) {
+                EndpointProducerBuilder {
+        public DigitalSignatureProducerBuilder(String path) {
             super(path);
         }
     }
@@ -252,7 +254,8 @@ public interface DigitalSignatureEndpoint {
     public static enum CryptoOperation {
         sign, verify;
     }
-    public default DigitalSignatureProducer toDigitalSignature(String path) {
-        return new DigitalSignatureProducer(path);
+    public default DigitalSignatureProducerBuilder toDigitalSignature(
+            String path) {
+        return new DigitalSignatureProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectEndpointBuilder.java
similarity index 71%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectEndpointBuilder.java
index fea4696..96f3e8f 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -28,13 +30,13 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface DirectEndpoint {
+public interface DirectEndpointBuilder {
 
 
-    public static class DirectCommon<T extends EndpointDefinition>
+    public static class DirectCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        DirectCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        DirectCommonBuilder(String path) {
             super("direct", path);
         }
         /**
@@ -64,12 +66,12 @@ public interface DirectEndpoint {
         }
     }
 
-    public static class DirectConsumer
+    public static class DirectConsumerBuilder
             extends
-                DirectCommon<DirectConsumer>
+                DirectCommonBuilder<DirectConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public DirectConsumer(String path) {
+                EndpointConsumerBuilder {
+        public DirectConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -81,9 +83,10 @@ public interface DirectEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public DirectConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public DirectConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (DirectConsumer) this;
+            return (DirectConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -92,26 +95,28 @@ public interface DirectEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public DirectConsumer exceptionHandler(ExceptionHandler exceptionHandler) {
+        public DirectConsumerBuilder exceptionHandler(
+                ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (DirectConsumer) this;
+            return (DirectConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public DirectConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public DirectConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (DirectConsumer) this;
+            return (DirectConsumerBuilder) this;
         }
     }
 
-    public static class DirectProducer
+    public static class DirectProducerBuilder
             extends
-                DirectCommon<DirectProducer>
+                DirectCommonBuilder<DirectProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public DirectProducer(String path) {
+                EndpointProducerBuilder {
+        public DirectProducerBuilder(String path) {
             super(path);
         }
         /**
@@ -119,32 +124,32 @@ public interface DirectEndpoint {
          * consumer, then we can tell the producer to block and wait for the
          * consumer to become active. The option is a boolean type.
          */
-        public DirectProducer block(boolean block) {
+        public DirectProducerBuilder block(boolean block) {
             this.properties.put("block", block);
-            return (DirectProducer) this;
+            return (DirectProducerBuilder) this;
         }
         /**
          * Whether the producer should fail by throwing an exception, when
          * sending to a DIRECT endpoint with no active consumers. The option is
          * a boolean type.
          */
-        public DirectProducer failIfNoConsumers(boolean failIfNoConsumers) {
+        public DirectProducerBuilder failIfNoConsumers(boolean failIfNoConsumers) {
             this.properties.put("failIfNoConsumers", failIfNoConsumers);
-            return (DirectProducer) this;
+            return (DirectProducerBuilder) this;
         }
         /**
          * The timeout value to use if block is enabled. The option is a long
          * type.
          */
-        public DirectProducer timeout(long timeout) {
+        public DirectProducerBuilder timeout(long timeout) {
             this.properties.put("timeout", timeout);
-            return (DirectProducer) this;
+            return (DirectProducerBuilder) this;
         }
     }
-    public default DirectConsumer fromDirect(String path) {
-        return new DirectConsumer(path);
+    public default DirectConsumerBuilder fromDirect(String path) {
+        return new DirectConsumerBuilder(path);
     }
-    public default DirectProducer toDirect(String path) {
-        return new DirectProducer(path);
+    public default DirectProducerBuilder toDirect(String path) {
+        return new DirectProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectVmEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectVmEndpointBuilder.java
similarity index 73%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectVmEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectVmEndpointBuilder.java
index c02539d..3f91498 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectVmEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DirectVmEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 import org.apache.camel.spi.HeaderFilterStrategy;
 
@@ -29,13 +31,13 @@ import org.apache.camel.spi.HeaderFilterStrategy;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface DirectVmEndpoint {
+public interface DirectVmEndpointBuilder {
 
 
-    public static class DirectVmCommon<T extends EndpointDefinition>
+    public static class DirectVmCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        DirectVmCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        DirectVmCommonBuilder(String path) {
             super("direct-vm", path);
         }
         /**
@@ -74,12 +76,12 @@ public interface DirectVmEndpoint {
         }
     }
 
-    public static class DirectVmConsumer
+    public static class DirectVmConsumerBuilder
             extends
-                DirectVmCommon<DirectVmConsumer>
+                DirectVmCommonBuilder<DirectVmConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public DirectVmConsumer(String path) {
+                EndpointConsumerBuilder {
+        public DirectVmConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -91,9 +93,10 @@ public interface DirectVmEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public DirectVmConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public DirectVmConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (DirectVmConsumer) this;
+            return (DirectVmConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -102,27 +105,28 @@ public interface DirectVmEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public DirectVmConsumer exceptionHandler(
+        public DirectVmConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (DirectVmConsumer) this;
+            return (DirectVmConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public DirectVmConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public DirectVmConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (DirectVmConsumer) this;
+            return (DirectVmConsumerBuilder) this;
         }
     }
 
-    public static class DirectVmProducer
+    public static class DirectVmProducerBuilder
             extends
-                DirectVmCommon<DirectVmProducer>
+                DirectVmCommonBuilder<DirectVmProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public DirectVmProducer(String path) {
+                EndpointProducerBuilder {
+        public DirectVmProducerBuilder(String path) {
             super(path);
         }
         /**
@@ -130,42 +134,43 @@ public interface DirectVmEndpoint {
          * consumer, then we can tell the producer to block and wait for the
          * consumer to become active. The option is a boolean type.
          */
-        public DirectVmProducer block(boolean block) {
+        public DirectVmProducerBuilder block(boolean block) {
             this.properties.put("block", block);
-            return (DirectVmProducer) this;
+            return (DirectVmProducerBuilder) this;
         }
         /**
          * Whether the producer should fail by throwing an exception, when
          * sending to a Direct-VM endpoint with no active consumers. The option
          * is a boolean type.
          */
-        public DirectVmProducer failIfNoConsumers(boolean failIfNoConsumers) {
+        public DirectVmProducerBuilder failIfNoConsumers(
+                boolean failIfNoConsumers) {
             this.properties.put("failIfNoConsumers", failIfNoConsumers);
-            return (DirectVmProducer) this;
+            return (DirectVmProducerBuilder) this;
         }
         /**
          * The timeout value to use if block is enabled. The option is a long
          * type.
          */
-        public DirectVmProducer timeout(long timeout) {
+        public DirectVmProducerBuilder timeout(long timeout) {
             this.properties.put("timeout", timeout);
-            return (DirectVmProducer) this;
+            return (DirectVmProducerBuilder) this;
         }
         /**
          * Sets a HeaderFilterStrategy that will only be applied on producer
          * endpoints (on both directions: request and response). Default value:
          * none. The option is a org.apache.camel.spi.HeaderFilterStrategy type.
          */
-        public DirectVmProducer headerFilterStrategy(
+        public DirectVmProducerBuilder headerFilterStrategy(
                 HeaderFilterStrategy headerFilterStrategy) {
             this.properties.put("headerFilterStrategy", headerFilterStrategy);
-            return (DirectVmProducer) this;
+            return (DirectVmProducerBuilder) this;
         }
     }
-    public default DirectVmConsumer fromDirectVm(String path) {
-        return new DirectVmConsumer(path);
+    public default DirectVmConsumerBuilder fromDirectVm(String path) {
+        return new DirectVmConsumerBuilder(path);
     }
-    public default DirectVmProducer toDirectVm(String path) {
-        return new DirectVmProducer(path);
+    public default DirectVmProducerBuilder toDirectVm(String path) {
+        return new DirectVmProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorVmEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorEndpointBuilder.java
similarity index 76%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorVmEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorEndpointBuilder.java
index b1cda8d..62f305e 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorVmEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorEndpointBuilder.java
@@ -19,7 +19,9 @@ package org.apache.camel.model.endpoint;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
 import org.apache.camel.WaitForTaskToComplete;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -29,14 +31,14 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface DisruptorVmEndpoint {
+public interface DisruptorEndpointBuilder {
 
 
-    public static class DisruptorVmCommon<T extends EndpointDefinition>
+    public static class DisruptorCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        DisruptorVmCommon(String path) {
-            super("disruptor-vm", path);
+                AbstractEndpointBuilder<T> {
+        DisruptorCommonBuilder(String path) {
+            super("disruptor", path);
         }
         /**
          * Name of queue. The option is a java.lang.String type.
@@ -77,12 +79,12 @@ public interface DisruptorVmEndpoint {
         }
     }
 
-    public static class DisruptorVmConsumer
+    public static class DisruptorConsumerBuilder
             extends
-                DisruptorVmCommon<DisruptorVmConsumer>
+                DisruptorCommonBuilder<DisruptorConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public DisruptorVmConsumer(String path) {
+                EndpointConsumerBuilder {
+        public DisruptorConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -94,17 +96,19 @@ public interface DisruptorVmEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public DisruptorVmConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public DisruptorConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (DisruptorVmConsumer) this;
+            return (DisruptorConsumerBuilder) this;
         }
         /**
          * Number of concurrent threads processing exchanges. The option is a
          * int type.
          */
-        public DisruptorVmConsumer concurrentConsumers(int concurrentConsumers) {
+        public DisruptorConsumerBuilder concurrentConsumers(
+                int concurrentConsumers) {
             this.properties.put("concurrentConsumers", concurrentConsumers);
-            return (DisruptorVmConsumer) this;
+            return (DisruptorConsumerBuilder) this;
         }
         /**
          * Specifies whether multiple consumers are allowed. If enabled, you can
@@ -113,9 +117,10 @@ public interface DisruptorVmEndpoint {
          * message. When enabled, this option should be specified on every
          * consumer endpoint. The option is a boolean type.
          */
-        public DisruptorVmConsumer multipleConsumers(boolean multipleConsumers) {
+        public DisruptorConsumerBuilder multipleConsumers(
+                boolean multipleConsumers) {
             this.properties.put("multipleConsumers", multipleConsumers);
-            return (DisruptorVmConsumer) this;
+            return (DisruptorConsumerBuilder) this;
         }
         /**
          * Defines the strategy used by consumer threads to wait on new
@@ -123,10 +128,10 @@ public interface DisruptorVmEndpoint {
          * Sleeping, BusySpin and Yielding. The option is a
          * org.apache.camel.component.disruptor.DisruptorWaitStrategy type.
          */
-        public DisruptorVmConsumer waitStrategy(
+        public DisruptorConsumerBuilder waitStrategy(
                 DisruptorWaitStrategy waitStrategy) {
             this.properties.put("waitStrategy", waitStrategy);
-            return (DisruptorVmConsumer) this;
+            return (DisruptorConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -135,28 +140,28 @@ public interface DisruptorVmEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public DisruptorVmConsumer exceptionHandler(
+        public DisruptorConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (DisruptorVmConsumer) this;
+            return (DisruptorConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public DisruptorVmConsumer exchangePattern(
+        public DisruptorConsumerBuilder exchangePattern(
                 ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (DisruptorVmConsumer) this;
+            return (DisruptorConsumerBuilder) this;
         }
     }
 
-    public static class DisruptorVmProducer
+    public static class DisruptorProducerBuilder
             extends
-                DisruptorVmCommon<DisruptorVmProducer>
+                DisruptorCommonBuilder<DisruptorProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public DisruptorVmProducer(String path) {
+                EndpointProducerBuilder {
+        public DisruptorProducerBuilder(String path) {
             super(path);
         }
         /**
@@ -166,9 +171,9 @@ public interface DisruptorVmEndpoint {
          * accepted. By disabling this option, an exception will be thrown
          * stating that the queue is full. The option is a boolean type.
          */
-        public DisruptorVmProducer blockWhenFull(boolean blockWhenFull) {
+        public DisruptorProducerBuilder blockWhenFull(boolean blockWhenFull) {
             this.properties.put("blockWhenFull", blockWhenFull);
-            return (DisruptorVmProducer) this;
+            return (DisruptorProducerBuilder) this;
         }
         /**
          * Defines the producers allowed on the Disruptor. The options allowed
@@ -177,19 +182,19 @@ public interface DisruptorVmEndpoint {
          * thread or otherwise synchronized) is active. The option is a
          * org.apache.camel.component.disruptor.DisruptorProducerType type.
          */
-        public DisruptorVmProducer producerType(
+        public DisruptorProducerBuilder producerType(
                 DisruptorProducerType producerType) {
             this.properties.put("producerType", producerType);
-            return (DisruptorVmProducer) this;
+            return (DisruptorProducerBuilder) this;
         }
         /**
          * Timeout (in milliseconds) before a producer will stop waiting for an
          * asynchronous task to complete. You can disable timeout by using 0 or
          * a negative value. The option is a long type.
          */
-        public DisruptorVmProducer timeout(long timeout) {
+        public DisruptorProducerBuilder timeout(long timeout) {
             this.properties.put("timeout", timeout);
-            return (DisruptorVmProducer) this;
+            return (DisruptorProducerBuilder) this;
         }
         /**
          * Option to specify whether the caller should wait for the async task
@@ -199,10 +204,10 @@ public interface DisruptorVmEndpoint {
          * the message is Request Reply based. The option is a
          * org.apache.camel.WaitForTaskToComplete type.
          */
-        public DisruptorVmProducer waitForTaskToComplete(
+        public DisruptorProducerBuilder waitForTaskToComplete(
                 WaitForTaskToComplete waitForTaskToComplete) {
             this.properties.put("waitForTaskToComplete", waitForTaskToComplete);
-            return (DisruptorVmProducer) this;
+            return (DisruptorProducerBuilder) this;
         }
     }
 
@@ -213,10 +218,10 @@ public interface DisruptorVmEndpoint {
     public static enum DisruptorProducerType {
         Single, Multi;
     }
-    public default DisruptorVmConsumer fromDisruptorVm(String path) {
-        return new DisruptorVmConsumer(path);
+    public default DisruptorConsumerBuilder fromDisruptor(String path) {
+        return new DisruptorConsumerBuilder(path);
     }
-    public default DisruptorVmProducer toDisruptorVm(String path) {
-        return new DisruptorVmProducer(path);
+    public default DisruptorProducerBuilder toDisruptor(String path) {
+        return new DisruptorProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorVmEndpointBuilder.java
similarity index 74%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorVmEndpointBuilder.java
index e4f0312..13b1e84 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DisruptorVmEndpointBuilder.java
@@ -19,7 +19,9 @@ package org.apache.camel.model.endpoint;
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
 import org.apache.camel.WaitForTaskToComplete;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 import org.apache.camel.spi.ExceptionHandler;
 
 /**
@@ -29,14 +31,14 @@ import org.apache.camel.spi.ExceptionHandler;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface DisruptorEndpoint {
+public interface DisruptorVmEndpointBuilder {
 
 
-    public static class DisruptorCommon<T extends EndpointDefinition>
+    public static class DisruptorVmCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        DisruptorCommon(String path) {
-            super("disruptor", path);
+                AbstractEndpointBuilder<T> {
+        DisruptorVmCommonBuilder(String path) {
+            super("disruptor-vm", path);
         }
         /**
          * Name of queue. The option is a java.lang.String type.
@@ -77,12 +79,12 @@ public interface DisruptorEndpoint {
         }
     }
 
-    public static class DisruptorConsumer
+    public static class DisruptorVmConsumerBuilder
             extends
-                DisruptorCommon<DisruptorConsumer>
+                DisruptorVmCommonBuilder<DisruptorVmConsumerBuilder>
             implements
-                EndpointDefinition.Consumer {
-        public DisruptorConsumer(String path) {
+                EndpointConsumerBuilder {
+        public DisruptorVmConsumerBuilder(String path) {
             super(path);
         }
         /**
@@ -94,17 +96,19 @@ public interface DisruptorEndpoint {
          * with exceptions, that will be logged at WARN or ERROR level and
          * ignored. The option is a boolean type.
          */
-        public DisruptorConsumer bridgeErrorHandler(boolean bridgeErrorHandler) {
+        public DisruptorVmConsumerBuilder bridgeErrorHandler(
+                boolean bridgeErrorHandler) {
             this.properties.put("bridgeErrorHandler", bridgeErrorHandler);
-            return (DisruptorConsumer) this;
+            return (DisruptorVmConsumerBuilder) this;
         }
         /**
          * Number of concurrent threads processing exchanges. The option is a
          * int type.
          */
-        public DisruptorConsumer concurrentConsumers(int concurrentConsumers) {
+        public DisruptorVmConsumerBuilder concurrentConsumers(
+                int concurrentConsumers) {
             this.properties.put("concurrentConsumers", concurrentConsumers);
-            return (DisruptorConsumer) this;
+            return (DisruptorVmConsumerBuilder) this;
         }
         /**
          * Specifies whether multiple consumers are allowed. If enabled, you can
@@ -113,9 +117,10 @@ public interface DisruptorEndpoint {
          * message. When enabled, this option should be specified on every
          * consumer endpoint. The option is a boolean type.
          */
-        public DisruptorConsumer multipleConsumers(boolean multipleConsumers) {
+        public DisruptorVmConsumerBuilder multipleConsumers(
+                boolean multipleConsumers) {
             this.properties.put("multipleConsumers", multipleConsumers);
-            return (DisruptorConsumer) this;
+            return (DisruptorVmConsumerBuilder) this;
         }
         /**
          * Defines the strategy used by consumer threads to wait on new
@@ -123,9 +128,10 @@ public interface DisruptorEndpoint {
          * Sleeping, BusySpin and Yielding. The option is a
          * org.apache.camel.component.disruptor.DisruptorWaitStrategy type.
          */
-        public DisruptorConsumer waitStrategy(DisruptorWaitStrategy waitStrategy) {
+        public DisruptorVmConsumerBuilder waitStrategy(
+                DisruptorWaitStrategy waitStrategy) {
             this.properties.put("waitStrategy", waitStrategy);
-            return (DisruptorConsumer) this;
+            return (DisruptorVmConsumerBuilder) this;
         }
         /**
          * To let the consumer use a custom ExceptionHandler. Notice if the
@@ -134,27 +140,28 @@ public interface DisruptorEndpoint {
          * logged at WARN or ERROR level and ignored. The option is a
          * org.apache.camel.spi.ExceptionHandler type.
          */
-        public DisruptorConsumer exceptionHandler(
+        public DisruptorVmConsumerBuilder exceptionHandler(
                 ExceptionHandler exceptionHandler) {
             this.properties.put("exceptionHandler", exceptionHandler);
-            return (DisruptorConsumer) this;
+            return (DisruptorVmConsumerBuilder) this;
         }
         /**
          * Sets the exchange pattern when the consumer creates an exchange. The
          * option is a org.apache.camel.ExchangePattern type.
          */
-        public DisruptorConsumer exchangePattern(ExchangePattern exchangePattern) {
+        public DisruptorVmConsumerBuilder exchangePattern(
+                ExchangePattern exchangePattern) {
             this.properties.put("exchangePattern", exchangePattern);
-            return (DisruptorConsumer) this;
+            return (DisruptorVmConsumerBuilder) this;
         }
     }
 
-    public static class DisruptorProducer
+    public static class DisruptorVmProducerBuilder
             extends
-                DisruptorCommon<DisruptorProducer>
+                DisruptorVmCommonBuilder<DisruptorVmProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public DisruptorProducer(String path) {
+                EndpointProducerBuilder {
+        public DisruptorVmProducerBuilder(String path) {
             super(path);
         }
         /**
@@ -164,9 +171,9 @@ public interface DisruptorEndpoint {
          * accepted. By disabling this option, an exception will be thrown
          * stating that the queue is full. The option is a boolean type.
          */
-        public DisruptorProducer blockWhenFull(boolean blockWhenFull) {
+        public DisruptorVmProducerBuilder blockWhenFull(boolean blockWhenFull) {
             this.properties.put("blockWhenFull", blockWhenFull);
-            return (DisruptorProducer) this;
+            return (DisruptorVmProducerBuilder) this;
         }
         /**
          * Defines the producers allowed on the Disruptor. The options allowed
@@ -175,18 +182,19 @@ public interface DisruptorEndpoint {
          * thread or otherwise synchronized) is active. The option is a
          * org.apache.camel.component.disruptor.DisruptorProducerType type.
          */
-        public DisruptorProducer producerType(DisruptorProducerType producerType) {
+        public DisruptorVmProducerBuilder producerType(
+                DisruptorProducerType producerType) {
             this.properties.put("producerType", producerType);
-            return (DisruptorProducer) this;
+            return (DisruptorVmProducerBuilder) this;
         }
         /**
          * Timeout (in milliseconds) before a producer will stop waiting for an
          * asynchronous task to complete. You can disable timeout by using 0 or
          * a negative value. The option is a long type.
          */
-        public DisruptorProducer timeout(long timeout) {
+        public DisruptorVmProducerBuilder timeout(long timeout) {
             this.properties.put("timeout", timeout);
-            return (DisruptorProducer) this;
+            return (DisruptorVmProducerBuilder) this;
         }
         /**
          * Option to specify whether the caller should wait for the async task
@@ -196,10 +204,10 @@ public interface DisruptorEndpoint {
          * the message is Request Reply based. The option is a
          * org.apache.camel.WaitForTaskToComplete type.
          */
-        public DisruptorProducer waitForTaskToComplete(
+        public DisruptorVmProducerBuilder waitForTaskToComplete(
                 WaitForTaskToComplete waitForTaskToComplete) {
             this.properties.put("waitForTaskToComplete", waitForTaskToComplete);
-            return (DisruptorProducer) this;
+            return (DisruptorVmProducerBuilder) this;
         }
     }
 
@@ -210,10 +218,10 @@ public interface DisruptorEndpoint {
     public static enum DisruptorProducerType {
         Single, Multi;
     }
-    public default DisruptorConsumer fromDisruptor(String path) {
-        return new DisruptorConsumer(path);
+    public default DisruptorVmConsumerBuilder fromDisruptorVm(String path) {
+        return new DisruptorVmConsumerBuilder(path);
     }
-    public default DisruptorProducer toDisruptor(String path) {
-        return new DisruptorProducer(path);
+    public default DisruptorVmProducerBuilder toDisruptorVm(String path) {
+        return new DisruptorVmProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DnsEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DnsEndpointBuilder.java
similarity index 78%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/DnsEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/DnsEndpointBuilder.java
index 8bc9772..f2c228f 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DnsEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DnsEndpointBuilder.java
@@ -17,7 +17,9 @@
 package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
+import org.apache.camel.model.EndpointConsumerBuilder;
+import org.apache.camel.model.EndpointProducerBuilder;
 
 /**
  * To lookup domain information and run DNS queries using DNSJava.
@@ -25,13 +27,13 @@ import org.apache.camel.model.EndpointDefinition;
  * Generated by camel-package-maven-plugin - do not edit this file!
  */
 @Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
-public interface DnsEndpoint {
+public interface DnsEndpointBuilder {
 
 
-    public static class DnsCommon<T extends EndpointDefinition>
+    public static class DnsCommonBuilder<T extends AbstractEndpointBuilder>
             extends
-                EndpointDefinition<T> {
-        DnsCommon(String path) {
+                AbstractEndpointBuilder<T> {
+        DnsCommonBuilder(String path) {
             super("dns", path);
         }
         /**
@@ -62,12 +64,12 @@ public interface DnsEndpoint {
         }
     }
 
-    public static class DnsProducer
+    public static class DnsProducerBuilder
             extends
-                DnsCommon<DnsProducer>
+                DnsCommonBuilder<DnsProducerBuilder>
             implements
-                EndpointDefinition.Producer {
-        public DnsProducer(String path) {
+                EndpointProducerBuilder {
+        public DnsProducerBuilder(String path) {
             super(path);
         }
     }
@@ -75,7 +77,7 @@ public interface DnsEndpoint {
     public static enum DnsType {
         dig, ip, lookup, wikipedia;
     }
-    public default DnsProducer toDns(String path) {
-        return new DnsProducer(path);
+    public default DnsProducerBuilder toDns(String path) {
+        return new DnsProducerBuilder(path);
     }
 }
\ No newline at end of file
diff --git a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DockerEndpoint.java b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DockerEndpointBuilder.java
similarity index 85%
rename from core/camel-core/src/main/java/org/apache/camel/model/endpoint/DockerEndpoint.java
rename to core/camel-core/src/main/java/org/apache/camel/model/endpoint/DockerEndpointBuilder.java
index 15e593c..2e4c35f 100644
--- a/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DockerEndpoint.java
+++ b/core/camel-core/src/main/java/org/apache/camel/model/endpoint/DockerEndpointBuilder.java
@@ -18,7 +18,9 @@ package org.apache.camel.model.endpoint;
 
 import javax.annotation.Generated;
 import org.apache.camel.ExchangePattern;
-import org.apache.camel.model.EndpointDefinition;
+import org.apache.camel.model.AbstractEndpointBuilder;
... 43764 lines suppressed ...