You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2020/08/23 13:14:07 UTC

[camel] branch master updated (7912c84 -> e3bedb7)

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

davsclaus pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git.


    from 7912c84  camel-activemq: fix deprecation warnings (#4120)
     new 3e2b454  CAMEL-15394: PropertyBindingSupport with configurer to support walking down OGNL path without using reflection. CAMEL-15422: ScheduledPollEndpoint - Scheduler option should be Object type and not String. Regen. CAMEL-15160: Configurer - Generate details what type Map/List contains.
     new 0c9cf69  Regen
     new a47bbd9  JMX management was being unregistered/stopped to early after recent lifecycle changes with the additional events around camel context stopping/stopped.
     new 0d2f3e9  CAMEL-15394: PropertyBindingSupport: Fixed NPE
     new dc5535c  CAMEL-15394: PropertyBindingSupport: Old syntax for #ref values should be handled specially for reflection vs configurer for options that are String type based.
     new 28e2f0d  camel-cxf - Rest consumer should create server in doStart and not in constructor.
     new e076b7a  CAMEL-15394: PropertyBindingSupport: Old syntax for #ref values should be handled specially for reflection vs configurer for options that are String type based.
     new 782aa30  CAMEL-15394: PropertyBindingSupport: Old syntax for #ref values should be handled specially for reflection vs configurer for options that are String type based.
     new f3157b2  Fixed camel-hazelcast consumer should store message body on IN and not out
     new 188bca3  Sort A..Z
     new e3bedb7  Regen

The 11 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:
 .../org/apache/camel/catalog/components/apns.json  |     2 +-
 .../org/apache/camel/catalog/components/as2.json   |     2 +-
 .../org/apache/camel/catalog/components/atom.json  |     2 +-
 .../camel/catalog/components/aws-ddbstream.json    |     2 +-
 .../camel/catalog/components/aws-kinesis.json      |     2 +-
 .../apache/camel/catalog/components/aws-s3.json    |     2 +-
 .../apache/camel/catalog/components/aws-sqs.json   |     2 +-
 .../camel/catalog/components/aws2-ddbstream.json   |     2 +-
 .../camel/catalog/components/aws2-kinesis.json     |     2 +-
 .../apache/camel/catalog/components/aws2-s3.json   |     2 +-
 .../apache/camel/catalog/components/aws2-sqs.json  |     2 +-
 .../apache/camel/catalog/components/beanstalk.json |     2 +-
 .../org/apache/camel/catalog/components/box.json   |     2 +-
 .../apache/camel/catalog/components/braintree.json |     2 +-
 .../apache/camel/catalog/components/couchbase.json |     2 +-
 .../org/apache/camel/catalog/components/cql.json   |     2 +-
 .../org/apache/camel/catalog/components/elsql.json |     2 +-
 .../camel/catalog/components/etcd-stats.json       |     2 +-
 .../org/apache/camel/catalog/components/fhir.json  |     2 +-
 .../org/apache/camel/catalog/components/file.json  |     2 +-
 .../apache/camel/catalog/components/flatpack.json  |     2 +-
 .../org/apache/camel/catalog/components/ftp.json   |     2 +-
 .../org/apache/camel/catalog/components/ftps.json  |     2 +-
 .../catalog/components/google-calendar-stream.json |     2 +-
 .../camel/catalog/components/google-calendar.json  |     2 +-
 .../camel/catalog/components/google-drive.json     |     2 +-
 .../catalog/components/google-mail-stream.json     |     2 +-
 .../camel/catalog/components/google-mail.json      |     2 +-
 .../catalog/components/google-sheets-stream.json   |     2 +-
 .../camel/catalog/components/google-sheets.json    |     2 +-
 .../org/apache/camel/catalog/components/hdfs.json  |     2 +-
 .../apache/camel/catalog/components/hipchat.json   |     2 +-
 .../org/apache/camel/catalog/components/imap.json  |     2 +-
 .../org/apache/camel/catalog/components/imaps.json |     2 +-
 .../apache/camel/catalog/components/ironmq.json    |     2 +-
 .../org/apache/camel/catalog/components/jooq.json  |     2 +-
 .../org/apache/camel/catalog/components/jpa.json   |     2 +-
 .../org/apache/camel/catalog/components/jt400.json |     2 +-
 .../org/apache/camel/catalog/components/minio.json |     2 +-
 .../apache/camel/catalog/components/mybatis.json   |     2 +-
 .../apache/camel/catalog/components/oaipmh.json    |     2 +-
 .../apache/camel/catalog/components/olingo2.json   |     2 +-
 .../apache/camel/catalog/components/olingo4.json   |     2 +-
 .../catalog/components/pg-replication-slot.json    |     2 +-
 .../org/apache/camel/catalog/components/pop3.json  |     2 +-
 .../org/apache/camel/catalog/components/pop3s.json |     2 +-
 .../camel/catalog/components/robotframework.json   |     2 +-
 .../org/apache/camel/catalog/components/rss.json   |     2 +-
 .../apache/camel/catalog/components/scheduler.json |     2 +-
 .../org/apache/camel/catalog/components/sftp.json  |     2 +-
 .../org/apache/camel/catalog/components/slack.json |     2 +-
 .../org/apache/camel/catalog/components/smtp.json  |     2 +-
 .../org/apache/camel/catalog/components/smtps.json |     2 +-
 .../org/apache/camel/catalog/components/snmp.json  |     2 +-
 .../apache/camel/catalog/components/splunk.json    |     2 +-
 .../org/apache/camel/catalog/components/sql.json   |     2 +-
 .../org/apache/camel/catalog/components/ssh.json   |     2 +-
 .../apache/camel/catalog/components/telegram.json  |     2 +-
 .../apache/camel/catalog/components/twilio.json    |     2 +-
 .../catalog/components/twitter-directmessage.json  |     2 +-
 .../camel/catalog/components/twitter-search.json   |     2 +-
 .../camel/catalog/components/twitter-timeline.json |     2 +-
 .../apache/camel/catalog/components/weather.json   |     2 +-
 .../apache/camel/catalog/components/xquery.json    |     2 +-
 .../apache/camel/catalog/components/yammer.json    |     2 +-
 .../apache/camel/catalog/components/zendesk.json   |     2 +-
 .../apache/camel/catalog/docs/apns-component.adoc  |     2 +-
 .../apache/camel/catalog/docs/as2-component.adoc   |     2 +-
 .../apache/camel/catalog/docs/atom-component.adoc  |     2 +-
 .../catalog/docs/aws-ddbstream-component.adoc      |     2 +-
 .../camel/catalog/docs/aws-kinesis-component.adoc  |     2 +-
 .../camel/catalog/docs/aws-s3-component.adoc       |     2 +-
 .../camel/catalog/docs/aws-sqs-component.adoc      |     2 +-
 .../catalog/docs/aws2-ddbstream-component.adoc     |     2 +-
 .../camel/catalog/docs/aws2-kinesis-component.adoc |     2 +-
 .../camel/catalog/docs/aws2-s3-component.adoc      |     2 +-
 .../camel/catalog/docs/aws2-sqs-component.adoc     |     2 +-
 .../camel/catalog/docs/beanstalk-component.adoc    |     2 +-
 .../apache/camel/catalog/docs/box-component.adoc   |     2 +-
 .../camel/catalog/docs/braintree-component.adoc    |     2 +-
 .../camel/catalog/docs/couchbase-component.adoc    |     8 +-
 .../apache/camel/catalog/docs/cql-component.adoc   |     2 +-
 .../apache/camel/catalog/docs/elsql-component.adoc |     2 +-
 .../camel/catalog/docs/etcd-stats-component.adoc   |     2 +-
 .../apache/camel/catalog/docs/fhir-component.adoc  |     2 +-
 .../apache/camel/catalog/docs/file-component.adoc  |     2 +-
 .../camel/catalog/docs/flatpack-component.adoc     |     2 +-
 .../apache/camel/catalog/docs/ftp-component.adoc   |     2 +-
 .../apache/camel/catalog/docs/ftps-component.adoc  |     2 +-
 .../catalog/docs/google-calendar-component.adoc    |     2 +-
 .../docs/google-calendar-stream-component.adoc     |     2 +-
 .../camel/catalog/docs/google-drive-component.adoc |     2 +-
 .../camel/catalog/docs/google-mail-component.adoc  |     2 +-
 .../catalog/docs/google-mail-stream-component.adoc |     2 +-
 .../catalog/docs/google-sheets-component.adoc      |     2 +-
 .../docs/google-sheets-stream-component.adoc       |     2 +-
 .../apache/camel/catalog/docs/hdfs-component.adoc  |     2 +-
 .../camel/catalog/docs/hipchat-component.adoc      |     2 +-
 .../camel/catalog/docs/ironmq-component.adoc       |     2 +-
 .../apache/camel/catalog/docs/jooq-component.adoc  |     2 +-
 .../apache/camel/catalog/docs/jpa-component.adoc   |     2 +-
 .../apache/camel/catalog/docs/jt400-component.adoc |     2 +-
 .../apache/camel/catalog/docs/mail-component.adoc  |     2 +-
 .../apache/camel/catalog/docs/minio-component.adoc |     2 +-
 .../camel/catalog/docs/mybatis-component.adoc      |     2 +-
 .../camel/catalog/docs/oaipmh-component.adoc       |     2 +-
 .../camel/catalog/docs/olingo2-component.adoc      |     2 +-
 .../camel/catalog/docs/olingo4-component.adoc      |     2 +-
 .../docs/pg-replication-slot-component.adoc        |     2 +-
 .../catalog/docs/robotframework-component.adoc     |     2 +-
 .../apache/camel/catalog/docs/rss-component.adoc   |     2 +-
 .../camel/catalog/docs/scheduler-component.adoc    |     2 +-
 .../apache/camel/catalog/docs/sftp-component.adoc  |     2 +-
 .../apache/camel/catalog/docs/slack-component.adoc |     2 +-
 .../apache/camel/catalog/docs/snmp-component.adoc  |     2 +-
 .../camel/catalog/docs/splunk-component.adoc       |     2 +-
 .../apache/camel/catalog/docs/sql-component.adoc   |     2 +-
 .../apache/camel/catalog/docs/ssh-component.adoc   |     2 +-
 .../camel/catalog/docs/telegram-component.adoc     |     2 +-
 .../camel/catalog/docs/twilio-component.adoc       |     2 +-
 .../docs/twitter-directmessage-component.adoc      |     2 +-
 .../catalog/docs/twitter-search-component.adoc     |     2 +-
 .../catalog/docs/twitter-timeline-component.adoc   |     2 +-
 .../camel/catalog/docs/weather-component.adoc      |     2 +-
 .../camel/catalog/docs/xquery-component.adoc       |     2 +-
 .../camel/catalog/docs/yammer-component.adoc       |     2 +-
 .../camel/catalog/docs/zendesk-component.adoc      |     2 +-
 .../apache/camel/catalog/schemas/camel-spring.xsd  | 12967 +++++++++++++++----
 .../component/apns/ApnsEndpointConfigurer.java     |     4 +-
 .../org/apache/camel/component/apns/apns.json      |     2 +-
 .../camel-apns/src/main/docs/apns-component.adoc   |     2 +-
 .../camel/component/as2/AS2EndpointConfigurer.java |     4 +-
 .../org/apache/camel/component/as2/as2.json        |     2 +-
 .../src/main/docs/as2-component.adoc               |     2 +-
 .../component/atom/AtomEndpointConfigurer.java     |     4 +-
 .../org/apache/camel/component/atom/atom.json      |     2 +-
 .../camel-atom/src/main/docs/atom-component.adoc   |     2 +-
 .../aws/ddbstream/DdbStreamEndpointConfigurer.java |     4 +-
 .../component/aws/ddbstream/aws-ddbstream.json     |     2 +-
 .../src/main/docs/aws-ddbstream-component.adoc     |     2 +-
 .../aws/kinesis/KinesisEndpointConfigurer.java     |     4 +-
 .../camel/component/aws/kinesis/aws-kinesis.json   |     2 +-
 .../src/main/docs/aws-kinesis-component.adoc       |     2 +-
 .../component/aws/s3/S3EndpointConfigurer.java     |     4 +-
 .../org/apache/camel/component/aws/s3/aws-s3.json  |     2 +-
 .../src/main/docs/aws-s3-component.adoc            |     2 +-
 .../component/aws/sqs/SqsEndpointConfigurer.java   |     4 +-
 .../apache/camel/component/aws/sqs/aws-sqs.json    |     2 +-
 .../src/main/docs/aws-sqs-component.adoc           |     2 +-
 .../ddbstream/Ddb2StreamEndpointConfigurer.java    |     4 +-
 .../component/aws2/ddbstream/aws2-ddbstream.json   |     2 +-
 .../src/main/docs/aws2-ddbstream-component.adoc    |     2 +-
 .../aws2/kinesis/Kinesis2EndpointConfigurer.java   |     4 +-
 .../camel/component/aws2/kinesis/aws2-kinesis.json |     2 +-
 .../src/main/docs/aws2-kinesis-component.adoc      |     2 +-
 .../aws2/s3/AWS2S3EndpointConfigurer.java          |     4 +-
 .../apache/camel/component/aws2/s3/aws2-s3.json    |     2 +-
 .../src/main/docs/aws2-s3-component.adoc           |     2 +-
 .../component/aws2/sqs/Sqs2EndpointConfigurer.java |     4 +-
 .../apache/camel/component/aws2/sqs/aws2-sqs.json  |     2 +-
 .../src/main/docs/aws2-sqs-component.adoc          |     2 +-
 .../beanstalk/BeanstalkEndpointConfigurer.java     |     4 +-
 .../camel/component/beanstalk/beanstalk.json       |     2 +-
 .../src/main/docs/beanstalk-component.adoc         |     2 +-
 ...ionsManagerEndpointConfigurationConfigurer.java |     2 +-
 ...entsManagerEndpointConfigurationConfigurer.java |     2 +-
 .../component/box/BoxConfigurationConfigurer.java  |     2 +-
 .../camel/component/box/BoxEndpointConfigurer.java |     4 +-
 ...LogsManagerEndpointConfigurationConfigurer.java |     2 +-
 ...entsManagerEndpointConfigurationConfigurer.java |     2 +-
 ...ilesManagerEndpointConfigurationConfigurer.java |     2 +-
 ...dersManagerEndpointConfigurationConfigurer.java |     2 +-
 ...oupsManagerEndpointConfigurationConfigurer.java |     2 +-
 ...archManagerEndpointConfigurationConfigurer.java |     2 +-
 ...asksManagerEndpointConfigurationConfigurer.java |     2 +-
 ...sersManagerEndpointConfigurationConfigurer.java |     2 +-
 .../org/apache/camel/component/box/box.json        |     2 +-
 .../src/main/docs/box-component.adoc               |     2 +-
 .../braintree/BraintreeEndpointConfigurer.java     |     4 +-
 .../camel/component/braintree/braintree.json       |     2 +-
 .../src/main/docs/braintree-component.adoc         |     2 +-
 .../cassandra/CassandraEndpointConfigurer.java     |     4 +-
 .../org/apache/camel/component/cassandra/cql.json  |     2 +-
 .../src/main/docs/cql-component.adoc               |     2 +-
 .../couchbase/CouchbaseEndpointConfigurer.java     |     4 +-
 .../camel/component/couchbase/couchbase.json       |     2 +-
 .../src/main/docs/couchbase-component.adoc         |     2 +-
 .../cxf/transport/CamelDestinationTest.java        |     2 +-
 .../camel/component/cxf/jaxrs/CxfRsConsumer.java   |     1 -
 .../component/elsql/ElsqlEndpointConfigurer.java   |     4 +-
 .../org/apache/camel/component/elsql/elsql.json    |     2 +-
 .../camel-elsql/src/main/docs/elsql-component.adoc |     2 +-
 .../etcd/EtcdStatsEndpointConfigurer.java          |     4 +-
 .../apache/camel/component/etcd/etcd-stats.json    |     2 +-
 .../src/main/docs/etcd-stats-component.adoc        |     2 +-
 ...apabilitiesEndpointConfigurationConfigurer.java |     2 +-
 .../FhirCreateEndpointConfigurationConfigurer.java |     2 +-
 .../FhirDeleteEndpointConfigurationConfigurer.java |     2 +-
 .../component/fhir/FhirEndpointConfigurer.java     |     4 +-
 ...FhirHistoryEndpointConfigurationConfigurer.java |     2 +-
 ...hirLoadPageEndpointConfigurationConfigurer.java |     2 +-
 .../FhirMetaEndpointConfigurationConfigurer.java   |     2 +-
 ...irOperationEndpointConfigurationConfigurer.java |     2 +-
 .../FhirPatchEndpointConfigurationConfigurer.java  |     2 +-
 .../FhirReadEndpointConfigurationConfigurer.java   |     2 +-
 .../FhirSearchEndpointConfigurationConfigurer.java |     2 +-
 ...TransactionEndpointConfigurationConfigurer.java |     2 +-
 .../FhirUpdateEndpointConfigurationConfigurer.java |     2 +-
 ...hirValidateEndpointConfigurationConfigurer.java |     2 +-
 .../org/apache/camel/component/fhir/fhir.json      |     2 +-
 .../src/main/docs/fhir-component.adoc              |     2 +-
 .../component/file/FileEndpointConfigurer.java     |     4 +-
 .../org/apache/camel/component/file/file.json      |     2 +-
 .../camel-file/src/main/docs/file-component.adoc   |     2 +-
 .../flatpack/FlatpackEndpointConfigurer.java       |     4 +-
 .../apache/camel/component/flatpack/flatpack.json  |     2 +-
 .../src/main/docs/flatpack-component.adoc          |     2 +-
 .../file/remote/FtpEndpointConfigurer.java         |     4 +-
 .../file/remote/SftpEndpointConfigurer.java        |     4 +-
 .../apache/camel/component/file/remote/ftp.json    |     2 +-
 .../apache/camel/component/file/remote/ftps.json   |     2 +-
 .../apache/camel/component/file/remote/sftp.json   |     2 +-
 .../camel-ftp/src/main/docs/ftp-component.adoc     |     2 +-
 .../camel-ftp/src/main/docs/ftps-component.adoc    |     2 +-
 .../camel-ftp/src/main/docs/sftp-component.adoc    |     2 +-
 .../calendar/GoogleCalendarEndpointConfigurer.java |     4 +-
 .../GoogleCalendarStreamEndpointConfigurer.java    |     4 +-
 .../component/google/calendar/google-calendar.json |     2 +-
 .../calendar/stream/google-calendar-stream.json    |     2 +-
 .../src/main/docs/google-calendar-component.adoc   |     2 +-
 .../docs/google-calendar-stream-component.adoc     |     2 +-
 .../DriveAboutEndpointConfigurationConfigurer.java |     2 +-
 .../DriveAppsEndpointConfigurationConfigurer.java  |     2 +-
 ...riveChangesEndpointConfigurationConfigurer.java |     2 +-
 ...iveChannelsEndpointConfigurationConfigurer.java |     2 +-
 ...iveChildrenEndpointConfigurationConfigurer.java |     2 +-
 ...iveCommentsEndpointConfigurationConfigurer.java |     2 +-
 .../DriveFilesEndpointConfigurationConfigurer.java |     2 +-
 ...riveParentsEndpointConfigurationConfigurer.java |     2 +-
 ...PermissionsEndpointConfigurationConfigurer.java |     2 +-
 ...ePropertiesEndpointConfigurationConfigurer.java |     2 +-
 ...iveRealtimeEndpointConfigurationConfigurer.java |     2 +-
 ...riveRepliesEndpointConfigurationConfigurer.java |     2 +-
 ...veRevisionsEndpointConfigurationConfigurer.java |     2 +-
 .../drive/GoogleDriveConfigurationConfigurer.java  |     2 +-
 .../drive/GoogleDriveEndpointConfigurer.java       |     4 +-
 .../camel/component/google/drive/google-drive.json |     2 +-
 .../src/main/docs/google-drive-component.adoc      |     2 +-
 .../google/mail/GoogleMailEndpointConfigurer.java  |     4 +-
 .../stream/GoogleMailStreamEndpointConfigurer.java |     4 +-
 .../camel/component/google/mail/google-mail.json   |     2 +-
 .../google/mail/stream/google-mail-stream.json     |     2 +-
 .../src/main/docs/google-mail-component.adoc       |     2 +-
 .../main/docs/google-mail-stream-component.adoc    |     2 +-
 .../sheets/GoogleSheetsEndpointConfigurer.java     |     4 +-
 .../GoogleSheetsStreamEndpointConfigurer.java      |     4 +-
 .../component/google/sheets/google-sheets.json     |     2 +-
 .../google/sheets/stream/google-sheets-stream.json |     2 +-
 .../src/main/docs/google-sheets-component.adoc     |     2 +-
 .../main/docs/google-sheets-stream-component.adoc  |     2 +-
 .../hazelcast/queue/HazelcastQueueConsumer.java    |     2 +-
 .../component/hdfs/HdfsEndpointConfigurer.java     |     4 +-
 .../org/apache/camel/component/hdfs/hdfs.json      |     2 +-
 .../camel-hdfs/src/main/docs/hdfs-component.adoc   |     2 +-
 .../hipchat/HipchatEndpointConfigurer.java         |     4 +-
 .../apache/camel/component/hipchat/hipchat.json    |     2 +-
 .../src/main/docs/hipchat-component.adoc           |     2 +-
 .../component/ironmq/IronMQEndpointConfigurer.java |     4 +-
 .../org/apache/camel/component/ironmq/ironmq.json  |     2 +-
 .../src/main/docs/ironmq-component.adoc            |     2 +-
 .../component/jooq/JooqEndpointConfigurer.java     |     4 +-
 .../org/apache/camel/component/jooq/jooq.json      |     2 +-
 .../camel-jooq/src/main/docs/jooq-component.adoc   |     2 +-
 .../camel/component/jpa/JpaEndpointConfigurer.java |     4 +-
 .../org/apache/camel/component/jpa/jpa.json        |     2 +-
 .../camel-jpa/src/main/docs/jpa-component.adoc     |     2 +-
 .../component/jt400/Jt400EndpointConfigurer.java   |     4 +-
 .../org/apache/camel/component/jt400/jt400.json    |     2 +-
 .../camel-jt400/src/main/docs/jt400-component.adoc |     2 +-
 .../component/mail/MailEndpointConfigurer.java     |     4 +-
 .../org/apache/camel/component/mail/imap.json      |     2 +-
 .../org/apache/camel/component/mail/imaps.json     |     2 +-
 .../org/apache/camel/component/mail/pop3.json      |     2 +-
 .../org/apache/camel/component/mail/pop3s.json     |     2 +-
 .../org/apache/camel/component/mail/smtp.json      |     2 +-
 .../org/apache/camel/component/mail/smtps.json     |     2 +-
 .../camel-mail/src/main/docs/mail-component.adoc   |     2 +-
 .../camel/component/mail/MailComponentTest.java    |     2 +-
 .../component/minio/MinioEndpointConfigurer.java   |     4 +-
 .../org/apache/camel/component/minio/minio.json    |     2 +-
 .../camel-minio/src/main/docs/minio-component.adoc |     2 +-
 .../mybatis/MyBatisEndpointConfigurer.java         |     4 +-
 .../apache/camel/component/mybatis/mybatis.json    |     2 +-
 .../src/main/docs/mybatis-component.adoc           |     2 +-
 .../oaipmh/component/OAIPMHEndpointConfigurer.java |     4 +-
 .../org/apache/camel/oaipmh/component/oaipmh.json  |     2 +-
 .../src/main/docs/oaipmh-component.adoc            |     2 +-
 .../Olingo2AppEndpointConfigurationConfigurer.java |     2 +-
 .../olingo2/Olingo2ConfigurationConfigurer.java    |     2 +-
 .../olingo2/Olingo2EndpointConfigurer.java         |     4 +-
 .../apache/camel/component/olingo2/olingo2.json    |     2 +-
 .../src/main/docs/olingo2-component.adoc           |     2 +-
 .../Olingo4AppEndpointConfigurationConfigurer.java |     2 +-
 .../olingo4/Olingo4ConfigurationConfigurer.java    |     2 +-
 .../olingo4/Olingo4EndpointConfigurer.java         |     4 +-
 .../apache/camel/component/olingo4/olingo4.json    |     2 +-
 .../src/main/docs/olingo4-component.adoc           |     2 +-
 .../slot/PgReplicationSlotEndpointConfigurer.java  |     4 +-
 .../pg/replication/slot/pg-replication-slot.json   |     2 +-
 .../main/docs/pg-replication-slot-component.adoc   |     2 +-
 ...stPlatformHttpContextPathConfigurationTest.java |    12 +-
 .../RobotFrameworkEndpointConfigurer.java          |     4 +-
 .../component/robotframework/robotframework.json   |     2 +-
 .../src/main/docs/robotframework-component.adoc    |     2 +-
 .../camel/component/rss/RssEndpointConfigurer.java |     4 +-
 .../org/apache/camel/component/rss/rss.json        |     2 +-
 .../camel-rss/src/main/docs/rss-component.adoc     |     2 +-
 .../component/xquery/XQueryEndpointConfigurer.java |     4 +-
 .../org/apache/camel/component/xquery/xquery.json  |     2 +-
 .../src/main/docs/xquery-component.adoc            |     2 +-
 .../scheduler/SchedulerEndpointConfigurer.java     |     4 +-
 .../camel/component/scheduler/scheduler.json       |     2 +-
 .../src/main/docs/scheduler-component.adoc         |     2 +-
 .../component/slack/SlackEndpointConfigurer.java   |     4 +-
 .../org/apache/camel/component/slack/slack.json    |     2 +-
 .../camel-slack/src/main/docs/slack-component.adoc |     2 +-
 .../component/snmp/SnmpEndpointConfigurer.java     |     4 +-
 .../org/apache/camel/component/snmp/snmp.json      |     2 +-
 .../camel-snmp/src/main/docs/snmp-component.adoc   |     2 +-
 .../component/splunk/SplunkEndpointConfigurer.java |     4 +-
 .../org/apache/camel/component/splunk/splunk.json  |     2 +-
 .../src/main/docs/splunk-component.adoc            |     2 +-
 .../camel/component/sql/SqlEndpointConfigurer.java |     4 +-
 .../org/apache/camel/component/sql/sql.json        |     2 +-
 .../camel-sql/src/main/docs/sql-component.adoc     |     2 +-
 .../camel/component/ssh/SshEndpointConfigurer.java |     4 +-
 .../org/apache/camel/component/ssh/ssh.json        |     2 +-
 .../camel-ssh/src/main/docs/ssh-component.adoc     |     2 +-
 .../telegram/TelegramEndpointConfigurer.java       |     4 +-
 .../apache/camel/component/telegram/telegram.json  |     2 +-
 .../src/main/docs/telegram-component.adoc          |     2 +-
 .../MessageEndpointConfigurationConfigurer.java    |     2 +-
 .../component/twilio/TwilioEndpointConfigurer.java |     4 +-
 .../org/apache/camel/component/twilio/twilio.json  |     2 +-
 .../src/main/docs/twilio-component.adoc            |     2 +-
 .../TwitterDirectMessageEndpointConfigurer.java    |     4 +-
 .../search/TwitterSearchEndpointConfigurer.java    |     4 +-
 .../TwitterTimelineEndpointConfigurer.java         |     4 +-
 .../directmessage/twitter-directmessage.json       |     2 +-
 .../component/twitter/search/twitter-search.json   |     2 +-
 .../twitter/timeline/twitter-timeline.json         |     2 +-
 .../main/docs/twitter-directmessage-component.adoc |     2 +-
 .../src/main/docs/twitter-search-component.adoc    |     2 +-
 .../src/main/docs/twitter-timeline-component.adoc  |     2 +-
 .../weather/WeatherEndpointConfigurer.java         |     4 +-
 .../apache/camel/component/weather/weather.json    |     2 +-
 .../src/main/docs/weather-component.adoc           |     2 +-
 .../apache/camel/WorkdayReportProducerTest.java    |     3 +-
 .../component/yammer/YammerEndpointConfigurer.java |     4 +-
 .../org/apache/camel/component/yammer/yammer.json  |     2 +-
 .../src/main/docs/yammer-component.adoc            |     2 +-
 .../ZendeskEndpointConfigurationConfigurer.java    |     2 +-
 .../zendesk/ZendeskEndpointConfigurer.java         |     4 +-
 .../apache/camel/component/zendesk/zendesk.json    |     2 +-
 .../src/main/docs/zendesk-component.adoc           |     2 +-
 components/pom.xml                                 |     2 +-
 .../apache/camel/spi/PropertyConfigurerGetter.java |    11 +-
 .../camel/impl/ExtendedCamelContextConfigurer.java |     2 +-
 .../camel/impl/RestConfigurationConfigurer.java    |     2 +-
 .../camel/spring/SpringConsumerTemplateTest.java   |     2 +-
 .../file/FileProducerChmodOptionTest.java          |     5 +-
 .../support/PropertyBindingSupportArrayTest.java   |     4 +-
 .../PropertyBindingSupportConfigurerTest.java      |   108 +-
 .../support/PropertyBindingSupportListTest.java    |     2 +-
 .../support/PropertyBindingSupportMapTest.java     |     2 +-
 .../camel/support/PropertyBindingSupportTest.java  |     7 +-
 .../org/apache/camel/util/StringHelperTest.java    |    15 +
 .../endpoint/dsl/AS2EndpointBuilderFactory.java    |    17 +-
 .../endpoint/dsl/AWS2S3EndpointBuilderFactory.java |    17 +-
 .../endpoint/dsl/ApnsEndpointBuilderFactory.java   |    17 +-
 .../endpoint/dsl/AtomEndpointBuilderFactory.java   |    17 +-
 .../dsl/BeanstalkEndpointBuilderFactory.java       |    17 +-
 .../endpoint/dsl/BoxEndpointBuilderFactory.java    |    17 +-
 .../dsl/BraintreeEndpointBuilderFactory.java       |    17 +-
 .../dsl/CassandraEndpointBuilderFactory.java       |    17 +-
 .../dsl/CouchbaseEndpointBuilderFactory.java       |    17 +-
 .../dsl/Ddb2StreamEndpointBuilderFactory.java      |    17 +-
 .../dsl/DdbStreamEndpointBuilderFactory.java       |    17 +-
 .../endpoint/dsl/ElsqlEndpointBuilderFactory.java  |    17 +-
 .../dsl/EtcdStatsEndpointBuilderFactory.java       |    17 +-
 .../endpoint/dsl/FhirEndpointBuilderFactory.java   |    17 +-
 .../endpoint/dsl/FileEndpointBuilderFactory.java   |    17 +-
 .../dsl/FlatpackEndpointBuilderFactory.java        |    17 +-
 .../endpoint/dsl/FtpEndpointBuilderFactory.java    |    17 +-
 .../endpoint/dsl/FtpsEndpointBuilderFactory.java   |    17 +-
 .../dsl/GoogleCalendarEndpointBuilderFactory.java  |    17 +-
 ...GoogleCalendarStreamEndpointBuilderFactory.java |    17 +-
 .../dsl/GoogleDriveEndpointBuilderFactory.java     |    17 +-
 .../dsl/GoogleMailEndpointBuilderFactory.java      |    17 +-
 .../GoogleMailStreamEndpointBuilderFactory.java    |    17 +-
 .../dsl/GoogleSheetsEndpointBuilderFactory.java    |    17 +-
 .../GoogleSheetsStreamEndpointBuilderFactory.java  |    17 +-
 .../endpoint/dsl/HdfsEndpointBuilderFactory.java   |    17 +-
 .../dsl/HipchatEndpointBuilderFactory.java         |    17 +-
 .../endpoint/dsl/IronMQEndpointBuilderFactory.java |    17 +-
 .../endpoint/dsl/JooqEndpointBuilderFactory.java   |    17 +-
 .../endpoint/dsl/JpaEndpointBuilderFactory.java    |    17 +-
 .../endpoint/dsl/Jt400EndpointBuilderFactory.java  |    17 +-
 .../dsl/Kinesis2EndpointBuilderFactory.java        |    17 +-
 .../dsl/KinesisEndpointBuilderFactory.java         |    17 +-
 .../endpoint/dsl/MailEndpointBuilderFactory.java   |    17 +-
 .../endpoint/dsl/MinioEndpointBuilderFactory.java  |    17 +-
 .../dsl/MyBatisEndpointBuilderFactory.java         |    17 +-
 .../endpoint/dsl/OAIPMHEndpointBuilderFactory.java |    17 +-
 .../dsl/Olingo2EndpointBuilderFactory.java         |    17 +-
 .../dsl/Olingo4EndpointBuilderFactory.java         |    17 +-
 .../PgReplicationSlotEndpointBuilderFactory.java   |    17 +-
 .../dsl/RobotFrameworkEndpointBuilderFactory.java  |    17 +-
 .../endpoint/dsl/RssEndpointBuilderFactory.java    |    17 +-
 .../endpoint/dsl/S3EndpointBuilderFactory.java     |    17 +-
 .../dsl/SchedulerEndpointBuilderFactory.java       |    17 +-
 .../endpoint/dsl/SftpEndpointBuilderFactory.java   |    17 +-
 .../endpoint/dsl/SlackEndpointBuilderFactory.java  |    17 +-
 .../endpoint/dsl/SnmpEndpointBuilderFactory.java   |    17 +-
 .../endpoint/dsl/SplunkEndpointBuilderFactory.java |    17 +-
 .../endpoint/dsl/SqlEndpointBuilderFactory.java    |    17 +-
 .../endpoint/dsl/Sqs2EndpointBuilderFactory.java   |    17 +-
 .../endpoint/dsl/SqsEndpointBuilderFactory.java    |    17 +-
 .../endpoint/dsl/SshEndpointBuilderFactory.java    |    17 +-
 .../dsl/TelegramEndpointBuilderFactory.java        |    17 +-
 .../endpoint/dsl/TwilioEndpointBuilderFactory.java |    17 +-
 ...TwitterDirectMessageEndpointBuilderFactory.java |    18 +-
 .../dsl/TwitterSearchEndpointBuilderFactory.java   |    17 +-
 .../dsl/TwitterTimelineEndpointBuilderFactory.java |    18 +-
 .../dsl/WeatherEndpointBuilderFactory.java         |    17 +-
 .../endpoint/dsl/XQueryEndpointBuilderFactory.java |    17 +-
 .../endpoint/dsl/YammerEndpointBuilderFactory.java |    17 +-
 .../dsl/ZendeskEndpointBuilderFactory.java         |    17 +-
 .../HealthConfigurationPropertiesConfigurer.java   |     2 +-
 .../MainConfigurationPropertiesConfigurer.java     |     2 +-
 .../RestConfigurationPropertiesConfigurer.java     |     2 +-
 ...hreadPoolConfigurationPropertiesConfigurer.java |     2 +-
 .../main/{MySecondBar.java => MyOtherBar.java}     |    13 +-
 .../main/{MySecondFoo.java => MyOtherFoo.java}     |    11 +-
 .../java/org/apache/camel/main/MySecondBar.java    |    10 +
 .../apache/camel/main/MySecondBarConfigurer.java   |     7 +-
 .../apache/camel/main/MySecondFooConfigurer.java   |     2 +-
 ...pertyBindingSupportRootArrayReflectionTest.java |   150 +
 .../main/PropertyBindingSupportRootArrayTest.java  |     4 +-
 ...yBindingSupportRootArrayWithConfigurerTest.java |    72 +-
 .../main/support/MyDummyComponentConfigurer.java   |     1 +
 .../management/JmxManagementLifecycleStrategy.java |     2 +-
 .../camel/support/PropertyBindingSupport.java      |  1149 +-
 .../camel/support/ScheduledPollEndpoint.java       |    40 +-
 .../java/org/apache/camel/util/StringHelper.java   |    14 +
 .../modules/ROOT/pages/apns-component.adoc         |     2 +-
 .../modules/ROOT/pages/as2-component.adoc          |     2 +-
 .../modules/ROOT/pages/atom-component.adoc         |     2 +-
 .../ROOT/pages/aws-ddbstream-component.adoc        |     2 +-
 .../modules/ROOT/pages/aws-kinesis-component.adoc  |     2 +-
 .../modules/ROOT/pages/aws-s3-component.adoc       |     2 +-
 .../modules/ROOT/pages/aws-sqs-component.adoc      |     2 +-
 .../ROOT/pages/aws2-ddbstream-component.adoc       |     2 +-
 .../modules/ROOT/pages/aws2-kinesis-component.adoc |     2 +-
 .../modules/ROOT/pages/aws2-s3-component.adoc      |     2 +-
 .../modules/ROOT/pages/aws2-sqs-component.adoc     |     2 +-
 .../modules/ROOT/pages/beanstalk-component.adoc    |     2 +-
 .../modules/ROOT/pages/box-component.adoc          |     2 +-
 .../modules/ROOT/pages/braintree-component.adoc    |     2 +-
 .../modules/ROOT/pages/couchbase-component.adoc    |     2 +-
 .../modules/ROOT/pages/cql-component.adoc          |     2 +-
 .../modules/ROOT/pages/elsql-component.adoc        |     2 +-
 .../modules/ROOT/pages/etcd-stats-component.adoc   |     2 +-
 .../modules/ROOT/pages/fhir-component.adoc         |     2 +-
 .../modules/ROOT/pages/file-component.adoc         |     2 +-
 .../modules/ROOT/pages/flatpack-component.adoc     |     2 +-
 .../modules/ROOT/pages/ftp-component.adoc          |     2 +-
 .../modules/ROOT/pages/ftps-component.adoc         |     2 +-
 .../ROOT/pages/google-calendar-component.adoc      |     2 +-
 .../pages/google-calendar-stream-component.adoc    |     2 +-
 .../modules/ROOT/pages/google-drive-component.adoc |     2 +-
 .../modules/ROOT/pages/google-mail-component.adoc  |     2 +-
 .../ROOT/pages/google-mail-stream-component.adoc   |     2 +-
 .../ROOT/pages/google-sheets-component.adoc        |     2 +-
 .../ROOT/pages/google-sheets-stream-component.adoc |     2 +-
 .../modules/ROOT/pages/hdfs-component.adoc         |     2 +-
 .../modules/ROOT/pages/hipchat-component.adoc      |     2 +-
 .../modules/ROOT/pages/ironmq-component.adoc       |     2 +-
 .../modules/ROOT/pages/jooq-component.adoc         |     2 +-
 .../modules/ROOT/pages/jpa-component.adoc          |     2 +-
 .../modules/ROOT/pages/jt400-component.adoc        |     2 +-
 .../modules/ROOT/pages/mail-component.adoc         |     2 +-
 .../modules/ROOT/pages/minio-component.adoc        |     2 +-
 .../modules/ROOT/pages/mybatis-component.adoc      |     2 +-
 .../modules/ROOT/pages/oaipmh-component.adoc       |     2 +-
 .../modules/ROOT/pages/olingo2-component.adoc      |     2 +-
 .../modules/ROOT/pages/olingo4-component.adoc      |     2 +-
 .../ROOT/pages/pg-replication-slot-component.adoc  |     2 +-
 .../ROOT/pages/robotframework-component.adoc       |     2 +-
 .../modules/ROOT/pages/rss-component.adoc          |     2 +-
 .../modules/ROOT/pages/scheduler-component.adoc    |     2 +-
 .../modules/ROOT/pages/sftp-component.adoc         |     2 +-
 .../modules/ROOT/pages/slack-component.adoc        |     2 +-
 .../modules/ROOT/pages/snmp-component.adoc         |     2 +-
 .../modules/ROOT/pages/splunk-component.adoc       |     2 +-
 .../modules/ROOT/pages/sql-component.adoc          |     2 +-
 .../modules/ROOT/pages/ssh-component.adoc          |     2 +-
 .../modules/ROOT/pages/telegram-component.adoc     |     2 +-
 .../modules/ROOT/pages/twilio-component.adoc       |     2 +-
 .../pages/twitter-directmessage-component.adoc     |     2 +-
 .../ROOT/pages/twitter-search-component.adoc       |     2 +-
 .../ROOT/pages/twitter-timeline-component.adoc     |     2 +-
 .../modules/ROOT/pages/weather-component.adoc      |     2 +-
 .../modules/ROOT/pages/xquery-component.adoc       |     2 +-
 .../modules/ROOT/pages/yammer-component.adoc       |     2 +-
 .../modules/ROOT/pages/zendesk-component.adoc      |     2 +-
 .../packaging/PropertyConfigurerGenerator.java     |     5 +-
 517 files changed, 12930 insertions(+), 3712 deletions(-)
 copy core/camel-main/src/test/java/org/apache/camel/main/{MySecondBar.java => MyOtherBar.java} (84%)
 copy core/camel-main/src/test/java/org/apache/camel/main/{MySecondFoo.java => MyOtherFoo.java} (81%)
 create mode 100644 core/camel-main/src/test/java/org/apache/camel/main/PropertyBindingSupportRootArrayReflectionTest.java


[camel] 08/11: CAMEL-15394: PropertyBindingSupport: Old syntax for #ref values should be handled specially for reflection vs configurer for options that are String type based.

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

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

commit 782aa3025f9f7c45b732629a6a5d9fe4e7116a74
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sun Aug 23 10:07:21 2020 +0200

    CAMEL-15394: PropertyBindingSupport: Old syntax for #ref values should be handled specially for reflection vs configurer for options that are String type based.
---
 .../java/org/apache/camel/support/PropertyBindingSupport.java | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java b/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
index 41b6f76..37306e2 100644
--- a/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
+++ b/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
@@ -591,8 +591,8 @@ public final class PropertyBindingSupport {
             // 2) sort by reference (as it may refer to other beans in the OGNL graph)
             Object v1 = map.get(o1);
             Object v2 = map.get(o2);
-            boolean ref1 = v1 != null && v1.toString().startsWith("#");
-            boolean ref2 = v2 != null && v2.toString().startsWith("#");
+            boolean ref1 = v1 instanceof String && ((String) v1).startsWith("#");
+            boolean ref2 = v2 instanceof String && ((String) v2).startsWith("#");
             if (ref1 != ref2) {
                 return Boolean.compare(ref1, ref2);
             }
@@ -1246,7 +1246,7 @@ public final class PropertyBindingSupport {
             } else if (isReferenceParameter(str)) {
                 // special for reference (we should not do this for options that are String type)
                 // this is only required for reflection (as configurer does this automatic in a more safe way)
-                Object bean = CamelContextHelper.lookup(context, str.toString().substring(1));
+                Object bean = CamelContextHelper.lookup(context, str.substring(1));
                 if (bean != null) {
                     value = bean;
                 }
@@ -1462,8 +1462,10 @@ public final class PropertyBindingSupport {
                     Method method = introspection.getPropertyGetter(target.getClass(), key, ignoreCase);
                     if (method != null) {
                         String typeName = method.getGenericReturnType().getTypeName();
-                        String fqn = StringHelper.between(typeName, "<", ">");
+                        // its a map (Map<String, com.foo.MyObject>) so we look for , >
+                        String fqn = StringHelper.between(typeName, ",", ">");
                         if (fqn != null) {
+                            fqn = fqn.trim();
                             parameterType = context.getClassResolver().resolveClass(fqn);
                         }
                     }
@@ -1497,6 +1499,7 @@ public final class PropertyBindingSupport {
                     // they contains so we can use that to know the parameter type
                     Method method = introspection.getPropertyGetter(target.getClass(), key, ignoreCase);
                     if (method != null) {
+                        // its a list (List<com.foo.MyObject>) so we look for < >
                         String typeName = method.getGenericReturnType().getTypeName();
                         String fqn = StringHelper.between(typeName, "<", ">");
                         if (fqn != null) {


[camel] 09/11: Fixed camel-hazelcast consumer should store message body on IN and not out

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

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

commit f3157b28de18af90a4602430fcdb0b16723a21f8
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sun Aug 23 10:25:00 2020 +0200

    Fixed camel-hazelcast consumer should store message body on IN and not out
---
 .../apache/camel/component/hazelcast/queue/HazelcastQueueConsumer.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/components/camel-hazelcast/src/main/java/org/apache/camel/component/hazelcast/queue/HazelcastQueueConsumer.java b/components/camel-hazelcast/src/main/java/org/apache/camel/component/hazelcast/queue/HazelcastQueueConsumer.java
index 6f598e6..4fa6948 100644
--- a/components/camel-hazelcast/src/main/java/org/apache/camel/component/hazelcast/queue/HazelcastQueueConsumer.java
+++ b/components/camel-hazelcast/src/main/java/org/apache/camel/component/hazelcast/queue/HazelcastQueueConsumer.java
@@ -85,7 +85,7 @@ public class HazelcastQueueConsumer extends HazelcastDefaultConsumer {
                     try {
                         final Object body = queue.poll(config.getPollingTimeout(), TimeUnit.MILLISECONDS);
                         Exchange exchange = getEndpoint().createExchange();
-                        exchange.getOut().setBody(body);
+                        exchange.getIn().setBody(body);
                         try {
                             processor.process(exchange);
                         } catch (Exception e) {


[camel] 05/11: CAMEL-15394: PropertyBindingSupport: Old syntax for #ref values should be handled specially for reflection vs configurer for options that are String type based.

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

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

commit dc5535c7815f8bad3bf9be12bd774f186dfc2fec
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Aug 22 21:00:05 2020 +0200

    CAMEL-15394: PropertyBindingSupport: Old syntax for #ref values should be handled specially for reflection vs configurer for options that are String type based.
---
 .../src/main/java/org/apache/camel/support/PropertyBindingSupport.java | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java b/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
index 5e53862..3deb614 100644
--- a/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
+++ b/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
@@ -873,7 +873,8 @@ public final class PropertyBindingSupport {
                 str = camelContext.resolvePropertyPlaceholders(str.toString());
             }
             // special for reference (we should not do this for options that are String type)
-            if (reference && isReferenceParameter(str)) {
+            // this is only required for reflection (non configurer as configurer does this automatic in a more safe way)
+            if (configurer == null && reference && isReferenceParameter(str)) {
                 Object bean = CamelContextHelper.lookup(camelContext, str.toString().substring(1));
                 if (bean != null) {
                     str = bean;


[camel] 07/11: CAMEL-15394: PropertyBindingSupport: Old syntax for #ref values should be handled specially for reflection vs configurer for options that are String type based.

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

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

commit e076b7a412322e8708389d653ea8b4cf3725426a
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Aug 22 22:15:27 2020 +0200

    CAMEL-15394: PropertyBindingSupport: Old syntax for #ref values should be handled specially for reflection vs configurer for options that are String type based.
---
 .../camel/support/PropertyBindingSupport.java      | 37 +++++++++++++++-------
 1 file changed, 25 insertions(+), 12 deletions(-)

diff --git a/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java b/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
index 3deb614..41b6f76 100644
--- a/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
+++ b/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
@@ -872,14 +872,6 @@ public final class PropertyBindingSupport {
                 // resolve property placeholders
                 str = camelContext.resolvePropertyPlaceholders(str.toString());
             }
-            // special for reference (we should not do this for options that are String type)
-            // this is only required for reflection (non configurer as configurer does this automatic in a more safe way)
-            if (configurer == null && reference && isReferenceParameter(str)) {
-                Object bean = CamelContextHelper.lookup(camelContext, str.toString().substring(1));
-                if (bean != null) {
-                    str = bean;
-                }
-            }
             value = str;
         } catch (Exception e) {
             // report the exception using the long key and parent target
@@ -897,7 +889,7 @@ public final class PropertyBindingSupport {
                 }
                 if (!bound) {
                     // fallback to reflection based
-                    bound = setPropertyCollectionViaReflection(camelContext, target, key, value, ignoreCase);
+                    bound = setPropertyCollectionViaReflection(camelContext, target, key, value, ignoreCase, reference);
                 }
             } else {
                 // regular key
@@ -930,7 +922,7 @@ public final class PropertyBindingSupport {
 
     private static boolean setPropertyCollectionViaReflection(
             CamelContext context, Object target, String name, Object value,
-            boolean ignoreCase)
+            boolean ignoreCase, boolean reference)
             throws Exception {
 
         BeanIntrospection bi = context.adapt(ExtendedCamelContext.class).getBeanIntrospection();
@@ -963,6 +955,19 @@ public final class PropertyBindingSupport {
                         "Cannot set property: " + name + " as a Map because target bean has no setter method for the Map");
             }
         }
+
+        // special for reference (we should not do this for options that are String type)
+        // this is only required for reflection (as configurer does this automatic in a more safe way)
+        if (value instanceof String) {
+            String str = value.toString();
+            if (reference && isReferenceParameter(str)) {
+                Object bean = CamelContextHelper.lookup(context, str.toString().substring(1));
+                if (bean != null) {
+                    value = bean;
+                }
+            }
+        }
+
         if (obj instanceof Map) {
             Map map = (Map) obj;
             map.put(lookupKey, value);
@@ -1231,12 +1236,20 @@ public final class PropertyBindingSupport {
 
         String refName = null;
         if (reference && value instanceof String) {
-            if (value.toString().startsWith("#bean:")) {
+            String str = value.toString();
+            if (str.startsWith("#bean:")) {
                 // okay its a reference so swap to lookup this which is already supported in IntrospectionSupport
                 refName = "#" + ((String) value).substring(6);
                 value = null;
-            } else if (value.toString().equals("#autowired")) {
+            } else if (str.equals("#autowired")) {
                 value = resolveAutowired(context, target, name, value, ignoreCase, fluentBuilder, allowPrivateSetter, null);
+            } else if (isReferenceParameter(str)) {
+                // special for reference (we should not do this for options that are String type)
+                // this is only required for reflection (as configurer does this automatic in a more safe way)
+                Object bean = CamelContextHelper.lookup(context, str.toString().substring(1));
+                if (bean != null) {
+                    value = bean;
+                }
             }
         }
 


[camel] 03/11: JMX management was being unregistered/stopped to early after recent lifecycle changes with the additional events around camel context stopping/stopped.

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

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

commit a47bbd9f0d0b12cf4ccaf6138eee0cb9739f1d3a
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Aug 22 17:37:07 2020 +0200

    JMX management was being unregistered/stopped to early after recent lifecycle changes with the additional events around camel context stopping/stopped.
---
 .../org/apache/camel/management/JmxManagementLifecycleStrategy.java     | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/core/camel-management/src/main/java/org/apache/camel/management/JmxManagementLifecycleStrategy.java b/core/camel-management/src/main/java/org/apache/camel/management/JmxManagementLifecycleStrategy.java
index fc70cba..f446b48 100644
--- a/core/camel-management/src/main/java/org/apache/camel/management/JmxManagementLifecycleStrategy.java
+++ b/core/camel-management/src/main/java/org/apache/camel/management/JmxManagementLifecycleStrategy.java
@@ -313,7 +313,7 @@ public class JmxManagementLifecycleStrategy extends ServiceSupport implements Li
     }
 
     @Override
-    public void onContextStop(CamelContext context) {
+    public void onContextStopped(CamelContext context) {
         // the agent hasn't been started
         if (!initialized) {
             return;


[camel] 10/11: Sort A..Z

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

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

commit 188bca346f1ea27439bb2f933d23a6b0415d20d0
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sun Aug 23 13:28:04 2020 +0200

    Sort A..Z
---
 components/pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/components/pom.xml b/components/pom.xml
index de0888c..b438cb5 100644
--- a/components/pom.xml
+++ b/components/pom.xml
@@ -277,6 +277,7 @@
         <module>camel-microprofile-metrics</module>
         <module>camel-milo</module>
         <module>camel-mina</module>
+        <module>camel-minio</module>
         <module>camel-mllp</module>
         <module>camel-mongodb-gridfs</module>
         <module>camel-mongodb</module>
@@ -394,7 +395,6 @@
         <module>camel-zipkin</module>
         <module>camel-zookeeper-master</module>
         <module>camel-zookeeper</module>
-        <module>camel-minio</module>
   </modules>
 
     <properties>


[camel] 02/11: Regen

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

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

commit 0c9cf6921af6b8f2f2c22ec2c2ceca193009b965
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Aug 22 13:05:14 2020 +0200

    Regen
---
 .../http/RestPlatformHttpContextPathConfigurationTest.java   | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/components/camel-platform-http/src/test/java/org/apache/camel/component/platform/http/RestPlatformHttpContextPathConfigurationTest.java b/components/camel-platform-http/src/test/java/org/apache/camel/component/platform/http/RestPlatformHttpContextPathConfigurationTest.java
index 9866bc0..219d770 100644
--- a/components/camel-platform-http/src/test/java/org/apache/camel/component/platform/http/RestPlatformHttpContextPathConfigurationTest.java
+++ b/components/camel-platform-http/src/test/java/org/apache/camel/component/platform/http/RestPlatformHttpContextPathConfigurationTest.java
@@ -27,14 +27,14 @@ public class RestPlatformHttpContextPathConfigurationTest extends AbstractPlatfo
     @Test
     public void contextPath() {
         RestAssured.get("/rest/get")
-            .then()
-            .body(containsString("GET: /get"));
+                .then()
+                .body(containsString("GET: /get"));
 
         RestAssured.given()
-            .contentType("text/plain")
-            .post("/rest/post")
-            .then()
-            .body(containsString("POST: /post"));
+                .contentType("text/plain")
+                .post("/rest/post")
+                .then()
+                .body(containsString("POST: /post"));
     }
 
     @Override


[camel] 01/11: CAMEL-15394: PropertyBindingSupport with configurer to support walking down OGNL path without using reflection. CAMEL-15422: ScheduledPollEndpoint - Scheduler option should be Object type and not String. Regen. CAMEL-15160: Configurer - Generate details what type Map/List contains.

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

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

commit 3e2b454aac38af3f5e578fb4a6c290e12c717671
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Aug 22 12:24:56 2020 +0200

    CAMEL-15394: PropertyBindingSupport with configurer to support walking down OGNL path without using reflection.
    CAMEL-15422: ScheduledPollEndpoint - Scheduler option should be Object type and not String. Regen.
    CAMEL-15160: Configurer - Generate details what type Map/List contains.
---
 .../org/apache/camel/catalog/components/apns.json  |    2 +-
 .../org/apache/camel/catalog/components/as2.json   |    2 +-
 .../org/apache/camel/catalog/components/atom.json  |    2 +-
 .../camel/catalog/components/aws-ddbstream.json    |    2 +-
 .../camel/catalog/components/aws-kinesis.json      |    2 +-
 .../apache/camel/catalog/components/aws-s3.json    |    2 +-
 .../apache/camel/catalog/components/aws-sqs.json   |    2 +-
 .../camel/catalog/components/aws2-ddbstream.json   |    2 +-
 .../camel/catalog/components/aws2-kinesis.json     |    2 +-
 .../apache/camel/catalog/components/aws2-s3.json   |    2 +-
 .../apache/camel/catalog/components/aws2-sqs.json  |    2 +-
 .../apache/camel/catalog/components/beanstalk.json |    2 +-
 .../org/apache/camel/catalog/components/box.json   |    2 +-
 .../apache/camel/catalog/components/braintree.json |    2 +-
 .../apache/camel/catalog/components/couchbase.json |    2 +-
 .../org/apache/camel/catalog/components/cql.json   |    2 +-
 .../org/apache/camel/catalog/components/elsql.json |    2 +-
 .../camel/catalog/components/etcd-stats.json       |    2 +-
 .../org/apache/camel/catalog/components/fhir.json  |    2 +-
 .../org/apache/camel/catalog/components/file.json  |    2 +-
 .../apache/camel/catalog/components/flatpack.json  |    2 +-
 .../org/apache/camel/catalog/components/ftp.json   |    2 +-
 .../org/apache/camel/catalog/components/ftps.json  |    2 +-
 .../catalog/components/google-calendar-stream.json |    2 +-
 .../camel/catalog/components/google-calendar.json  |    2 +-
 .../camel/catalog/components/google-drive.json     |    2 +-
 .../catalog/components/google-mail-stream.json     |    2 +-
 .../camel/catalog/components/google-mail.json      |    2 +-
 .../catalog/components/google-sheets-stream.json   |    2 +-
 .../camel/catalog/components/google-sheets.json    |    2 +-
 .../org/apache/camel/catalog/components/hdfs.json  |    2 +-
 .../apache/camel/catalog/components/hipchat.json   |    2 +-
 .../org/apache/camel/catalog/components/imap.json  |    2 +-
 .../org/apache/camel/catalog/components/imaps.json |    2 +-
 .../apache/camel/catalog/components/ironmq.json    |    2 +-
 .../org/apache/camel/catalog/components/jooq.json  |    2 +-
 .../org/apache/camel/catalog/components/jpa.json   |    2 +-
 .../org/apache/camel/catalog/components/jt400.json |    2 +-
 .../org/apache/camel/catalog/components/minio.json |    2 +-
 .../apache/camel/catalog/components/mybatis.json   |    2 +-
 .../apache/camel/catalog/components/oaipmh.json    |    2 +-
 .../apache/camel/catalog/components/olingo2.json   |    2 +-
 .../apache/camel/catalog/components/olingo4.json   |    2 +-
 .../catalog/components/pg-replication-slot.json    |    2 +-
 .../org/apache/camel/catalog/components/pop3.json  |    2 +-
 .../org/apache/camel/catalog/components/pop3s.json |    2 +-
 .../camel/catalog/components/robotframework.json   |    2 +-
 .../org/apache/camel/catalog/components/rss.json   |    2 +-
 .../apache/camel/catalog/components/scheduler.json |    2 +-
 .../org/apache/camel/catalog/components/sftp.json  |    2 +-
 .../org/apache/camel/catalog/components/slack.json |    2 +-
 .../org/apache/camel/catalog/components/smtp.json  |    2 +-
 .../org/apache/camel/catalog/components/smtps.json |    2 +-
 .../org/apache/camel/catalog/components/snmp.json  |    2 +-
 .../apache/camel/catalog/components/splunk.json    |    2 +-
 .../org/apache/camel/catalog/components/sql.json   |    2 +-
 .../org/apache/camel/catalog/components/ssh.json   |    2 +-
 .../apache/camel/catalog/components/telegram.json  |    2 +-
 .../apache/camel/catalog/components/twilio.json    |    2 +-
 .../catalog/components/twitter-directmessage.json  |    2 +-
 .../camel/catalog/components/twitter-search.json   |    2 +-
 .../camel/catalog/components/twitter-timeline.json |    2 +-
 .../apache/camel/catalog/components/weather.json   |    2 +-
 .../apache/camel/catalog/components/xquery.json    |    2 +-
 .../apache/camel/catalog/components/yammer.json    |    2 +-
 .../apache/camel/catalog/components/zendesk.json   |    2 +-
 .../apache/camel/catalog/docs/apns-component.adoc  |    2 +-
 .../apache/camel/catalog/docs/as2-component.adoc   |    2 +-
 .../apache/camel/catalog/docs/atom-component.adoc  |    2 +-
 .../catalog/docs/aws-ddbstream-component.adoc      |    2 +-
 .../camel/catalog/docs/aws-kinesis-component.adoc  |    2 +-
 .../camel/catalog/docs/aws-s3-component.adoc       |    2 +-
 .../camel/catalog/docs/aws-sqs-component.adoc      |    2 +-
 .../catalog/docs/aws2-ddbstream-component.adoc     |    2 +-
 .../camel/catalog/docs/aws2-kinesis-component.adoc |    2 +-
 .../camel/catalog/docs/aws2-s3-component.adoc      |    2 +-
 .../camel/catalog/docs/aws2-sqs-component.adoc     |    2 +-
 .../camel/catalog/docs/beanstalk-component.adoc    |    2 +-
 .../apache/camel/catalog/docs/box-component.adoc   |    2 +-
 .../camel/catalog/docs/braintree-component.adoc    |    2 +-
 .../camel/catalog/docs/couchbase-component.adoc    |    8 +-
 .../apache/camel/catalog/docs/cql-component.adoc   |    2 +-
 .../apache/camel/catalog/docs/elsql-component.adoc |    2 +-
 .../camel/catalog/docs/etcd-stats-component.adoc   |    2 +-
 .../apache/camel/catalog/docs/fhir-component.adoc  |    2 +-
 .../apache/camel/catalog/docs/file-component.adoc  |    2 +-
 .../camel/catalog/docs/flatpack-component.adoc     |    2 +-
 .../apache/camel/catalog/docs/ftp-component.adoc   |    2 +-
 .../apache/camel/catalog/docs/ftps-component.adoc  |    2 +-
 .../catalog/docs/google-calendar-component.adoc    |    2 +-
 .../docs/google-calendar-stream-component.adoc     |    2 +-
 .../camel/catalog/docs/google-drive-component.adoc |    2 +-
 .../camel/catalog/docs/google-mail-component.adoc  |    2 +-
 .../catalog/docs/google-mail-stream-component.adoc |    2 +-
 .../catalog/docs/google-sheets-component.adoc      |    2 +-
 .../docs/google-sheets-stream-component.adoc       |    2 +-
 .../apache/camel/catalog/docs/hdfs-component.adoc  |    2 +-
 .../camel/catalog/docs/hipchat-component.adoc      |    2 +-
 .../camel/catalog/docs/ironmq-component.adoc       |    2 +-
 .../apache/camel/catalog/docs/jooq-component.adoc  |    2 +-
 .../apache/camel/catalog/docs/jpa-component.adoc   |    2 +-
 .../apache/camel/catalog/docs/jt400-component.adoc |    2 +-
 .../apache/camel/catalog/docs/mail-component.adoc  |    2 +-
 .../apache/camel/catalog/docs/minio-component.adoc |    2 +-
 .../camel/catalog/docs/mybatis-component.adoc      |    2 +-
 .../camel/catalog/docs/oaipmh-component.adoc       |    2 +-
 .../camel/catalog/docs/olingo2-component.adoc      |    2 +-
 .../camel/catalog/docs/olingo4-component.adoc      |    2 +-
 .../docs/pg-replication-slot-component.adoc        |    2 +-
 .../catalog/docs/robotframework-component.adoc     |    2 +-
 .../apache/camel/catalog/docs/rss-component.adoc   |    2 +-
 .../camel/catalog/docs/scheduler-component.adoc    |    2 +-
 .../apache/camel/catalog/docs/sftp-component.adoc  |    2 +-
 .../apache/camel/catalog/docs/slack-component.adoc |    2 +-
 .../apache/camel/catalog/docs/snmp-component.adoc  |    2 +-
 .../camel/catalog/docs/splunk-component.adoc       |    2 +-
 .../apache/camel/catalog/docs/sql-component.adoc   |    2 +-
 .../apache/camel/catalog/docs/ssh-component.adoc   |    2 +-
 .../camel/catalog/docs/telegram-component.adoc     |    2 +-
 .../camel/catalog/docs/twilio-component.adoc       |    2 +-
 .../docs/twitter-directmessage-component.adoc      |    2 +-
 .../catalog/docs/twitter-search-component.adoc     |    2 +-
 .../catalog/docs/twitter-timeline-component.adoc   |    2 +-
 .../camel/catalog/docs/weather-component.adoc      |    2 +-
 .../camel/catalog/docs/xquery-component.adoc       |    2 +-
 .../camel/catalog/docs/yammer-component.adoc       |    2 +-
 .../camel/catalog/docs/zendesk-component.adoc      |    2 +-
 .../component/apns/ApnsEndpointConfigurer.java     |    4 +-
 .../org/apache/camel/component/apns/apns.json      |    2 +-
 .../camel-apns/src/main/docs/apns-component.adoc   |    2 +-
 .../camel/component/as2/AS2EndpointConfigurer.java |    4 +-
 .../org/apache/camel/component/as2/as2.json        |    2 +-
 .../src/main/docs/as2-component.adoc               |    2 +-
 .../component/atom/AtomEndpointConfigurer.java     |    4 +-
 .../org/apache/camel/component/atom/atom.json      |    2 +-
 .../camel-atom/src/main/docs/atom-component.adoc   |    2 +-
 .../aws/ddbstream/DdbStreamEndpointConfigurer.java |    4 +-
 .../component/aws/ddbstream/aws-ddbstream.json     |    2 +-
 .../src/main/docs/aws-ddbstream-component.adoc     |    2 +-
 .../aws/kinesis/KinesisEndpointConfigurer.java     |    4 +-
 .../camel/component/aws/kinesis/aws-kinesis.json   |    2 +-
 .../src/main/docs/aws-kinesis-component.adoc       |    2 +-
 .../component/aws/s3/S3EndpointConfigurer.java     |    4 +-
 .../org/apache/camel/component/aws/s3/aws-s3.json  |    2 +-
 .../src/main/docs/aws-s3-component.adoc            |    2 +-
 .../component/aws/sqs/SqsEndpointConfigurer.java   |    4 +-
 .../apache/camel/component/aws/sqs/aws-sqs.json    |    2 +-
 .../src/main/docs/aws-sqs-component.adoc           |    2 +-
 .../ddbstream/Ddb2StreamEndpointConfigurer.java    |    4 +-
 .../component/aws2/ddbstream/aws2-ddbstream.json   |    2 +-
 .../src/main/docs/aws2-ddbstream-component.adoc    |    2 +-
 .../aws2/kinesis/Kinesis2EndpointConfigurer.java   |    4 +-
 .../camel/component/aws2/kinesis/aws2-kinesis.json |    2 +-
 .../src/main/docs/aws2-kinesis-component.adoc      |    2 +-
 .../aws2/s3/AWS2S3EndpointConfigurer.java          |    4 +-
 .../apache/camel/component/aws2/s3/aws2-s3.json    |    2 +-
 .../src/main/docs/aws2-s3-component.adoc           |    2 +-
 .../component/aws2/sqs/Sqs2EndpointConfigurer.java |    4 +-
 .../apache/camel/component/aws2/sqs/aws2-sqs.json  |    2 +-
 .../src/main/docs/aws2-sqs-component.adoc          |    2 +-
 .../beanstalk/BeanstalkEndpointConfigurer.java     |    4 +-
 .../camel/component/beanstalk/beanstalk.json       |    2 +-
 .../src/main/docs/beanstalk-component.adoc         |    2 +-
 ...ionsManagerEndpointConfigurationConfigurer.java |    2 +-
 ...entsManagerEndpointConfigurationConfigurer.java |    2 +-
 .../component/box/BoxConfigurationConfigurer.java  |    2 +-
 .../camel/component/box/BoxEndpointConfigurer.java |    4 +-
 ...LogsManagerEndpointConfigurationConfigurer.java |    2 +-
 ...entsManagerEndpointConfigurationConfigurer.java |    2 +-
 ...ilesManagerEndpointConfigurationConfigurer.java |    2 +-
 ...dersManagerEndpointConfigurationConfigurer.java |    2 +-
 ...oupsManagerEndpointConfigurationConfigurer.java |    2 +-
 ...archManagerEndpointConfigurationConfigurer.java |    2 +-
 ...asksManagerEndpointConfigurationConfigurer.java |    2 +-
 ...sersManagerEndpointConfigurationConfigurer.java |    2 +-
 .../org/apache/camel/component/box/box.json        |    2 +-
 .../src/main/docs/box-component.adoc               |    2 +-
 .../braintree/BraintreeEndpointConfigurer.java     |    4 +-
 .../camel/component/braintree/braintree.json       |    2 +-
 .../src/main/docs/braintree-component.adoc         |    2 +-
 .../cassandra/CassandraEndpointConfigurer.java     |    4 +-
 .../org/apache/camel/component/cassandra/cql.json  |    2 +-
 .../src/main/docs/cql-component.adoc               |    2 +-
 .../couchbase/CouchbaseEndpointConfigurer.java     |    4 +-
 .../camel/component/couchbase/couchbase.json       |    2 +-
 .../src/main/docs/couchbase-component.adoc         |    2 +-
 .../cxf/transport/CamelDestinationTest.java        |    2 +-
 .../component/elsql/ElsqlEndpointConfigurer.java   |    4 +-
 .../org/apache/camel/component/elsql/elsql.json    |    2 +-
 .../camel-elsql/src/main/docs/elsql-component.adoc |    2 +-
 .../etcd/EtcdStatsEndpointConfigurer.java          |    4 +-
 .../apache/camel/component/etcd/etcd-stats.json    |    2 +-
 .../src/main/docs/etcd-stats-component.adoc        |    2 +-
 ...apabilitiesEndpointConfigurationConfigurer.java |    2 +-
 .../FhirCreateEndpointConfigurationConfigurer.java |    2 +-
 .../FhirDeleteEndpointConfigurationConfigurer.java |    2 +-
 .../component/fhir/FhirEndpointConfigurer.java     |    4 +-
 ...FhirHistoryEndpointConfigurationConfigurer.java |    2 +-
 ...hirLoadPageEndpointConfigurationConfigurer.java |    2 +-
 .../FhirMetaEndpointConfigurationConfigurer.java   |    2 +-
 ...irOperationEndpointConfigurationConfigurer.java |    2 +-
 .../FhirPatchEndpointConfigurationConfigurer.java  |    2 +-
 .../FhirReadEndpointConfigurationConfigurer.java   |    2 +-
 .../FhirSearchEndpointConfigurationConfigurer.java |    2 +-
 ...TransactionEndpointConfigurationConfigurer.java |    2 +-
 .../FhirUpdateEndpointConfigurationConfigurer.java |    2 +-
 ...hirValidateEndpointConfigurationConfigurer.java |    2 +-
 .../org/apache/camel/component/fhir/fhir.json      |    2 +-
 .../src/main/docs/fhir-component.adoc              |    2 +-
 .../component/file/FileEndpointConfigurer.java     |    4 +-
 .../org/apache/camel/component/file/file.json      |    2 +-
 .../camel-file/src/main/docs/file-component.adoc   |    2 +-
 .../flatpack/FlatpackEndpointConfigurer.java       |    4 +-
 .../apache/camel/component/flatpack/flatpack.json  |    2 +-
 .../src/main/docs/flatpack-component.adoc          |    2 +-
 .../file/remote/FtpEndpointConfigurer.java         |    4 +-
 .../file/remote/SftpEndpointConfigurer.java        |    4 +-
 .../apache/camel/component/file/remote/ftp.json    |    2 +-
 .../apache/camel/component/file/remote/ftps.json   |    2 +-
 .../apache/camel/component/file/remote/sftp.json   |    2 +-
 .../camel-ftp/src/main/docs/ftp-component.adoc     |    2 +-
 .../camel-ftp/src/main/docs/ftps-component.adoc    |    2 +-
 .../camel-ftp/src/main/docs/sftp-component.adoc    |    2 +-
 .../calendar/GoogleCalendarEndpointConfigurer.java |    4 +-
 .../GoogleCalendarStreamEndpointConfigurer.java    |    4 +-
 .../component/google/calendar/google-calendar.json |    2 +-
 .../calendar/stream/google-calendar-stream.json    |    2 +-
 .../src/main/docs/google-calendar-component.adoc   |    2 +-
 .../docs/google-calendar-stream-component.adoc     |    2 +-
 .../DriveAboutEndpointConfigurationConfigurer.java |    2 +-
 .../DriveAppsEndpointConfigurationConfigurer.java  |    2 +-
 ...riveChangesEndpointConfigurationConfigurer.java |    2 +-
 ...iveChannelsEndpointConfigurationConfigurer.java |    2 +-
 ...iveChildrenEndpointConfigurationConfigurer.java |    2 +-
 ...iveCommentsEndpointConfigurationConfigurer.java |    2 +-
 .../DriveFilesEndpointConfigurationConfigurer.java |    2 +-
 ...riveParentsEndpointConfigurationConfigurer.java |    2 +-
 ...PermissionsEndpointConfigurationConfigurer.java |    2 +-
 ...ePropertiesEndpointConfigurationConfigurer.java |    2 +-
 ...iveRealtimeEndpointConfigurationConfigurer.java |    2 +-
 ...riveRepliesEndpointConfigurationConfigurer.java |    2 +-
 ...veRevisionsEndpointConfigurationConfigurer.java |    2 +-
 .../drive/GoogleDriveConfigurationConfigurer.java  |    2 +-
 .../drive/GoogleDriveEndpointConfigurer.java       |    4 +-
 .../camel/component/google/drive/google-drive.json |    2 +-
 .../src/main/docs/google-drive-component.adoc      |    2 +-
 .../google/mail/GoogleMailEndpointConfigurer.java  |    4 +-
 .../stream/GoogleMailStreamEndpointConfigurer.java |    4 +-
 .../camel/component/google/mail/google-mail.json   |    2 +-
 .../google/mail/stream/google-mail-stream.json     |    2 +-
 .../src/main/docs/google-mail-component.adoc       |    2 +-
 .../main/docs/google-mail-stream-component.adoc    |    2 +-
 .../sheets/GoogleSheetsEndpointConfigurer.java     |    4 +-
 .../GoogleSheetsStreamEndpointConfigurer.java      |    4 +-
 .../component/google/sheets/google-sheets.json     |    2 +-
 .../google/sheets/stream/google-sheets-stream.json |    2 +-
 .../src/main/docs/google-sheets-component.adoc     |    2 +-
 .../main/docs/google-sheets-stream-component.adoc  |    2 +-
 .../component/hdfs/HdfsEndpointConfigurer.java     |    4 +-
 .../org/apache/camel/component/hdfs/hdfs.json      |    2 +-
 .../camel-hdfs/src/main/docs/hdfs-component.adoc   |    2 +-
 .../hipchat/HipchatEndpointConfigurer.java         |    4 +-
 .../apache/camel/component/hipchat/hipchat.json    |    2 +-
 .../src/main/docs/hipchat-component.adoc           |    2 +-
 .../component/ironmq/IronMQEndpointConfigurer.java |    4 +-
 .../org/apache/camel/component/ironmq/ironmq.json  |    2 +-
 .../src/main/docs/ironmq-component.adoc            |    2 +-
 .../component/jooq/JooqEndpointConfigurer.java     |    4 +-
 .../org/apache/camel/component/jooq/jooq.json      |    2 +-
 .../camel-jooq/src/main/docs/jooq-component.adoc   |    2 +-
 .../camel/component/jpa/JpaEndpointConfigurer.java |    4 +-
 .../org/apache/camel/component/jpa/jpa.json        |    2 +-
 .../camel-jpa/src/main/docs/jpa-component.adoc     |    2 +-
 .../component/jt400/Jt400EndpointConfigurer.java   |    4 +-
 .../org/apache/camel/component/jt400/jt400.json    |    2 +-
 .../camel-jt400/src/main/docs/jt400-component.adoc |    2 +-
 .../component/mail/MailEndpointConfigurer.java     |    4 +-
 .../org/apache/camel/component/mail/imap.json      |    2 +-
 .../org/apache/camel/component/mail/imaps.json     |    2 +-
 .../org/apache/camel/component/mail/pop3.json      |    2 +-
 .../org/apache/camel/component/mail/pop3s.json     |    2 +-
 .../org/apache/camel/component/mail/smtp.json      |    2 +-
 .../org/apache/camel/component/mail/smtps.json     |    2 +-
 .../camel-mail/src/main/docs/mail-component.adoc   |    2 +-
 .../camel/component/mail/MailComponentTest.java    |    2 +-
 .../component/minio/MinioEndpointConfigurer.java   |    4 +-
 .../org/apache/camel/component/minio/minio.json    |    2 +-
 .../camel-minio/src/main/docs/minio-component.adoc |    2 +-
 .../mybatis/MyBatisEndpointConfigurer.java         |    4 +-
 .../apache/camel/component/mybatis/mybatis.json    |    2 +-
 .../src/main/docs/mybatis-component.adoc           |    2 +-
 .../oaipmh/component/OAIPMHEndpointConfigurer.java |    4 +-
 .../org/apache/camel/oaipmh/component/oaipmh.json  |    2 +-
 .../src/main/docs/oaipmh-component.adoc            |    2 +-
 .../Olingo2AppEndpointConfigurationConfigurer.java |    2 +-
 .../olingo2/Olingo2ConfigurationConfigurer.java    |    2 +-
 .../olingo2/Olingo2EndpointConfigurer.java         |    4 +-
 .../apache/camel/component/olingo2/olingo2.json    |    2 +-
 .../src/main/docs/olingo2-component.adoc           |    2 +-
 .../Olingo4AppEndpointConfigurationConfigurer.java |    2 +-
 .../olingo4/Olingo4ConfigurationConfigurer.java    |    2 +-
 .../olingo4/Olingo4EndpointConfigurer.java         |    4 +-
 .../apache/camel/component/olingo4/olingo4.json    |    2 +-
 .../src/main/docs/olingo4-component.adoc           |    2 +-
 .../slot/PgReplicationSlotEndpointConfigurer.java  |    4 +-
 .../pg/replication/slot/pg-replication-slot.json   |    2 +-
 .../main/docs/pg-replication-slot-component.adoc   |    2 +-
 .../RobotFrameworkEndpointConfigurer.java          |    4 +-
 .../component/robotframework/robotframework.json   |    2 +-
 .../src/main/docs/robotframework-component.adoc    |    2 +-
 .../camel/component/rss/RssEndpointConfigurer.java |    4 +-
 .../org/apache/camel/component/rss/rss.json        |    2 +-
 .../camel-rss/src/main/docs/rss-component.adoc     |    2 +-
 .../component/xquery/XQueryEndpointConfigurer.java |    4 +-
 .../org/apache/camel/component/xquery/xquery.json  |    2 +-
 .../src/main/docs/xquery-component.adoc            |    2 +-
 .../scheduler/SchedulerEndpointConfigurer.java     |    4 +-
 .../camel/component/scheduler/scheduler.json       |    2 +-
 .../src/main/docs/scheduler-component.adoc         |    2 +-
 .../component/slack/SlackEndpointConfigurer.java   |    4 +-
 .../org/apache/camel/component/slack/slack.json    |    2 +-
 .../camel-slack/src/main/docs/slack-component.adoc |    2 +-
 .../component/snmp/SnmpEndpointConfigurer.java     |    4 +-
 .../org/apache/camel/component/snmp/snmp.json      |    2 +-
 .../camel-snmp/src/main/docs/snmp-component.adoc   |    2 +-
 .../component/splunk/SplunkEndpointConfigurer.java |    4 +-
 .../org/apache/camel/component/splunk/splunk.json  |    2 +-
 .../src/main/docs/splunk-component.adoc            |    2 +-
 .../camel/component/sql/SqlEndpointConfigurer.java |    4 +-
 .../org/apache/camel/component/sql/sql.json        |    2 +-
 .../camel-sql/src/main/docs/sql-component.adoc     |    2 +-
 .../camel/component/ssh/SshEndpointConfigurer.java |    4 +-
 .../org/apache/camel/component/ssh/ssh.json        |    2 +-
 .../camel-ssh/src/main/docs/ssh-component.adoc     |    2 +-
 .../telegram/TelegramEndpointConfigurer.java       |    4 +-
 .../apache/camel/component/telegram/telegram.json  |    2 +-
 .../src/main/docs/telegram-component.adoc          |    2 +-
 .../MessageEndpointConfigurationConfigurer.java    |    2 +-
 .../component/twilio/TwilioEndpointConfigurer.java |    4 +-
 .../org/apache/camel/component/twilio/twilio.json  |    2 +-
 .../src/main/docs/twilio-component.adoc            |    2 +-
 .../TwitterDirectMessageEndpointConfigurer.java    |    4 +-
 .../search/TwitterSearchEndpointConfigurer.java    |    4 +-
 .../TwitterTimelineEndpointConfigurer.java         |    4 +-
 .../directmessage/twitter-directmessage.json       |    2 +-
 .../component/twitter/search/twitter-search.json   |    2 +-
 .../twitter/timeline/twitter-timeline.json         |    2 +-
 .../main/docs/twitter-directmessage-component.adoc |    2 +-
 .../src/main/docs/twitter-search-component.adoc    |    2 +-
 .../src/main/docs/twitter-timeline-component.adoc  |    2 +-
 .../weather/WeatherEndpointConfigurer.java         |    4 +-
 .../apache/camel/component/weather/weather.json    |    2 +-
 .../src/main/docs/weather-component.adoc           |    2 +-
 .../apache/camel/WorkdayReportProducerTest.java    |    3 +-
 .../component/yammer/YammerEndpointConfigurer.java |    4 +-
 .../org/apache/camel/component/yammer/yammer.json  |    2 +-
 .../src/main/docs/yammer-component.adoc            |    2 +-
 .../ZendeskEndpointConfigurationConfigurer.java    |    2 +-
 .../zendesk/ZendeskEndpointConfigurer.java         |    4 +-
 .../apache/camel/component/zendesk/zendesk.json    |    2 +-
 .../src/main/docs/zendesk-component.adoc           |    2 +-
 .../apache/camel/spi/PropertyConfigurerGetter.java |   11 +-
 .../camel/impl/ExtendedCamelContextConfigurer.java |    2 +-
 .../camel/impl/RestConfigurationConfigurer.java    |    2 +-
 .../camel/spring/SpringConsumerTemplateTest.java   |    2 +-
 .../file/FileProducerChmodOptionTest.java          |    5 +-
 .../support/PropertyBindingSupportArrayTest.java   |    4 +-
 .../PropertyBindingSupportConfigurerTest.java      |  108 +-
 .../support/PropertyBindingSupportListTest.java    |    2 +-
 .../support/PropertyBindingSupportMapTest.java     |    2 +-
 .../camel/support/PropertyBindingSupportTest.java  |    7 +-
 .../org/apache/camel/util/StringHelperTest.java    |   15 +
 .../endpoint/dsl/AS2EndpointBuilderFactory.java    |   17 +-
 .../endpoint/dsl/AWS2S3EndpointBuilderFactory.java |   17 +-
 .../endpoint/dsl/ApnsEndpointBuilderFactory.java   |   17 +-
 .../endpoint/dsl/AtomEndpointBuilderFactory.java   |   17 +-
 .../dsl/BeanstalkEndpointBuilderFactory.java       |   17 +-
 .../endpoint/dsl/BoxEndpointBuilderFactory.java    |   17 +-
 .../dsl/BraintreeEndpointBuilderFactory.java       |   17 +-
 .../dsl/CassandraEndpointBuilderFactory.java       |   17 +-
 .../dsl/CouchbaseEndpointBuilderFactory.java       |   17 +-
 .../dsl/Ddb2StreamEndpointBuilderFactory.java      |   17 +-
 .../dsl/DdbStreamEndpointBuilderFactory.java       |   17 +-
 .../endpoint/dsl/ElsqlEndpointBuilderFactory.java  |   17 +-
 .../dsl/EtcdStatsEndpointBuilderFactory.java       |   17 +-
 .../endpoint/dsl/FhirEndpointBuilderFactory.java   |   17 +-
 .../endpoint/dsl/FileEndpointBuilderFactory.java   |   17 +-
 .../dsl/FlatpackEndpointBuilderFactory.java        |   17 +-
 .../endpoint/dsl/FtpEndpointBuilderFactory.java    |   17 +-
 .../endpoint/dsl/FtpsEndpointBuilderFactory.java   |   17 +-
 .../dsl/GoogleCalendarEndpointBuilderFactory.java  |   17 +-
 ...GoogleCalendarStreamEndpointBuilderFactory.java |   17 +-
 .../dsl/GoogleDriveEndpointBuilderFactory.java     |   17 +-
 .../dsl/GoogleMailEndpointBuilderFactory.java      |   17 +-
 .../GoogleMailStreamEndpointBuilderFactory.java    |   17 +-
 .../dsl/GoogleSheetsEndpointBuilderFactory.java    |   17 +-
 .../GoogleSheetsStreamEndpointBuilderFactory.java  |   17 +-
 .../endpoint/dsl/HdfsEndpointBuilderFactory.java   |   17 +-
 .../dsl/HipchatEndpointBuilderFactory.java         |   17 +-
 .../endpoint/dsl/IronMQEndpointBuilderFactory.java |   17 +-
 .../endpoint/dsl/JooqEndpointBuilderFactory.java   |   17 +-
 .../endpoint/dsl/JpaEndpointBuilderFactory.java    |   17 +-
 .../endpoint/dsl/Jt400EndpointBuilderFactory.java  |   17 +-
 .../dsl/Kinesis2EndpointBuilderFactory.java        |   17 +-
 .../dsl/KinesisEndpointBuilderFactory.java         |   17 +-
 .../endpoint/dsl/MailEndpointBuilderFactory.java   |   17 +-
 .../endpoint/dsl/MinioEndpointBuilderFactory.java  |   17 +-
 .../dsl/MyBatisEndpointBuilderFactory.java         |   17 +-
 .../endpoint/dsl/OAIPMHEndpointBuilderFactory.java |   17 +-
 .../dsl/Olingo2EndpointBuilderFactory.java         |   17 +-
 .../dsl/Olingo4EndpointBuilderFactory.java         |   17 +-
 .../PgReplicationSlotEndpointBuilderFactory.java   |   17 +-
 .../dsl/RobotFrameworkEndpointBuilderFactory.java  |   17 +-
 .../endpoint/dsl/RssEndpointBuilderFactory.java    |   17 +-
 .../endpoint/dsl/S3EndpointBuilderFactory.java     |   17 +-
 .../dsl/SchedulerEndpointBuilderFactory.java       |   17 +-
 .../endpoint/dsl/SftpEndpointBuilderFactory.java   |   17 +-
 .../endpoint/dsl/SlackEndpointBuilderFactory.java  |   17 +-
 .../endpoint/dsl/SnmpEndpointBuilderFactory.java   |   17 +-
 .../endpoint/dsl/SplunkEndpointBuilderFactory.java |   17 +-
 .../endpoint/dsl/SqlEndpointBuilderFactory.java    |   17 +-
 .../endpoint/dsl/Sqs2EndpointBuilderFactory.java   |   17 +-
 .../endpoint/dsl/SqsEndpointBuilderFactory.java    |   17 +-
 .../endpoint/dsl/SshEndpointBuilderFactory.java    |   17 +-
 .../dsl/TelegramEndpointBuilderFactory.java        |   17 +-
 .../endpoint/dsl/TwilioEndpointBuilderFactory.java |   17 +-
 ...TwitterDirectMessageEndpointBuilderFactory.java |   18 +-
 .../dsl/TwitterSearchEndpointBuilderFactory.java   |   17 +-
 .../dsl/TwitterTimelineEndpointBuilderFactory.java |   18 +-
 .../dsl/WeatherEndpointBuilderFactory.java         |   17 +-
 .../endpoint/dsl/XQueryEndpointBuilderFactory.java |   17 +-
 .../endpoint/dsl/YammerEndpointBuilderFactory.java |   17 +-
 .../dsl/ZendeskEndpointBuilderFactory.java         |   17 +-
 .../HealthConfigurationPropertiesConfigurer.java   |    2 +-
 .../MainConfigurationPropertiesConfigurer.java     |    2 +-
 .../RestConfigurationPropertiesConfigurer.java     |    2 +-
 ...hreadPoolConfigurationPropertiesConfigurer.java |    2 +-
 .../main/{MySecondBar.java => MyOtherBar.java}     |   13 +-
 .../main/{MySecondBar.java => MyOtherFoo.java}     |   14 +-
 .../java/org/apache/camel/main/MySecondBar.java    |   10 +
 .../apache/camel/main/MySecondBarConfigurer.java   |    7 +-
 .../apache/camel/main/MySecondFooConfigurer.java   |    2 +-
 ...pertyBindingSupportRootArrayReflectionTest.java |  150 +++
 .../main/PropertyBindingSupportRootArrayTest.java  |    4 +-
 ...yBindingSupportRootArrayWithConfigurerTest.java |   72 +-
 .../main/support/MyDummyComponentConfigurer.java   |    1 +
 .../camel/support/PropertyBindingSupport.java      | 1124 +++++++++++++++-----
 .../camel/support/ScheduledPollEndpoint.java       |   40 +-
 .../java/org/apache/camel/util/StringHelper.java   |   14 +
 .../modules/ROOT/pages/apns-component.adoc         |    2 +-
 .../modules/ROOT/pages/as2-component.adoc          |    2 +-
 .../modules/ROOT/pages/atom-component.adoc         |    2 +-
 .../ROOT/pages/aws-ddbstream-component.adoc        |    2 +-
 .../modules/ROOT/pages/aws-kinesis-component.adoc  |    2 +-
 .../modules/ROOT/pages/aws-s3-component.adoc       |    2 +-
 .../modules/ROOT/pages/aws-sqs-component.adoc      |    2 +-
 .../ROOT/pages/aws2-ddbstream-component.adoc       |    2 +-
 .../modules/ROOT/pages/aws2-kinesis-component.adoc |    2 +-
 .../modules/ROOT/pages/aws2-s3-component.adoc      |    2 +-
 .../modules/ROOT/pages/aws2-sqs-component.adoc     |    2 +-
 .../modules/ROOT/pages/beanstalk-component.adoc    |    2 +-
 .../modules/ROOT/pages/box-component.adoc          |    2 +-
 .../modules/ROOT/pages/braintree-component.adoc    |    2 +-
 .../modules/ROOT/pages/couchbase-component.adoc    |    2 +-
 .../modules/ROOT/pages/cql-component.adoc          |    2 +-
 .../modules/ROOT/pages/elsql-component.adoc        |    2 +-
 .../modules/ROOT/pages/etcd-stats-component.adoc   |    2 +-
 .../modules/ROOT/pages/fhir-component.adoc         |    2 +-
 .../modules/ROOT/pages/file-component.adoc         |    2 +-
 .../modules/ROOT/pages/flatpack-component.adoc     |    2 +-
 .../modules/ROOT/pages/ftp-component.adoc          |    2 +-
 .../modules/ROOT/pages/ftps-component.adoc         |    2 +-
 .../ROOT/pages/google-calendar-component.adoc      |    2 +-
 .../pages/google-calendar-stream-component.adoc    |    2 +-
 .../modules/ROOT/pages/google-drive-component.adoc |    2 +-
 .../modules/ROOT/pages/google-mail-component.adoc  |    2 +-
 .../ROOT/pages/google-mail-stream-component.adoc   |    2 +-
 .../ROOT/pages/google-sheets-component.adoc        |    2 +-
 .../ROOT/pages/google-sheets-stream-component.adoc |    2 +-
 .../modules/ROOT/pages/hdfs-component.adoc         |    2 +-
 .../modules/ROOT/pages/hipchat-component.adoc      |    2 +-
 .../modules/ROOT/pages/ironmq-component.adoc       |    2 +-
 .../modules/ROOT/pages/jooq-component.adoc         |    2 +-
 .../modules/ROOT/pages/jpa-component.adoc          |    2 +-
 .../modules/ROOT/pages/jt400-component.adoc        |    2 +-
 .../modules/ROOT/pages/mail-component.adoc         |    2 +-
 .../modules/ROOT/pages/minio-component.adoc        |    2 +-
 .../modules/ROOT/pages/mybatis-component.adoc      |    2 +-
 .../modules/ROOT/pages/oaipmh-component.adoc       |    2 +-
 .../modules/ROOT/pages/olingo2-component.adoc      |    2 +-
 .../modules/ROOT/pages/olingo4-component.adoc      |    2 +-
 .../ROOT/pages/pg-replication-slot-component.adoc  |    2 +-
 .../ROOT/pages/robotframework-component.adoc       |    2 +-
 .../modules/ROOT/pages/rss-component.adoc          |    2 +-
 .../modules/ROOT/pages/scheduler-component.adoc    |    2 +-
 .../modules/ROOT/pages/sftp-component.adoc         |    2 +-
 .../modules/ROOT/pages/slack-component.adoc        |    2 +-
 .../modules/ROOT/pages/snmp-component.adoc         |    2 +-
 .../modules/ROOT/pages/splunk-component.adoc       |    2 +-
 .../modules/ROOT/pages/sql-component.adoc          |    2 +-
 .../modules/ROOT/pages/ssh-component.adoc          |    2 +-
 .../modules/ROOT/pages/telegram-component.adoc     |    2 +-
 .../modules/ROOT/pages/twilio-component.adoc       |    2 +-
 .../pages/twitter-directmessage-component.adoc     |    2 +-
 .../ROOT/pages/twitter-search-component.adoc       |    2 +-
 .../ROOT/pages/twitter-timeline-component.adoc     |    2 +-
 .../modules/ROOT/pages/weather-component.adoc      |    2 +-
 .../modules/ROOT/pages/xquery-component.adoc       |    2 +-
 .../modules/ROOT/pages/yammer-component.adoc       |    2 +-
 .../modules/ROOT/pages/zendesk-component.adoc      |    2 +-
 .../packaging/PropertyConfigurerGenerator.java     |    5 +-
 511 files changed, 2687 insertions(+), 947 deletions(-)

diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/apns.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/apns.json
index 94dcb6d..9438629 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/apns.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/apns.json
@@ -46,7 +46,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/as2.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/as2.json
index fde2393..eaba37c 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/as2.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/as2.json
@@ -73,7 +73,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/atom.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/atom.json
index 5d1994a..056928e 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/atom.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/atom.json
@@ -50,7 +50,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-ddbstream.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-ddbstream.json
index 6e58c60..7e3018c 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-ddbstream.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-ddbstream.json
@@ -63,7 +63,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-kinesis.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-kinesis.json
index ad40fa9..ec767cb 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-kinesis.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-kinesis.json
@@ -69,7 +69,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-s3.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-s3.json
index 0b581ce..8ed9635 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-s3.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-s3.json
@@ -115,7 +115,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-sqs.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-sqs.json
index 49b4ba1..8de9360 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-sqs.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws-sqs.json
@@ -115,7 +115,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-ddbstream.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-ddbstream.json
index 8601ff7..54d2e90 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-ddbstream.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-ddbstream.json
@@ -65,7 +65,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-kinesis.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-kinesis.json
index 492c7ec..2e350f2 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-kinesis.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-kinesis.json
@@ -71,7 +71,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-s3.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-s3.json
index c5a6e97..93957ad 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-s3.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-s3.json
@@ -117,7 +117,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-sqs.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-sqs.json
index a7864cf..7b070cf 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-sqs.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-sqs.json
@@ -117,7 +117,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/beanstalk.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/beanstalk.json
index 18bed46..9da4c58 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/beanstalk.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/beanstalk.json
@@ -52,7 +52,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/box.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/box.json
index 27a820d..197493f 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/box.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/box.json
@@ -67,7 +67,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/braintree.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/braintree.json
index 18b6133..83ca716 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/braintree.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/braintree.json
@@ -55,7 +55,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/couchbase.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/couchbase.json
index e01ebc1..bff72e4 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/couchbase.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/couchbase.json
@@ -67,7 +67,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/cql.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/cql.json
index 49e7b87..4c050a5 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/cql.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/cql.json
@@ -57,7 +57,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/elsql.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/elsql.json
index 4f402cd..8948b2d 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/elsql.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/elsql.json
@@ -77,7 +77,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/etcd-stats.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/etcd-stats.json
index 8539fc2..3ce5939 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/etcd-stats.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/etcd-stats.json
@@ -63,7 +63,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/fhir.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/fhir.json
index a6f40ba..b9b01f2 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/fhir.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/fhir.json
@@ -90,7 +90,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/file.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/file.json
index f518103..902435b 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/file.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/file.json
@@ -111,7 +111,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/flatpack.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/flatpack.json
index 381026f..27f4e75 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/flatpack.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/flatpack.json
@@ -51,7 +51,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ftp.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ftp.json
index a2b1573..2a9f0d2 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ftp.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ftp.json
@@ -130,7 +130,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ftps.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ftps.json
index 2676f28..116ed1a 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ftps.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ftps.json
@@ -131,7 +131,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar-stream.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar-stream.json
index b552b0f..c6ec32f 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar-stream.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar-stream.json
@@ -66,7 +66,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar.json
index 326824b..9456269 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar.json
@@ -63,7 +63,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-drive.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-drive.json
index b0bb204..ac3e9ce 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-drive.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-drive.json
@@ -58,7 +58,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail-stream.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail-stream.json
index 4691f7a..b9bcffe 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail-stream.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail-stream.json
@@ -62,7 +62,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail.json
index 889c38b..a67c6f4 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail.json
@@ -55,7 +55,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets-stream.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets-stream.json
index ab26df0..c28046a 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets-stream.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets-stream.json
@@ -71,7 +71,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets.json
index e68ab81..e35e15a 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets.json
@@ -56,7 +56,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/hdfs.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/hdfs.json
index 56cbba0..1c5c619 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/hdfs.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/hdfs.json
@@ -70,7 +70,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/hipchat.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/hipchat.json
index 06809f1..f50a09a 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/hipchat.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/hipchat.json
@@ -49,7 +49,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/imap.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/imap.json
index ffdebe1..8c64be5 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/imap.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/imap.json
@@ -127,7 +127,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/imaps.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/imaps.json
index bcce8ce..fee2f9f 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/imaps.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/imaps.json
@@ -127,7 +127,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ironmq.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ironmq.json
index 4db17d0..6e6b247 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ironmq.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ironmq.json
@@ -55,7 +55,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jooq.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jooq.json
index b9c46b7..18d8793 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jooq.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jooq.json
@@ -53,7 +53,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jpa.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jpa.json
index 2a4994a..1fdfb01 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jpa.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jpa.json
@@ -72,7 +72,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jt400.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jt400.json
index a8d0066..bd8bbe5 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jt400.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jt400.json
@@ -60,7 +60,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/minio.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/minio.json
index 5e910b1..8577b2a70 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/minio.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/minio.json
@@ -129,7 +129,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/mybatis.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/mybatis.json
index 38576b1..2fc4bcd 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/mybatis.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/mybatis.json
@@ -56,7 +56,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/oaipmh.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/oaipmh.json
index c36f846..b70714c 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/oaipmh.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/oaipmh.json
@@ -51,7 +51,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo2.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo2.json
index f07ed5a..1ac931e 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo2.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo2.json
@@ -73,7 +73,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo4.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo4.json
index 9ed9730..9e2954d 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo4.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo4.json
@@ -69,7 +69,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pg-replication-slot.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pg-replication-slot.json
index d51e1a3..2702dfb 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pg-replication-slot.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pg-replication-slot.json
@@ -51,7 +51,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pop3.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pop3.json
index 6bca483..70e76ab 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pop3.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pop3.json
@@ -127,7 +127,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pop3s.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pop3s.json
index c14cdac..77a942d 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pop3s.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pop3s.json
@@ -127,7 +127,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/robotframework.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/robotframework.json
index 2321fc7..312684d0 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/robotframework.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/robotframework.json
@@ -140,7 +140,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/rss.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/rss.json
index 3e73028..b3937df 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/rss.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/rss.json
@@ -50,7 +50,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/scheduler.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/scheduler.json
index ffa202b..1cfe558 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/scheduler.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/scheduler.json
@@ -44,7 +44,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/sftp.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/sftp.json
index eaca638..ef9fb84 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/sftp.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/sftp.json
@@ -129,7 +129,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/slack.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/slack.json
index 9a98971..47d31e3 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/slack.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/slack.json
@@ -52,7 +52,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/smtp.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/smtp.json
index aa63784..8752767 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/smtp.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/smtp.json
@@ -127,7 +127,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/smtps.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/smtps.json
index 859c236..adea903 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/smtps.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/smtps.json
@@ -127,7 +127,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/snmp.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/snmp.json
index aa42543..a07c1f6 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/snmp.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/snmp.json
@@ -55,7 +55,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/splunk.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/splunk.json
index f97ab02..1735d0a 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/splunk.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/splunk.json
@@ -64,7 +64,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/sql.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/sql.json
index ce81134..62571b9 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/sql.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/sql.json
@@ -72,7 +72,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ssh.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ssh.json
index a3efd04..42a3aae 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ssh.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/ssh.json
@@ -67,7 +67,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/telegram.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/telegram.json
index caa61b0..7fbcbe3 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/telegram.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/telegram.json
@@ -57,7 +57,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twilio.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twilio.json
index 90d6c74..d55ae1c 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twilio.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twilio.json
@@ -51,7 +51,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twitter-directmessage.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twitter-directmessage.json
index 2d48593..481fe03 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twitter-directmessage.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twitter-directmessage.json
@@ -70,7 +70,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twitter-search.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twitter-search.json
index 4f68e51..400e55b 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twitter-search.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twitter-search.json
@@ -70,7 +70,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twitter-timeline.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twitter-timeline.json
index c352ecd..7d2989a 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twitter-timeline.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twitter-timeline.json
@@ -71,7 +71,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/weather.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/weather.json
index e3c410e..a888078 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/weather.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/weather.json
@@ -62,7 +62,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/xquery.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/xquery.json
index c261238..9634ec0 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/xquery.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/xquery.json
@@ -59,7 +59,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/yammer.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/yammer.json
index 0970092..9e96c0f 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/yammer.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/yammer.json
@@ -63,7 +63,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/zendesk.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/zendesk.json
index cd1de1c..50d1fa0 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/zendesk.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/zendesk.json
@@ -48,7 +48,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/apns-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/apns-component.adoc
index a302d06..5b5df2c 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/apns-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/apns-component.adoc
@@ -120,7 +120,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/as2-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/as2-component.adoc
index 1c5591d..d1c3d40 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/as2-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/as2-component.adoc
@@ -134,7 +134,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/atom-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/atom-component.adoc
index f47782d..07de6f4 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/atom-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/atom-component.adoc
@@ -106,7 +106,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-ddbstream-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-ddbstream-component.adoc
index 9b63f6e..30fecd5 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-ddbstream-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-ddbstream-component.adoc
@@ -116,7 +116,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-kinesis-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-kinesis-component.adoc
index 57d0d81..bb86fdc 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-kinesis-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-kinesis-component.adoc
@@ -123,7 +123,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-s3-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-s3-component.adoc
index 07738a8..c4f8735 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-s3-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-s3-component.adoc
@@ -182,7 +182,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-sqs-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-sqs-component.adoc
index 53e1c1f..f255460 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-sqs-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws-sqs-component.adoc
@@ -170,7 +170,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-ddbstream-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-ddbstream-component.adoc
index 6585e57..b611d14 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-ddbstream-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-ddbstream-component.adoc
@@ -123,7 +123,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-kinesis-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-kinesis-component.adoc
index 910efb6..08369e8 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-kinesis-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-kinesis-component.adoc
@@ -130,7 +130,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-s3-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-s3-component.adoc
index 6565c49..33f054e 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-s3-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-s3-component.adoc
@@ -184,7 +184,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-sqs-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-sqs-component.adoc
index 839b8e2..0368dfe 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-sqs-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-sqs-component.adoc
@@ -177,7 +177,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/beanstalk-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/beanstalk-component.adoc
index 98225c5..54fcda5 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/beanstalk-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/beanstalk-component.adoc
@@ -131,7 +131,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/box-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/box-component.adoc
index 2014a91..1214b65 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/box-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/box-component.adoc
@@ -134,7 +134,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/braintree-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/braintree-component.adoc
index e574eb0..0f1312b 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/braintree-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/braintree-component.adoc
@@ -114,7 +114,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/couchbase-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/couchbase-component.adoc
index 5a63855..00b55c0 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/couchbase-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/couchbase-component.adoc
@@ -79,9 +79,9 @@ with the following path and query parameters:
 |===
 | Name | Description | Default | Type
 | *bucket* (common) | The bucket to use |  | String
-| *collection* (common) | The collection to use | _default | String
+| *collection* (common) | The collection to use |  | String
 | *key* (common) | The key to use |  | String
-| *scope* (common) | The scope to use | _default | String
+| *scope* (common) | The scope to use |  | String
 | *bridgeErrorHandler* (consumer) | 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. | false | boolean
 | *consumerProcessedStrategy* (consumer) | Define the consumer Processed strategy to use | none | String
 | *descending* (consumer) | Define if this operation is descending or not | false | boolean
@@ -105,7 +105,7 @@ with the following path and query parameters:
 | *startingIdForInsertsFrom* (producer) | Define the starting Id where we are doing an insert operation |  | long
 | *additionalHosts* (advanced) | The additional hosts |  | String
 | *basicPropertyBinding* (advanced) | Whether the endpoint should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | boolean
-| *queryTimeout* (advanced) | Define the operation timeout | 2500 | long
+| *queryTimeout* (advanced) | Define the operation timeout in milliseconds | 2500 | long
 | *synchronous* (advanced) | Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported). | false | boolean
 | *backoffErrorThreshold* (scheduler) | The number of subsequent error polls (failed due some error) that should happen before the backoffMultipler should kick-in. |  | int
 | *backoffIdleThreshold* (scheduler) | The number of subsequent idle polls that should happen before the backoffMultipler should kick-in. |  | int
@@ -116,7 +116,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/cql-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/cql-component.adoc
index c3f9e89..7786268 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/cql-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/cql-component.adoc
@@ -133,7 +133,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/elsql-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/elsql-component.adoc
index 286771b..3112be7 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/elsql-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/elsql-component.adoc
@@ -148,7 +148,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/etcd-stats-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/etcd-stats-component.adoc
index acad969..21cb1ec 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/etcd-stats-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/etcd-stats-component.adoc
@@ -100,7 +100,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/fhir-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/fhir-component.adoc
index 8798098..f286070 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/fhir-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/fhir-component.adoc
@@ -157,7 +157,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/file-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/file-component.adoc
index a349f35..e89f1aa 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/file-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/file-component.adoc
@@ -185,7 +185,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/flatpack-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/flatpack-component.adoc
index efab23a..a99e1ae 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/flatpack-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/flatpack-component.adoc
@@ -112,7 +112,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ftp-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ftp-component.adoc
index 67bcf29..fa3996c 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ftp-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ftp-component.adoc
@@ -216,7 +216,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ftps-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ftps-component.adoc
index ecc587c..84460a3 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ftps-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ftps-component.adoc
@@ -175,7 +175,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-calendar-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-calendar-component.adoc
index 0d368fe..88d40ad 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-calendar-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-calendar-component.adoc
@@ -128,7 +128,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-calendar-stream-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-calendar-stream-component.adoc
index f5a6dc9..38a1892 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-calendar-stream-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-calendar-stream-component.adoc
@@ -134,7 +134,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-drive-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-drive-component.adoc
index 42d4728..68fc767 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-drive-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-drive-component.adoc
@@ -150,7 +150,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-mail-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-mail-component.adoc
index 1dd09cd..2db3039 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-mail-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-mail-component.adoc
@@ -138,7 +138,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-mail-stream-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-mail-stream-component.adoc
index 7792bda..06c2470 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-mail-stream-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-mail-stream-component.adoc
@@ -128,7 +128,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-sheets-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-sheets-component.adoc
index 4400e9d..293e510 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-sheets-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-sheets-component.adoc
@@ -134,7 +134,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-sheets-stream-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-sheets-stream-component.adoc
index c3a1efb..cf8521a 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-sheets-stream-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/google-sheets-stream-component.adoc
@@ -138,7 +138,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hdfs-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hdfs-component.adoc
index 9f5eec9..35f4dc8 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hdfs-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hdfs-component.adoc
@@ -148,7 +148,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hipchat-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hipchat-component.adoc
index f153cfc..5061a19 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hipchat-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/hipchat-component.adoc
@@ -100,7 +100,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ironmq-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ironmq-component.adoc
index 628f669..b0895d6 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ironmq-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ironmq-component.adoc
@@ -101,7 +101,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/jooq-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/jooq-component.adoc
index 704778e..3b81e34 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/jooq-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/jooq-component.adoc
@@ -113,7 +113,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/jpa-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/jpa-component.adoc
index 87ce7d2..193be0f 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/jpa-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/jpa-component.adoc
@@ -192,7 +192,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/jt400-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/jt400-component.adoc
index 1f3b886..2a36483 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/jt400-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/jt400-component.adoc
@@ -129,7 +129,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/mail-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/mail-component.adoc
index 617a25b..4f225af 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/mail-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/mail-component.adoc
@@ -238,7 +238,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/minio-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/minio-component.adoc
index 63b862c..3a05e1e 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/minio-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/minio-component.adoc
@@ -181,7 +181,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/mybatis-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/mybatis-component.adoc
index 25d35f1..73c5240 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/mybatis-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/mybatis-component.adoc
@@ -118,7 +118,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/oaipmh-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/oaipmh-component.adoc
index 7934876..bf3e17f 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/oaipmh-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/oaipmh-component.adoc
@@ -103,7 +103,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/olingo2-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/olingo2-component.adoc
index bd2e800..ceafa19 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/olingo2-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/olingo2-component.adoc
@@ -141,7 +141,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/olingo4-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/olingo4-component.adoc
index 3df85ab..b582cca 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/olingo4-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/olingo4-component.adoc
@@ -138,7 +138,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/pg-replication-slot-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/pg-replication-slot-component.adoc
index 88988f6..158195d 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/pg-replication-slot-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/pg-replication-slot-component.adoc
@@ -108,7 +108,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/robotframework-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/robotframework-component.adoc
index 175aa79..1bffcaa 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/robotframework-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/robotframework-component.adoc
@@ -203,7 +203,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/rss-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/rss-component.adoc
index f398dd5..db71736 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/rss-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/rss-component.adoc
@@ -108,7 +108,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/scheduler-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/scheduler-component.adoc
index 2c9bdea..b8c040c 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/scheduler-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/scheduler-component.adoc
@@ -97,7 +97,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/sftp-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/sftp-component.adoc
index ccfe05f..03dc751 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/sftp-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/sftp-component.adoc
@@ -174,7 +174,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/slack-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/slack-component.adoc
index c1e6b6a..b45e784 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/slack-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/slack-component.adoc
@@ -117,7 +117,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/snmp-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/snmp-component.adoc
index 3566e70..6049d7f 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/snmp-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/snmp-component.adoc
@@ -119,7 +119,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/splunk-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/splunk-component.adoc
index 1830568..d329c24 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/splunk-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/splunk-component.adoc
@@ -173,7 +173,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/sql-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/sql-component.adoc
index 8ed1b7a..0bc2469 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/sql-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/sql-component.adoc
@@ -202,7 +202,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ssh-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ssh-component.adoc
index cb96ee5..d14c863 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ssh-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/ssh-component.adoc
@@ -119,7 +119,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/telegram-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/telegram-component.adoc
index 0230e95..b3943f0 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/telegram-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/telegram-component.adoc
@@ -125,7 +125,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twilio-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twilio-component.adoc
index 8b962f0..e51e0ef 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twilio-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twilio-component.adoc
@@ -92,7 +92,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twitter-directmessage-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twitter-directmessage-component.adoc
index 9639dff..baad862 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twitter-directmessage-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twitter-directmessage-component.adoc
@@ -99,7 +99,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twitter-search-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twitter-search-component.adoc
index 4e9994e..a1045a0 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twitter-search-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twitter-search-component.adoc
@@ -108,7 +108,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twitter-timeline-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twitter-timeline-component.adoc
index bc92e63..9718d5c 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twitter-timeline-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/twitter-timeline-component.adoc
@@ -100,7 +100,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/weather-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/weather-component.adoc
index ed531be..8372186 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/weather-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/weather-component.adoc
@@ -131,7 +131,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/xquery-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/xquery-component.adoc
index ec7b473..0e1be60 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/xquery-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/xquery-component.adoc
@@ -94,7 +94,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/yammer-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/yammer-component.adoc
index a5160ce..84447a6 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/yammer-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/yammer-component.adoc
@@ -130,7 +130,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/zendesk-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/zendesk-component.adoc
index b77958e..3895d95 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/zendesk-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/zendesk-component.adoc
@@ -89,7 +89,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-apns/src/generated/java/org/apache/camel/component/apns/ApnsEndpointConfigurer.java b/components/camel-apns/src/generated/java/org/apache/camel/component/apns/ApnsEndpointConfigurer.java
index 20dc6e6..d4312b0 100644
--- a/components/camel-apns/src/generated/java/org/apache/camel/component/apns/ApnsEndpointConfigurer.java
+++ b/components/camel-apns/src/generated/java/org/apache/camel/component/apns/ApnsEndpointConfigurer.java
@@ -47,7 +47,7 @@ public class ApnsEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -82,7 +82,7 @@ public class ApnsEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-apns/src/generated/resources/org/apache/camel/component/apns/apns.json b/components/camel-apns/src/generated/resources/org/apache/camel/component/apns/apns.json
index 94dcb6d..9438629 100644
--- a/components/camel-apns/src/generated/resources/org/apache/camel/component/apns/apns.json
+++ b/components/camel-apns/src/generated/resources/org/apache/camel/component/apns/apns.json
@@ -46,7 +46,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-apns/src/main/docs/apns-component.adoc b/components/camel-apns/src/main/docs/apns-component.adoc
index a302d06..5b5df2c 100644
--- a/components/camel-apns/src/main/docs/apns-component.adoc
+++ b/components/camel-apns/src/main/docs/apns-component.adoc
@@ -120,7 +120,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-as2/camel-as2-component/src/generated/java/org/apache/camel/component/as2/AS2EndpointConfigurer.java b/components/camel-as2/camel-as2-component/src/generated/java/org/apache/camel/component/as2/AS2EndpointConfigurer.java
index fa2ac28..b3a0e26 100644
--- a/components/camel-as2/camel-as2-component/src/generated/java/org/apache/camel/component/as2/AS2EndpointConfigurer.java
+++ b/components/camel-as2/camel-as2-component/src/generated/java/org/apache/camel/component/as2/AS2EndpointConfigurer.java
@@ -78,7 +78,7 @@ public class AS2EndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -148,7 +148,7 @@ public class AS2EndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("requestUri", java.lang.String.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("server", java.lang.String.class);
diff --git a/components/camel-as2/camel-as2-component/src/generated/resources/org/apache/camel/component/as2/as2.json b/components/camel-as2/camel-as2-component/src/generated/resources/org/apache/camel/component/as2/as2.json
index fde2393..eaba37c 100644
--- a/components/camel-as2/camel-as2-component/src/generated/resources/org/apache/camel/component/as2/as2.json
+++ b/components/camel-as2/camel-as2-component/src/generated/resources/org/apache/camel/component/as2/as2.json
@@ -73,7 +73,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-as2/camel-as2-component/src/main/docs/as2-component.adoc b/components/camel-as2/camel-as2-component/src/main/docs/as2-component.adoc
index 1c5591d..d1c3d40 100644
--- a/components/camel-as2/camel-as2-component/src/main/docs/as2-component.adoc
+++ b/components/camel-as2/camel-as2-component/src/main/docs/as2-component.adoc
@@ -134,7 +134,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-atom/src/generated/java/org/apache/camel/component/atom/AtomEndpointConfigurer.java b/components/camel-atom/src/generated/java/org/apache/camel/component/atom/AtomEndpointConfigurer.java
index e27297b..f7f8da0 100644
--- a/components/camel-atom/src/generated/java/org/apache/camel/component/atom/AtomEndpointConfigurer.java
+++ b/components/camel-atom/src/generated/java/org/apache/camel/component/atom/AtomEndpointConfigurer.java
@@ -51,7 +51,7 @@ public class AtomEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -95,7 +95,7 @@ public class AtomEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("sortEntries", boolean.class);
diff --git a/components/camel-atom/src/generated/resources/org/apache/camel/component/atom/atom.json b/components/camel-atom/src/generated/resources/org/apache/camel/component/atom/atom.json
index 5d1994a..056928e 100644
--- a/components/camel-atom/src/generated/resources/org/apache/camel/component/atom/atom.json
+++ b/components/camel-atom/src/generated/resources/org/apache/camel/component/atom/atom.json
@@ -50,7 +50,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-atom/src/main/docs/atom-component.adoc b/components/camel-atom/src/main/docs/atom-component.adoc
index f47782d..07de6f4 100644
--- a/components/camel-atom/src/main/docs/atom-component.adoc
+++ b/components/camel-atom/src/main/docs/atom-component.adoc
@@ -106,7 +106,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-aws-ddb/src/generated/java/org/apache/camel/component/aws/ddbstream/DdbStreamEndpointConfigurer.java b/components/camel-aws-ddb/src/generated/java/org/apache/camel/component/aws/ddbstream/DdbStreamEndpointConfigurer.java
index f5762a3..cac1a21 100644
--- a/components/camel-aws-ddb/src/generated/java/org/apache/camel/component/aws/ddbstream/DdbStreamEndpointConfigurer.java
+++ b/components/camel-aws-ddb/src/generated/java/org/apache/camel/component/aws/ddbstream/DdbStreamEndpointConfigurer.java
@@ -62,7 +62,7 @@ public class DdbStreamEndpointConfigurer extends PropertyConfigurerSupport imple
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "secretkey":
@@ -108,7 +108,7 @@ public class DdbStreamEndpointConfigurer extends PropertyConfigurerSupport imple
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("secretKey", java.lang.String.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-aws-ddb/src/generated/resources/org/apache/camel/component/aws/ddbstream/aws-ddbstream.json b/components/camel-aws-ddb/src/generated/resources/org/apache/camel/component/aws/ddbstream/aws-ddbstream.json
index 6e58c60..7e3018c 100644
--- a/components/camel-aws-ddb/src/generated/resources/org/apache/camel/component/aws/ddbstream/aws-ddbstream.json
+++ b/components/camel-aws-ddb/src/generated/resources/org/apache/camel/component/aws/ddbstream/aws-ddbstream.json
@@ -63,7 +63,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-aws-ddb/src/main/docs/aws-ddbstream-component.adoc b/components/camel-aws-ddb/src/main/docs/aws-ddbstream-component.adoc
index 9b63f6e..30fecd5 100644
--- a/components/camel-aws-ddb/src/main/docs/aws-ddbstream-component.adoc
+++ b/components/camel-aws-ddb/src/main/docs/aws-ddbstream-component.adoc
@@ -116,7 +116,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-aws-kinesis/src/generated/java/org/apache/camel/component/aws/kinesis/KinesisEndpointConfigurer.java b/components/camel-aws-kinesis/src/generated/java/org/apache/camel/component/aws/kinesis/KinesisEndpointConfigurer.java
index 83b1cde..fc49646 100644
--- a/components/camel-aws-kinesis/src/generated/java/org/apache/camel/component/aws/kinesis/KinesisEndpointConfigurer.java
+++ b/components/camel-aws-kinesis/src/generated/java/org/apache/camel/component/aws/kinesis/KinesisEndpointConfigurer.java
@@ -64,7 +64,7 @@ public class KinesisEndpointConfigurer extends PropertyConfigurerSupport impleme
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "secretkey":
@@ -115,7 +115,7 @@ public class KinesisEndpointConfigurer extends PropertyConfigurerSupport impleme
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("secretKey", java.lang.String.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-aws-kinesis/src/generated/resources/org/apache/camel/component/aws/kinesis/aws-kinesis.json b/components/camel-aws-kinesis/src/generated/resources/org/apache/camel/component/aws/kinesis/aws-kinesis.json
index ad40fa9..ec767cb 100644
--- a/components/camel-aws-kinesis/src/generated/resources/org/apache/camel/component/aws/kinesis/aws-kinesis.json
+++ b/components/camel-aws-kinesis/src/generated/resources/org/apache/camel/component/aws/kinesis/aws-kinesis.json
@@ -69,7 +69,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-aws-kinesis/src/main/docs/aws-kinesis-component.adoc b/components/camel-aws-kinesis/src/main/docs/aws-kinesis-component.adoc
index 57d0d81..bb86fdc 100644
--- a/components/camel-aws-kinesis/src/main/docs/aws-kinesis-component.adoc
+++ b/components/camel-aws-kinesis/src/main/docs/aws-kinesis-component.adoc
@@ -123,7 +123,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-aws-s3/src/generated/java/org/apache/camel/component/aws/s3/S3EndpointConfigurer.java b/components/camel-aws-s3/src/generated/java/org/apache/camel/component/aws/s3/S3EndpointConfigurer.java
index 8639120..2a1be1f 100644
--- a/components/camel-aws-s3/src/generated/java/org/apache/camel/component/aws/s3/S3EndpointConfigurer.java
+++ b/components/camel-aws-s3/src/generated/java/org/apache/camel/component/aws/s3/S3EndpointConfigurer.java
@@ -104,7 +104,7 @@ public class S3EndpointConfigurer extends PropertyConfigurerSupport implements G
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "secretkey":
@@ -181,7 +181,7 @@ public class S3EndpointConfigurer extends PropertyConfigurerSupport implements G
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("secretKey", java.lang.String.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-aws-s3/src/generated/resources/org/apache/camel/component/aws/s3/aws-s3.json b/components/camel-aws-s3/src/generated/resources/org/apache/camel/component/aws/s3/aws-s3.json
index 0b581ce..8ed9635 100644
--- a/components/camel-aws-s3/src/generated/resources/org/apache/camel/component/aws/s3/aws-s3.json
+++ b/components/camel-aws-s3/src/generated/resources/org/apache/camel/component/aws/s3/aws-s3.json
@@ -115,7 +115,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-aws-s3/src/main/docs/aws-s3-component.adoc b/components/camel-aws-s3/src/main/docs/aws-s3-component.adoc
index 07738a8..c4f8735 100644
--- a/components/camel-aws-s3/src/main/docs/aws-s3-component.adoc
+++ b/components/camel-aws-s3/src/main/docs/aws-s3-component.adoc
@@ -182,7 +182,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-aws-sqs/src/generated/java/org/apache/camel/component/aws/sqs/SqsEndpointConfigurer.java b/components/camel-aws-sqs/src/generated/java/org/apache/camel/component/aws/sqs/SqsEndpointConfigurer.java
index ae31e0a..84da29e 100644
--- a/components/camel-aws-sqs/src/generated/java/org/apache/camel/component/aws/sqs/SqsEndpointConfigurer.java
+++ b/components/camel-aws-sqs/src/generated/java/org/apache/camel/component/aws/sqs/SqsEndpointConfigurer.java
@@ -109,7 +109,7 @@ public class SqsEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "secretkey":
@@ -184,7 +184,7 @@ public class SqsEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("secretKey", java.lang.String.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-aws-sqs/src/generated/resources/org/apache/camel/component/aws/sqs/aws-sqs.json b/components/camel-aws-sqs/src/generated/resources/org/apache/camel/component/aws/sqs/aws-sqs.json
index 49b4ba1..8de9360 100644
--- a/components/camel-aws-sqs/src/generated/resources/org/apache/camel/component/aws/sqs/aws-sqs.json
+++ b/components/camel-aws-sqs/src/generated/resources/org/apache/camel/component/aws/sqs/aws-sqs.json
@@ -115,7 +115,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-aws-sqs/src/main/docs/aws-sqs-component.adoc b/components/camel-aws-sqs/src/main/docs/aws-sqs-component.adoc
index 53e1c1f..f255460 100644
--- a/components/camel-aws-sqs/src/main/docs/aws-sqs-component.adoc
+++ b/components/camel-aws-sqs/src/main/docs/aws-sqs-component.adoc
@@ -170,7 +170,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-aws2-ddb/src/generated/java/org/apache/camel/component/aws2/ddbstream/Ddb2StreamEndpointConfigurer.java b/components/camel-aws2-ddb/src/generated/java/org/apache/camel/component/aws2/ddbstream/Ddb2StreamEndpointConfigurer.java
index 39cba32..bfa2974 100644
--- a/components/camel-aws2-ddb/src/generated/java/org/apache/camel/component/aws2/ddbstream/Ddb2StreamEndpointConfigurer.java
+++ b/components/camel-aws2-ddb/src/generated/java/org/apache/camel/component/aws2/ddbstream/Ddb2StreamEndpointConfigurer.java
@@ -62,7 +62,7 @@ public class Ddb2StreamEndpointConfigurer extends PropertyConfigurerSupport impl
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "secretkey":
@@ -110,7 +110,7 @@ public class Ddb2StreamEndpointConfigurer extends PropertyConfigurerSupport impl
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("secretKey", java.lang.String.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-aws2-ddb/src/generated/resources/org/apache/camel/component/aws2/ddbstream/aws2-ddbstream.json b/components/camel-aws2-ddb/src/generated/resources/org/apache/camel/component/aws2/ddbstream/aws2-ddbstream.json
index 8601ff7..54d2e90 100644
--- a/components/camel-aws2-ddb/src/generated/resources/org/apache/camel/component/aws2/ddbstream/aws2-ddbstream.json
+++ b/components/camel-aws2-ddb/src/generated/resources/org/apache/camel/component/aws2/ddbstream/aws2-ddbstream.json
@@ -65,7 +65,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-aws2-ddb/src/main/docs/aws2-ddbstream-component.adoc b/components/camel-aws2-ddb/src/main/docs/aws2-ddbstream-component.adoc
index 6585e57..b611d14 100644
--- a/components/camel-aws2-ddb/src/main/docs/aws2-ddbstream-component.adoc
+++ b/components/camel-aws2-ddb/src/main/docs/aws2-ddbstream-component.adoc
@@ -123,7 +123,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-aws2-kinesis/src/generated/java/org/apache/camel/component/aws2/kinesis/Kinesis2EndpointConfigurer.java b/components/camel-aws2-kinesis/src/generated/java/org/apache/camel/component/aws2/kinesis/Kinesis2EndpointConfigurer.java
index 81df8e6..bc6a9ac 100644
--- a/components/camel-aws2-kinesis/src/generated/java/org/apache/camel/component/aws2/kinesis/Kinesis2EndpointConfigurer.java
+++ b/components/camel-aws2-kinesis/src/generated/java/org/apache/camel/component/aws2/kinesis/Kinesis2EndpointConfigurer.java
@@ -64,7 +64,7 @@ public class Kinesis2EndpointConfigurer extends PropertyConfigurerSupport implem
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "secretkey":
@@ -117,7 +117,7 @@ public class Kinesis2EndpointConfigurer extends PropertyConfigurerSupport implem
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("secretKey", java.lang.String.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-aws2-kinesis/src/generated/resources/org/apache/camel/component/aws2/kinesis/aws2-kinesis.json b/components/camel-aws2-kinesis/src/generated/resources/org/apache/camel/component/aws2/kinesis/aws2-kinesis.json
index 492c7ec..2e350f2 100644
--- a/components/camel-aws2-kinesis/src/generated/resources/org/apache/camel/component/aws2/kinesis/aws2-kinesis.json
+++ b/components/camel-aws2-kinesis/src/generated/resources/org/apache/camel/component/aws2/kinesis/aws2-kinesis.json
@@ -71,7 +71,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-aws2-kinesis/src/main/docs/aws2-kinesis-component.adoc b/components/camel-aws2-kinesis/src/main/docs/aws2-kinesis-component.adoc
index 910efb6..08369e8 100644
--- a/components/camel-aws2-kinesis/src/main/docs/aws2-kinesis-component.adoc
+++ b/components/camel-aws2-kinesis/src/main/docs/aws2-kinesis-component.adoc
@@ -130,7 +130,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-aws2-s3/src/generated/java/org/apache/camel/component/aws2/s3/AWS2S3EndpointConfigurer.java b/components/camel-aws2-s3/src/generated/java/org/apache/camel/component/aws2/s3/AWS2S3EndpointConfigurer.java
index f12971f..a4bbc7a 100644
--- a/components/camel-aws2-s3/src/generated/java/org/apache/camel/component/aws2/s3/AWS2S3EndpointConfigurer.java
+++ b/components/camel-aws2-s3/src/generated/java/org/apache/camel/component/aws2/s3/AWS2S3EndpointConfigurer.java
@@ -104,7 +104,7 @@ public class AWS2S3EndpointConfigurer extends PropertyConfigurerSupport implemen
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "secretkey":
@@ -183,7 +183,7 @@ public class AWS2S3EndpointConfigurer extends PropertyConfigurerSupport implemen
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("secretKey", java.lang.String.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-aws2-s3/src/generated/resources/org/apache/camel/component/aws2/s3/aws2-s3.json b/components/camel-aws2-s3/src/generated/resources/org/apache/camel/component/aws2/s3/aws2-s3.json
index c5a6e97..93957ad 100644
--- a/components/camel-aws2-s3/src/generated/resources/org/apache/camel/component/aws2/s3/aws2-s3.json
+++ b/components/camel-aws2-s3/src/generated/resources/org/apache/camel/component/aws2/s3/aws2-s3.json
@@ -117,7 +117,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-aws2-s3/src/main/docs/aws2-s3-component.adoc b/components/camel-aws2-s3/src/main/docs/aws2-s3-component.adoc
index 6565c49..33f054e 100644
--- a/components/camel-aws2-s3/src/main/docs/aws2-s3-component.adoc
+++ b/components/camel-aws2-s3/src/main/docs/aws2-s3-component.adoc
@@ -184,7 +184,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-aws2-sqs/src/generated/java/org/apache/camel/component/aws2/sqs/Sqs2EndpointConfigurer.java b/components/camel-aws2-sqs/src/generated/java/org/apache/camel/component/aws2/sqs/Sqs2EndpointConfigurer.java
index 3630c2a..eae73b7 100644
--- a/components/camel-aws2-sqs/src/generated/java/org/apache/camel/component/aws2/sqs/Sqs2EndpointConfigurer.java
+++ b/components/camel-aws2-sqs/src/generated/java/org/apache/camel/component/aws2/sqs/Sqs2EndpointConfigurer.java
@@ -109,7 +109,7 @@ public class Sqs2EndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "secretkey":
@@ -186,7 +186,7 @@ public class Sqs2EndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("secretKey", java.lang.String.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-aws2-sqs/src/generated/resources/org/apache/camel/component/aws2/sqs/aws2-sqs.json b/components/camel-aws2-sqs/src/generated/resources/org/apache/camel/component/aws2/sqs/aws2-sqs.json
index a7864cf..7b070cf 100644
--- a/components/camel-aws2-sqs/src/generated/resources/org/apache/camel/component/aws2/sqs/aws2-sqs.json
+++ b/components/camel-aws2-sqs/src/generated/resources/org/apache/camel/component/aws2/sqs/aws2-sqs.json
@@ -117,7 +117,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-aws2-sqs/src/main/docs/aws2-sqs-component.adoc b/components/camel-aws2-sqs/src/main/docs/aws2-sqs-component.adoc
index 839b8e2..0368dfe 100644
--- a/components/camel-aws2-sqs/src/main/docs/aws2-sqs-component.adoc
+++ b/components/camel-aws2-sqs/src/main/docs/aws2-sqs-component.adoc
@@ -177,7 +177,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-beanstalk/src/generated/java/org/apache/camel/component/beanstalk/BeanstalkEndpointConfigurer.java b/components/camel-beanstalk/src/generated/java/org/apache/camel/component/beanstalk/BeanstalkEndpointConfigurer.java
index 133f148..c6ea128 100644
--- a/components/camel-beanstalk/src/generated/java/org/apache/camel/component/beanstalk/BeanstalkEndpointConfigurer.java
+++ b/components/camel-beanstalk/src/generated/java/org/apache/camel/component/beanstalk/BeanstalkEndpointConfigurer.java
@@ -58,7 +58,7 @@ public class BeanstalkEndpointConfigurer extends PropertyConfigurerSupport imple
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -100,7 +100,7 @@ public class BeanstalkEndpointConfigurer extends PropertyConfigurerSupport imple
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-beanstalk/src/generated/resources/org/apache/camel/component/beanstalk/beanstalk.json b/components/camel-beanstalk/src/generated/resources/org/apache/camel/component/beanstalk/beanstalk.json
index 18bed46..9da4c58 100644
--- a/components/camel-beanstalk/src/generated/resources/org/apache/camel/component/beanstalk/beanstalk.json
+++ b/components/camel-beanstalk/src/generated/resources/org/apache/camel/component/beanstalk/beanstalk.json
@@ -52,7 +52,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-beanstalk/src/main/docs/beanstalk-component.adoc b/components/camel-beanstalk/src/main/docs/beanstalk-component.adoc
index 98225c5..54fcda5 100644
--- a/components/camel-beanstalk/src/main/docs/beanstalk-component.adoc
+++ b/components/camel-beanstalk/src/main/docs/beanstalk-component.adoc
@@ -131,7 +131,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCollaborationsManagerEndpointConfigurationConfigurer.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCollaborationsManagerEndpointConfigurationConfigurer.java
index 6ff62ba..6faa41a 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCollaborationsManagerEndpointConfigurationConfigurer.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCollaborationsManagerEndpointConfigurationConfigurer.java
@@ -153,7 +153,7 @@ public class BoxCollaborationsManagerEndpointConfigurationConfigurer extends org
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "httpparams":
         case "HttpParams": return java.lang.Object.class;
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCommentsManagerEndpointConfigurationConfigurer.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCommentsManagerEndpointConfigurationConfigurer.java
index d30438b..7f8c39e 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCommentsManagerEndpointConfigurationConfigurer.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCommentsManagerEndpointConfigurationConfigurer.java
@@ -138,7 +138,7 @@ public class BoxCommentsManagerEndpointConfigurationConfigurer extends org.apach
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "httpparams":
         case "HttpParams": return java.lang.Object.class;
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxConfigurationConfigurer.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxConfigurationConfigurer.java
index a0deda7..924e977 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxConfigurationConfigurer.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxConfigurationConfigurer.java
@@ -123,7 +123,7 @@ public class BoxConfigurationConfigurer extends org.apache.camel.support.compone
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "httpparams":
         case "HttpParams": return java.lang.Object.class;
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEndpointConfigurer.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEndpointConfigurer.java
index 2ead202..d543f14 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEndpointConfigurer.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEndpointConfigurer.java
@@ -71,7 +71,7 @@ public class BoxEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -125,7 +125,7 @@ public class BoxEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("sslContextParameters", org.apache.camel.support.jsse.SSLContextParameters.class);
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventLogsManagerEndpointConfigurationConfigurer.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventLogsManagerEndpointConfigurationConfigurer.java
index 4496bbf..1827567 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventLogsManagerEndpointConfigurationConfigurer.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventLogsManagerEndpointConfigurationConfigurer.java
@@ -143,7 +143,7 @@ public class BoxEventLogsManagerEndpointConfigurationConfigurer extends org.apac
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "httpparams":
         case "HttpParams": return java.lang.Object.class;
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventsManagerEndpointConfigurationConfigurer.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventsManagerEndpointConfigurationConfigurer.java
index ade7888..8500aac 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventsManagerEndpointConfigurationConfigurer.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventsManagerEndpointConfigurationConfigurer.java
@@ -128,7 +128,7 @@ public class BoxEventsManagerEndpointConfigurationConfigurer extends org.apache.
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "httpparams":
         case "HttpParams": return java.lang.Object.class;
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFilesManagerEndpointConfigurationConfigurer.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFilesManagerEndpointConfigurationConfigurer.java
index 8c7512b..bd56acd 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFilesManagerEndpointConfigurationConfigurer.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFilesManagerEndpointConfigurationConfigurer.java
@@ -273,7 +273,7 @@ public class BoxFilesManagerEndpointConfigurationConfigurer extends org.apache.c
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "httpparams":
         case "HttpParams": return java.lang.Object.class;
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFoldersManagerEndpointConfigurationConfigurer.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFoldersManagerEndpointConfigurationConfigurer.java
index e7223a5..2ae8781 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFoldersManagerEndpointConfigurationConfigurer.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFoldersManagerEndpointConfigurationConfigurer.java
@@ -193,7 +193,7 @@ public class BoxFoldersManagerEndpointConfigurationConfigurer extends org.apache
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "httpparams":
         case "HttpParams": return java.lang.Object.class;
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxGroupsManagerEndpointConfigurationConfigurer.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxGroupsManagerEndpointConfigurationConfigurer.java
index 37335c7..d706b12 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxGroupsManagerEndpointConfigurationConfigurer.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxGroupsManagerEndpointConfigurationConfigurer.java
@@ -178,7 +178,7 @@ public class BoxGroupsManagerEndpointConfigurationConfigurer extends org.apache.
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "httpparams":
         case "HttpParams": return java.lang.Object.class;
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxSearchManagerEndpointConfigurationConfigurer.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxSearchManagerEndpointConfigurationConfigurer.java
index 24f6899..18d3eaf 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxSearchManagerEndpointConfigurationConfigurer.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxSearchManagerEndpointConfigurationConfigurer.java
@@ -133,7 +133,7 @@ public class BoxSearchManagerEndpointConfigurationConfigurer extends org.apache.
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "httpparams":
         case "HttpParams": return java.lang.Object.class;
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxTasksManagerEndpointConfigurationConfigurer.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxTasksManagerEndpointConfigurationConfigurer.java
index 0427b9a..b835624 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxTasksManagerEndpointConfigurationConfigurer.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxTasksManagerEndpointConfigurationConfigurer.java
@@ -163,7 +163,7 @@ public class BoxTasksManagerEndpointConfigurationConfigurer extends org.apache.c
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "httpparams":
         case "HttpParams": return java.lang.Object.class;
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxUsersManagerEndpointConfigurationConfigurer.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxUsersManagerEndpointConfigurationConfigurer.java
index 07ab08a..1e33ff0 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxUsersManagerEndpointConfigurationConfigurer.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxUsersManagerEndpointConfigurationConfigurer.java
@@ -178,7 +178,7 @@ public class BoxUsersManagerEndpointConfigurationConfigurer extends org.apache.c
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "httpparams":
         case "HttpParams": return java.lang.Object.class;
diff --git a/components/camel-box/camel-box-component/src/generated/resources/org/apache/camel/component/box/box.json b/components/camel-box/camel-box-component/src/generated/resources/org/apache/camel/component/box/box.json
index 27a820d..197493f 100644
--- a/components/camel-box/camel-box-component/src/generated/resources/org/apache/camel/component/box/box.json
+++ b/components/camel-box/camel-box-component/src/generated/resources/org/apache/camel/component/box/box.json
@@ -67,7 +67,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-box/camel-box-component/src/main/docs/box-component.adoc b/components/camel-box/camel-box-component/src/main/docs/box-component.adoc
index 2014a91..1214b65 100644
--- a/components/camel-box/camel-box-component/src/main/docs/box-component.adoc
+++ b/components/camel-box/camel-box-component/src/main/docs/box-component.adoc
@@ -134,7 +134,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/BraintreeEndpointConfigurer.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/BraintreeEndpointConfigurer.java
index 65452ff..160c50a 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/BraintreeEndpointConfigurer.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/BraintreeEndpointConfigurer.java
@@ -70,7 +70,7 @@ public class BraintreeEndpointConfigurer extends PropertyConfigurerSupport imple
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -116,7 +116,7 @@ public class BraintreeEndpointConfigurer extends PropertyConfigurerSupport imple
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-braintree/src/generated/resources/org/apache/camel/component/braintree/braintree.json b/components/camel-braintree/src/generated/resources/org/apache/camel/component/braintree/braintree.json
index 18b6133..83ca716 100644
--- a/components/camel-braintree/src/generated/resources/org/apache/camel/component/braintree/braintree.json
+++ b/components/camel-braintree/src/generated/resources/org/apache/camel/component/braintree/braintree.json
@@ -55,7 +55,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-braintree/src/main/docs/braintree-component.adoc b/components/camel-braintree/src/main/docs/braintree-component.adoc
index e574eb0..0f1312b 100644
--- a/components/camel-braintree/src/main/docs/braintree-component.adoc
+++ b/components/camel-braintree/src/main/docs/braintree-component.adoc
@@ -114,7 +114,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-cassandraql/src/generated/java/org/apache/camel/component/cassandra/CassandraEndpointConfigurer.java b/components/camel-cassandraql/src/generated/java/org/apache/camel/component/cassandra/CassandraEndpointConfigurer.java
index 7beeb7f..c02a4c9 100644
--- a/components/camel-cassandraql/src/generated/java/org/apache/camel/component/cassandra/CassandraEndpointConfigurer.java
+++ b/components/camel-cassandraql/src/generated/java/org/apache/camel/component/cassandra/CassandraEndpointConfigurer.java
@@ -60,7 +60,7 @@ public class CassandraEndpointConfigurer extends PropertyConfigurerSupport imple
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -104,7 +104,7 @@ public class CassandraEndpointConfigurer extends PropertyConfigurerSupport imple
         answer.put("resultSetConversionStrategy", org.apache.camel.component.cassandra.ResultSetConversionStrategy.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("session", com.datastax.oss.driver.api.core.CqlSession.class);
diff --git a/components/camel-cassandraql/src/generated/resources/org/apache/camel/component/cassandra/cql.json b/components/camel-cassandraql/src/generated/resources/org/apache/camel/component/cassandra/cql.json
index 49e7b87..4c050a5 100644
--- a/components/camel-cassandraql/src/generated/resources/org/apache/camel/component/cassandra/cql.json
+++ b/components/camel-cassandraql/src/generated/resources/org/apache/camel/component/cassandra/cql.json
@@ -57,7 +57,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-cassandraql/src/main/docs/cql-component.adoc b/components/camel-cassandraql/src/main/docs/cql-component.adoc
index c3f9e89..7786268 100644
--- a/components/camel-cassandraql/src/main/docs/cql-component.adoc
+++ b/components/camel-cassandraql/src/main/docs/cql-component.adoc
@@ -133,7 +133,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-couchbase/src/generated/java/org/apache/camel/component/couchbase/CouchbaseEndpointConfigurer.java b/components/camel-couchbase/src/generated/java/org/apache/camel/component/couchbase/CouchbaseEndpointConfigurer.java
index ad6ecc8..0f2c88f 100644
--- a/components/camel-couchbase/src/generated/java/org/apache/camel/component/couchbase/CouchbaseEndpointConfigurer.java
+++ b/components/camel-couchbase/src/generated/java/org/apache/camel/component/couchbase/CouchbaseEndpointConfigurer.java
@@ -76,7 +76,7 @@ public class CouchbaseEndpointConfigurer extends PropertyConfigurerSupport imple
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "scope": target.setScope(property(camelContext, java.lang.String.class, value)); return true;
@@ -135,7 +135,7 @@ public class CouchbaseEndpointConfigurer extends PropertyConfigurerSupport imple
         answer.put("replicateTo", int.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("scope", java.lang.String.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-couchbase/src/generated/resources/org/apache/camel/component/couchbase/couchbase.json b/components/camel-couchbase/src/generated/resources/org/apache/camel/component/couchbase/couchbase.json
index e01ebc1..bff72e4 100644
--- a/components/camel-couchbase/src/generated/resources/org/apache/camel/component/couchbase/couchbase.json
+++ b/components/camel-couchbase/src/generated/resources/org/apache/camel/component/couchbase/couchbase.json
@@ -67,7 +67,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-couchbase/src/main/docs/couchbase-component.adoc b/components/camel-couchbase/src/main/docs/couchbase-component.adoc
index 6278fd3..00b55c0 100644
--- a/components/camel-couchbase/src/main/docs/couchbase-component.adoc
+++ b/components/camel-couchbase/src/main/docs/couchbase-component.adoc
@@ -116,7 +116,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-cxf-transport/src/test/java/org/apache/camel/component/cxf/transport/CamelDestinationTest.java b/components/camel-cxf-transport/src/test/java/org/apache/camel/component/cxf/transport/CamelDestinationTest.java
index 81a4723..c833d3d 100644
--- a/components/camel-cxf-transport/src/test/java/org/apache/camel/component/cxf/transport/CamelDestinationTest.java
+++ b/components/camel-cxf-transport/src/test/java/org/apache/camel/component/cxf/transport/CamelDestinationTest.java
@@ -92,7 +92,7 @@ public class CamelDestinationTest extends CamelTransportTestSupport {
         CamelContext context = destination.getCamelContext();
 
         assertNotNull(context, "The camel context which get from camel destination is not null");
-        assertEquals("dest_context", context.getName(),  "Get the wrong camel context");
+        assertEquals("dest_context", context.getName(), "Get the wrong camel context");
         assertEquals(2, context.getRoutes().size(), "The camel context should has two routers");
         bus.shutdown(false);
     }
diff --git a/components/camel-elsql/src/generated/java/org/apache/camel/component/elsql/ElsqlEndpointConfigurer.java b/components/camel-elsql/src/generated/java/org/apache/camel/component/elsql/ElsqlEndpointConfigurer.java
index f93e9bc..9529f5e 100644
--- a/components/camel-elsql/src/generated/java/org/apache/camel/component/elsql/ElsqlEndpointConfigurer.java
+++ b/components/camel-elsql/src/generated/java/org/apache/camel/component/elsql/ElsqlEndpointConfigurer.java
@@ -88,7 +88,7 @@ public class ElsqlEndpointConfigurer extends PropertyConfigurerSupport implement
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -154,7 +154,7 @@ public class ElsqlEndpointConfigurer extends PropertyConfigurerSupport implement
         answer.put("routeEmptyResultSet", boolean.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("separator", char.class);
diff --git a/components/camel-elsql/src/generated/resources/org/apache/camel/component/elsql/elsql.json b/components/camel-elsql/src/generated/resources/org/apache/camel/component/elsql/elsql.json
index 4f402cd..8948b2d 100644
--- a/components/camel-elsql/src/generated/resources/org/apache/camel/component/elsql/elsql.json
+++ b/components/camel-elsql/src/generated/resources/org/apache/camel/component/elsql/elsql.json
@@ -77,7 +77,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-elsql/src/main/docs/elsql-component.adoc b/components/camel-elsql/src/main/docs/elsql-component.adoc
index 286771b..3112be7 100644
--- a/components/camel-elsql/src/main/docs/elsql-component.adoc
+++ b/components/camel-elsql/src/main/docs/elsql-component.adoc
@@ -148,7 +148,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-etcd/src/generated/java/org/apache/camel/component/etcd/EtcdStatsEndpointConfigurer.java b/components/camel-etcd/src/generated/java/org/apache/camel/component/etcd/EtcdStatsEndpointConfigurer.java
index 2e6a7c6..f81711c 100644
--- a/components/camel-etcd/src/generated/java/org/apache/camel/component/etcd/EtcdStatsEndpointConfigurer.java
+++ b/components/camel-etcd/src/generated/java/org/apache/camel/component/etcd/EtcdStatsEndpointConfigurer.java
@@ -51,7 +51,7 @@ public class EtcdStatsEndpointConfigurer extends PropertyConfigurerSupport imple
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptyexchangeontimeout":
@@ -100,7 +100,7 @@ public class EtcdStatsEndpointConfigurer extends PropertyConfigurerSupport imple
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyExchangeOnTimeout", boolean.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-etcd/src/generated/resources/org/apache/camel/component/etcd/etcd-stats.json b/components/camel-etcd/src/generated/resources/org/apache/camel/component/etcd/etcd-stats.json
index 8539fc2..3ce5939 100644
--- a/components/camel-etcd/src/generated/resources/org/apache/camel/component/etcd/etcd-stats.json
+++ b/components/camel-etcd/src/generated/resources/org/apache/camel/component/etcd/etcd-stats.json
@@ -63,7 +63,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-etcd/src/main/docs/etcd-stats-component.adoc b/components/camel-etcd/src/main/docs/etcd-stats-component.adoc
index acad969..21cb1ec 100644
--- a/components/camel-etcd/src/main/docs/etcd-stats-component.adoc
+++ b/components/camel-etcd/src/main/docs/etcd-stats-component.adoc
@@ -100,7 +100,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCapabilitiesEndpointConfigurationConfigurer.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCapabilitiesEndpointConfigurationConfigurer.java
index 8e4572c..dc9bd3c 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCapabilitiesEndpointConfigurationConfigurer.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCapabilitiesEndpointConfigurationConfigurer.java
@@ -173,7 +173,7 @@ public class FhirCapabilitiesEndpointConfigurationConfigurer extends org.apache.
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "extraparameters":
         case "ExtraParameters": return java.lang.Object.class;
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCreateEndpointConfigurationConfigurer.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCreateEndpointConfigurationConfigurer.java
index 342bb76..2c1f418b 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCreateEndpointConfigurationConfigurer.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCreateEndpointConfigurationConfigurer.java
@@ -188,7 +188,7 @@ public class FhirCreateEndpointConfigurationConfigurer extends org.apache.camel.
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "extraparameters":
         case "ExtraParameters": return java.lang.Object.class;
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirDeleteEndpointConfigurationConfigurer.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirDeleteEndpointConfigurationConfigurer.java
index 14a5b10..e224bbf 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirDeleteEndpointConfigurationConfigurer.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirDeleteEndpointConfigurationConfigurer.java
@@ -193,7 +193,7 @@ public class FhirDeleteEndpointConfigurationConfigurer extends org.apache.camel.
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "extraparameters":
         case "ExtraParameters": return java.lang.Object.class;
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirEndpointConfigurer.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirEndpointConfigurer.java
index 5ee139b..63cea64 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirEndpointConfigurer.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirEndpointConfigurer.java
@@ -78,7 +78,7 @@ public class FhirEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -140,7 +140,7 @@ public class FhirEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("serverUrl", java.lang.String.class);
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirHistoryEndpointConfigurationConfigurer.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirHistoryEndpointConfigurationConfigurer.java
index 6e003ca..2d320c9 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirHistoryEndpointConfigurationConfigurer.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirHistoryEndpointConfigurationConfigurer.java
@@ -198,7 +198,7 @@ public class FhirHistoryEndpointConfigurationConfigurer extends org.apache.camel
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "extraparameters":
         case "ExtraParameters": return java.lang.Object.class;
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirLoadPageEndpointConfigurationConfigurer.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirLoadPageEndpointConfigurationConfigurer.java
index 3dafbf8..331d5b6 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirLoadPageEndpointConfigurationConfigurer.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirLoadPageEndpointConfigurationConfigurer.java
@@ -183,7 +183,7 @@ public class FhirLoadPageEndpointConfigurationConfigurer extends org.apache.came
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "extraparameters":
         case "ExtraParameters": return java.lang.Object.class;
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirMetaEndpointConfigurationConfigurer.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirMetaEndpointConfigurationConfigurer.java
index db58a28..4c2d4af 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirMetaEndpointConfigurationConfigurer.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirMetaEndpointConfigurationConfigurer.java
@@ -188,7 +188,7 @@ public class FhirMetaEndpointConfigurationConfigurer extends org.apache.camel.su
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "extraparameters":
         case "ExtraParameters": return java.lang.Object.class;
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirOperationEndpointConfigurationConfigurer.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirOperationEndpointConfigurationConfigurer.java
index 7c2fd46..4ca3e98 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirOperationEndpointConfigurationConfigurer.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirOperationEndpointConfigurationConfigurer.java
@@ -223,7 +223,7 @@ public class FhirOperationEndpointConfigurationConfigurer extends org.apache.cam
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "extraparameters":
         case "ExtraParameters": return java.lang.Object.class;
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirPatchEndpointConfigurationConfigurer.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirPatchEndpointConfigurationConfigurer.java
index 85cdb62..41a216a 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirPatchEndpointConfigurationConfigurer.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirPatchEndpointConfigurationConfigurer.java
@@ -193,7 +193,7 @@ public class FhirPatchEndpointConfigurationConfigurer extends org.apache.camel.s
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "extraparameters":
         case "ExtraParameters": return java.lang.Object.class;
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirReadEndpointConfigurationConfigurer.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirReadEndpointConfigurationConfigurer.java
index 3486325..c4ba24a 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirReadEndpointConfigurationConfigurer.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirReadEndpointConfigurationConfigurer.java
@@ -228,7 +228,7 @@ public class FhirReadEndpointConfigurationConfigurer extends org.apache.camel.su
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "extraparameters":
         case "ExtraParameters": return java.lang.Object.class;
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirSearchEndpointConfigurationConfigurer.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirSearchEndpointConfigurationConfigurer.java
index 07b950c..c1080e4 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirSearchEndpointConfigurationConfigurer.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirSearchEndpointConfigurationConfigurer.java
@@ -173,7 +173,7 @@ public class FhirSearchEndpointConfigurationConfigurer extends org.apache.camel.
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "extraparameters":
         case "ExtraParameters": return java.lang.Object.class;
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirTransactionEndpointConfigurationConfigurer.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirTransactionEndpointConfigurationConfigurer.java
index 3db27aa..82902c2 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirTransactionEndpointConfigurationConfigurer.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirTransactionEndpointConfigurationConfigurer.java
@@ -183,7 +183,7 @@ public class FhirTransactionEndpointConfigurationConfigurer extends org.apache.c
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "extraparameters":
         case "ExtraParameters": return java.lang.Object.class;
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirUpdateEndpointConfigurationConfigurer.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirUpdateEndpointConfigurationConfigurer.java
index 165189c..c13d617 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirUpdateEndpointConfigurationConfigurer.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirUpdateEndpointConfigurationConfigurer.java
@@ -198,7 +198,7 @@ public class FhirUpdateEndpointConfigurationConfigurer extends org.apache.camel.
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "extraparameters":
         case "ExtraParameters": return java.lang.Object.class;
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirValidateEndpointConfigurationConfigurer.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirValidateEndpointConfigurationConfigurer.java
index aacb518..342ed98 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirValidateEndpointConfigurationConfigurer.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirValidateEndpointConfigurationConfigurer.java
@@ -178,7 +178,7 @@ public class FhirValidateEndpointConfigurationConfigurer extends org.apache.came
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "extraparameters":
         case "ExtraParameters": return java.lang.Object.class;
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/resources/org/apache/camel/component/fhir/fhir.json b/components/camel-fhir/camel-fhir-component/src/generated/resources/org/apache/camel/component/fhir/fhir.json
index a6f40ba..b9b01f2 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/resources/org/apache/camel/component/fhir/fhir.json
+++ b/components/camel-fhir/camel-fhir-component/src/generated/resources/org/apache/camel/component/fhir/fhir.json
@@ -90,7 +90,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-fhir/camel-fhir-component/src/main/docs/fhir-component.adoc b/components/camel-fhir/camel-fhir-component/src/main/docs/fhir-component.adoc
index 8798098..f286070 100644
--- a/components/camel-fhir/camel-fhir-component/src/main/docs/fhir-component.adoc
+++ b/components/camel-fhir/camel-fhir-component/src/main/docs/fhir-component.adoc
@@ -157,7 +157,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-file/src/generated/java/org/apache/camel/component/file/FileEndpointConfigurer.java b/components/camel-file/src/generated/java/org/apache/camel/component/file/FileEndpointConfigurer.java
index 0730ac8..4994071 100644
--- a/components/camel-file/src/generated/java/org/apache/camel/component/file/FileEndpointConfigurer.java
+++ b/components/camel-file/src/generated/java/org/apache/camel/component/file/FileEndpointConfigurer.java
@@ -162,7 +162,7 @@ public class FileEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -271,7 +271,7 @@ public class FileEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("shuffle", boolean.class);
diff --git a/components/camel-file/src/generated/resources/org/apache/camel/component/file/file.json b/components/camel-file/src/generated/resources/org/apache/camel/component/file/file.json
index f518103..902435b 100644
--- a/components/camel-file/src/generated/resources/org/apache/camel/component/file/file.json
+++ b/components/camel-file/src/generated/resources/org/apache/camel/component/file/file.json
@@ -111,7 +111,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-file/src/main/docs/file-component.adoc b/components/camel-file/src/main/docs/file-component.adoc
index a349f35..e89f1aa 100644
--- a/components/camel-file/src/main/docs/file-component.adoc
+++ b/components/camel-file/src/main/docs/file-component.adoc
@@ -185,7 +185,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-flatpack/src/generated/java/org/apache/camel/component/flatpack/FlatpackEndpointConfigurer.java b/components/camel-flatpack/src/generated/java/org/apache/camel/component/flatpack/FlatpackEndpointConfigurer.java
index d253368..b33723e 100644
--- a/components/camel-flatpack/src/generated/java/org/apache/camel/component/flatpack/FlatpackEndpointConfigurer.java
+++ b/components/camel-flatpack/src/generated/java/org/apache/camel/component/flatpack/FlatpackEndpointConfigurer.java
@@ -54,7 +54,7 @@ public class FlatpackEndpointConfigurer extends PropertyConfigurerSupport implem
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -96,7 +96,7 @@ public class FlatpackEndpointConfigurer extends PropertyConfigurerSupport implem
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("splitRows", boolean.class);
diff --git a/components/camel-flatpack/src/generated/resources/org/apache/camel/component/flatpack/flatpack.json b/components/camel-flatpack/src/generated/resources/org/apache/camel/component/flatpack/flatpack.json
index 381026f..27f4e75 100644
--- a/components/camel-flatpack/src/generated/resources/org/apache/camel/component/flatpack/flatpack.json
+++ b/components/camel-flatpack/src/generated/resources/org/apache/camel/component/flatpack/flatpack.json
@@ -51,7 +51,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-flatpack/src/main/docs/flatpack-component.adoc b/components/camel-flatpack/src/main/docs/flatpack-component.adoc
index efab23a..a99e1ae 100644
--- a/components/camel-flatpack/src/main/docs/flatpack-component.adoc
+++ b/components/camel-flatpack/src/main/docs/flatpack-component.adoc
@@ -112,7 +112,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-ftp/src/generated/java/org/apache/camel/component/file/remote/FtpEndpointConfigurer.java b/components/camel-ftp/src/generated/java/org/apache/camel/component/file/remote/FtpEndpointConfigurer.java
index 6ef5ec3..5d3d262 100644
--- a/components/camel-ftp/src/generated/java/org/apache/camel/component/file/remote/FtpEndpointConfigurer.java
+++ b/components/camel-ftp/src/generated/java/org/apache/camel/component/file/remote/FtpEndpointConfigurer.java
@@ -171,7 +171,7 @@ public class FtpEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -305,7 +305,7 @@ public class FtpEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("resumeDownload", boolean.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("sendNoop", boolean.class);
diff --git a/components/camel-ftp/src/generated/java/org/apache/camel/component/file/remote/SftpEndpointConfigurer.java b/components/camel-ftp/src/generated/java/org/apache/camel/component/file/remote/SftpEndpointConfigurer.java
index 7f03c18..566a84d 100644
--- a/components/camel-ftp/src/generated/java/org/apache/camel/component/file/remote/SftpEndpointConfigurer.java
+++ b/components/camel-ftp/src/generated/java/org/apache/camel/component/file/remote/SftpEndpointConfigurer.java
@@ -191,7 +191,7 @@ public class SftpEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -336,7 +336,7 @@ public class SftpEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("sendNoop", boolean.class);
diff --git a/components/camel-ftp/src/generated/resources/org/apache/camel/component/file/remote/ftp.json b/components/camel-ftp/src/generated/resources/org/apache/camel/component/file/remote/ftp.json
index a2b1573..2a9f0d2 100644
--- a/components/camel-ftp/src/generated/resources/org/apache/camel/component/file/remote/ftp.json
+++ b/components/camel-ftp/src/generated/resources/org/apache/camel/component/file/remote/ftp.json
@@ -130,7 +130,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-ftp/src/generated/resources/org/apache/camel/component/file/remote/ftps.json b/components/camel-ftp/src/generated/resources/org/apache/camel/component/file/remote/ftps.json
index 2676f28..116ed1a 100644
--- a/components/camel-ftp/src/generated/resources/org/apache/camel/component/file/remote/ftps.json
+++ b/components/camel-ftp/src/generated/resources/org/apache/camel/component/file/remote/ftps.json
@@ -131,7 +131,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-ftp/src/generated/resources/org/apache/camel/component/file/remote/sftp.json b/components/camel-ftp/src/generated/resources/org/apache/camel/component/file/remote/sftp.json
index eaca638..ef9fb84 100644
--- a/components/camel-ftp/src/generated/resources/org/apache/camel/component/file/remote/sftp.json
+++ b/components/camel-ftp/src/generated/resources/org/apache/camel/component/file/remote/sftp.json
@@ -129,7 +129,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-ftp/src/main/docs/ftp-component.adoc b/components/camel-ftp/src/main/docs/ftp-component.adoc
index 67bcf29..fa3996c 100644
--- a/components/camel-ftp/src/main/docs/ftp-component.adoc
+++ b/components/camel-ftp/src/main/docs/ftp-component.adoc
@@ -216,7 +216,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-ftp/src/main/docs/ftps-component.adoc b/components/camel-ftp/src/main/docs/ftps-component.adoc
index ecc587c..84460a3 100644
--- a/components/camel-ftp/src/main/docs/ftps-component.adoc
+++ b/components/camel-ftp/src/main/docs/ftps-component.adoc
@@ -175,7 +175,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-ftp/src/main/docs/sftp-component.adoc b/components/camel-ftp/src/main/docs/sftp-component.adoc
index ccfe05f..03dc751 100644
--- a/components/camel-ftp/src/main/docs/sftp-component.adoc
+++ b/components/camel-ftp/src/main/docs/sftp-component.adoc
@@ -174,7 +174,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/GoogleCalendarEndpointConfigurer.java b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/GoogleCalendarEndpointConfigurer.java
index a37ec6b..1148ebf 100644
--- a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/GoogleCalendarEndpointConfigurer.java
+++ b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/GoogleCalendarEndpointConfigurer.java
@@ -63,7 +63,7 @@ public class GoogleCalendarEndpointConfigurer extends PropertyConfigurerSupport
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "scopes": target.getConfiguration().setScopes(property(camelContext, java.lang.String.class, value)); return true;
@@ -107,7 +107,7 @@ public class GoogleCalendarEndpointConfigurer extends PropertyConfigurerSupport
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("scopes", java.lang.String.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/stream/GoogleCalendarStreamEndpointConfigurer.java b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/stream/GoogleCalendarStreamEndpointConfigurer.java
index ca4a5bc..b5d1d62 100644
--- a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/stream/GoogleCalendarStreamEndpointConfigurer.java
+++ b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/stream/GoogleCalendarStreamEndpointConfigurer.java
@@ -64,7 +64,7 @@ public class GoogleCalendarStreamEndpointConfigurer extends PropertyConfigurerSu
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "scopes": target.getConfiguration().setScopes(property(camelContext, java.util.List.class, value)); return true;
@@ -108,7 +108,7 @@ public class GoogleCalendarStreamEndpointConfigurer extends PropertyConfigurerSu
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("scopes", java.util.List.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/google-calendar.json b/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/google-calendar.json
index 326824b..9456269 100644
--- a/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/google-calendar.json
+++ b/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/google-calendar.json
@@ -63,7 +63,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/stream/google-calendar-stream.json b/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/stream/google-calendar-stream.json
index b552b0f..c6ec32f 100644
--- a/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/stream/google-calendar-stream.json
+++ b/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/stream/google-calendar-stream.json
@@ -66,7 +66,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-google-calendar/src/main/docs/google-calendar-component.adoc b/components/camel-google-calendar/src/main/docs/google-calendar-component.adoc
index 0d368fe..88d40ad 100644
--- a/components/camel-google-calendar/src/main/docs/google-calendar-component.adoc
+++ b/components/camel-google-calendar/src/main/docs/google-calendar-component.adoc
@@ -128,7 +128,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-google-calendar/src/main/docs/google-calendar-stream-component.adoc b/components/camel-google-calendar/src/main/docs/google-calendar-stream-component.adoc
index f5a6dc9..38a1892 100644
--- a/components/camel-google-calendar/src/main/docs/google-calendar-stream-component.adoc
+++ b/components/camel-google-calendar/src/main/docs/google-calendar-stream-component.adoc
@@ -134,7 +134,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAboutEndpointConfigurationConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAboutEndpointConfigurationConfigurer.java
index ef0cef2..80c62c2 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAboutEndpointConfigurationConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAboutEndpointConfigurationConfigurer.java
@@ -78,7 +78,7 @@ public class DriveAboutEndpointConfigurationConfigurer extends org.apache.camel.
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "scopes":
         case "Scopes": return java.lang.String.class;
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAppsEndpointConfigurationConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAppsEndpointConfigurationConfigurer.java
index f14794b..efc2ccd 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAppsEndpointConfigurationConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAppsEndpointConfigurationConfigurer.java
@@ -83,7 +83,7 @@ public class DriveAppsEndpointConfigurationConfigurer extends org.apache.camel.s
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "scopes":
         case "Scopes": return java.lang.String.class;
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChangesEndpointConfigurationConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChangesEndpointConfigurationConfigurer.java
index d551978..7f4857c 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChangesEndpointConfigurationConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChangesEndpointConfigurationConfigurer.java
@@ -88,7 +88,7 @@ public class DriveChangesEndpointConfigurationConfigurer extends org.apache.came
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "scopes":
         case "Scopes": return java.lang.String.class;
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChannelsEndpointConfigurationConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChannelsEndpointConfigurationConfigurer.java
index 167a691..048d16b 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChannelsEndpointConfigurationConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChannelsEndpointConfigurationConfigurer.java
@@ -83,7 +83,7 @@ public class DriveChannelsEndpointConfigurationConfigurer extends org.apache.cam
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "scopes":
         case "Scopes": return java.lang.String.class;
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChildrenEndpointConfigurationConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChildrenEndpointConfigurationConfigurer.java
index 86d2c91..33700a4 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChildrenEndpointConfigurationConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChildrenEndpointConfigurationConfigurer.java
@@ -93,7 +93,7 @@ public class DriveChildrenEndpointConfigurationConfigurer extends org.apache.cam
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "scopes":
         case "Scopes": return java.lang.String.class;
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveCommentsEndpointConfigurationConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveCommentsEndpointConfigurationConfigurer.java
index 9ed0825..ea3a336 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveCommentsEndpointConfigurationConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveCommentsEndpointConfigurationConfigurer.java
@@ -93,7 +93,7 @@ public class DriveCommentsEndpointConfigurationConfigurer extends org.apache.cam
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "scopes":
         case "Scopes": return java.lang.String.class;
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveFilesEndpointConfigurationConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveFilesEndpointConfigurationConfigurer.java
index 9ff5186..2a867c5 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveFilesEndpointConfigurationConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveFilesEndpointConfigurationConfigurer.java
@@ -103,7 +103,7 @@ public class DriveFilesEndpointConfigurationConfigurer extends org.apache.camel.
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "scopes":
         case "Scopes": return java.lang.String.class;
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveParentsEndpointConfigurationConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveParentsEndpointConfigurationConfigurer.java
index 127d698..ec9cde9 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveParentsEndpointConfigurationConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveParentsEndpointConfigurationConfigurer.java
@@ -93,7 +93,7 @@ public class DriveParentsEndpointConfigurationConfigurer extends org.apache.came
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "scopes":
         case "Scopes": return java.lang.String.class;
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePermissionsEndpointConfigurationConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePermissionsEndpointConfigurationConfigurer.java
index 422d104..9eb00d04 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePermissionsEndpointConfigurationConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePermissionsEndpointConfigurationConfigurer.java
@@ -98,7 +98,7 @@ public class DrivePermissionsEndpointConfigurationConfigurer extends org.apache.
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "scopes":
         case "Scopes": return java.lang.String.class;
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePropertiesEndpointConfigurationConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePropertiesEndpointConfigurationConfigurer.java
index dd91ec6..2b2e41b1 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePropertiesEndpointConfigurationConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePropertiesEndpointConfigurationConfigurer.java
@@ -93,7 +93,7 @@ public class DrivePropertiesEndpointConfigurationConfigurer extends org.apache.c
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "scopes":
         case "Scopes": return java.lang.String.class;
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRealtimeEndpointConfigurationConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRealtimeEndpointConfigurationConfigurer.java
index d5d76af..a5f7ea0 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRealtimeEndpointConfigurationConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRealtimeEndpointConfigurationConfigurer.java
@@ -88,7 +88,7 @@ public class DriveRealtimeEndpointConfigurationConfigurer extends org.apache.cam
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "scopes":
         case "Scopes": return java.lang.String.class;
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRepliesEndpointConfigurationConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRepliesEndpointConfigurationConfigurer.java
index 90d32fe..4e39f11 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRepliesEndpointConfigurationConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRepliesEndpointConfigurationConfigurer.java
@@ -98,7 +98,7 @@ public class DriveRepliesEndpointConfigurationConfigurer extends org.apache.came
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "scopes":
         case "Scopes": return java.lang.String.class;
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRevisionsEndpointConfigurationConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRevisionsEndpointConfigurationConfigurer.java
index 44ab2a3..7916c97 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRevisionsEndpointConfigurationConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRevisionsEndpointConfigurationConfigurer.java
@@ -93,7 +93,7 @@ public class DriveRevisionsEndpointConfigurationConfigurer extends org.apache.ca
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "scopes":
         case "Scopes": return java.lang.String.class;
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveConfigurationConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveConfigurationConfigurer.java
index 6bac635..3196a65 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveConfigurationConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveConfigurationConfigurer.java
@@ -78,7 +78,7 @@ public class GoogleDriveConfigurationConfigurer extends org.apache.camel.support
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "scopes":
         case "Scopes": return java.lang.String.class;
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveEndpointConfigurer.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveEndpointConfigurer.java
index 0c1504a..03b2331 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveEndpointConfigurer.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/GoogleDriveEndpointConfigurer.java
@@ -61,7 +61,7 @@ public class GoogleDriveEndpointConfigurer extends PropertyConfigurerSupport imp
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "scopes": target.getConfiguration().setScopes(property(camelContext, java.util.List.class, value)); return true;
@@ -103,7 +103,7 @@ public class GoogleDriveEndpointConfigurer extends PropertyConfigurerSupport imp
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("scopes", java.util.List.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-google-drive/src/generated/resources/org/apache/camel/component/google/drive/google-drive.json b/components/camel-google-drive/src/generated/resources/org/apache/camel/component/google/drive/google-drive.json
index b0bb204..ac3e9ce 100644
--- a/components/camel-google-drive/src/generated/resources/org/apache/camel/component/google/drive/google-drive.json
+++ b/components/camel-google-drive/src/generated/resources/org/apache/camel/component/google/drive/google-drive.json
@@ -58,7 +58,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-google-drive/src/main/docs/google-drive-component.adoc b/components/camel-google-drive/src/main/docs/google-drive-component.adoc
index 42d4728..68fc767 100644
--- a/components/camel-google-drive/src/main/docs/google-drive-component.adoc
+++ b/components/camel-google-drive/src/main/docs/google-drive-component.adoc
@@ -150,7 +150,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GoogleMailEndpointConfigurer.java b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GoogleMailEndpointConfigurer.java
index b6b4a83..eb5d4c2 100644
--- a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GoogleMailEndpointConfigurer.java
+++ b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GoogleMailEndpointConfigurer.java
@@ -59,7 +59,7 @@ public class GoogleMailEndpointConfigurer extends PropertyConfigurerSupport impl
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -99,7 +99,7 @@ public class GoogleMailEndpointConfigurer extends PropertyConfigurerSupport impl
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/stream/GoogleMailStreamEndpointConfigurer.java b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/stream/GoogleMailStreamEndpointConfigurer.java
index ce5fecf..532ebff 100644
--- a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/stream/GoogleMailStreamEndpointConfigurer.java
+++ b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/stream/GoogleMailStreamEndpointConfigurer.java
@@ -61,7 +61,7 @@ public class GoogleMailStreamEndpointConfigurer extends PropertyConfigurerSuppor
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -103,7 +103,7 @@ public class GoogleMailStreamEndpointConfigurer extends PropertyConfigurerSuppor
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/google-mail.json b/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/google-mail.json
index 889c38b..a67c6f4 100644
--- a/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/google-mail.json
+++ b/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/google-mail.json
@@ -55,7 +55,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/stream/google-mail-stream.json b/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/stream/google-mail-stream.json
index 4691f7a..b9bcffe 100644
--- a/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/stream/google-mail-stream.json
+++ b/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/stream/google-mail-stream.json
@@ -62,7 +62,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-google-mail/src/main/docs/google-mail-component.adoc b/components/camel-google-mail/src/main/docs/google-mail-component.adoc
index 1dd09cd..2db3039 100644
--- a/components/camel-google-mail/src/main/docs/google-mail-component.adoc
+++ b/components/camel-google-mail/src/main/docs/google-mail-component.adoc
@@ -138,7 +138,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-google-mail/src/main/docs/google-mail-stream-component.adoc b/components/camel-google-mail/src/main/docs/google-mail-stream-component.adoc
index 7792bda..06c2470 100644
--- a/components/camel-google-mail/src/main/docs/google-mail-stream-component.adoc
+++ b/components/camel-google-mail/src/main/docs/google-mail-stream-component.adoc
@@ -128,7 +128,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/GoogleSheetsEndpointConfigurer.java b/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/GoogleSheetsEndpointConfigurer.java
index ce41572..15491d3 100644
--- a/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/GoogleSheetsEndpointConfigurer.java
+++ b/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/GoogleSheetsEndpointConfigurer.java
@@ -59,7 +59,7 @@ public class GoogleSheetsEndpointConfigurer extends PropertyConfigurerSupport im
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -99,7 +99,7 @@ public class GoogleSheetsEndpointConfigurer extends PropertyConfigurerSupport im
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/stream/GoogleSheetsStreamEndpointConfigurer.java b/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/stream/GoogleSheetsStreamEndpointConfigurer.java
index 6d6862d..2369c36 100644
--- a/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/stream/GoogleSheetsStreamEndpointConfigurer.java
+++ b/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/stream/GoogleSheetsStreamEndpointConfigurer.java
@@ -62,7 +62,7 @@ public class GoogleSheetsStreamEndpointConfigurer extends PropertyConfigurerSupp
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "scopes": target.getConfiguration().setScopes(property(camelContext, java.util.List.class, value)); return true;
@@ -111,7 +111,7 @@ public class GoogleSheetsStreamEndpointConfigurer extends PropertyConfigurerSupp
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("scopes", java.util.List.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/google-sheets.json b/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/google-sheets.json
index e68ab81..e35e15a 100644
--- a/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/google-sheets.json
+++ b/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/google-sheets.json
@@ -56,7 +56,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/stream/google-sheets-stream.json b/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/stream/google-sheets-stream.json
index ab26df0..c28046a 100644
--- a/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/stream/google-sheets-stream.json
+++ b/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/stream/google-sheets-stream.json
@@ -71,7 +71,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-google-sheets/src/main/docs/google-sheets-component.adoc b/components/camel-google-sheets/src/main/docs/google-sheets-component.adoc
index 4400e9d..293e510 100644
--- a/components/camel-google-sheets/src/main/docs/google-sheets-component.adoc
+++ b/components/camel-google-sheets/src/main/docs/google-sheets-component.adoc
@@ -134,7 +134,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-google-sheets/src/main/docs/google-sheets-stream-component.adoc b/components/camel-google-sheets/src/main/docs/google-sheets-stream-component.adoc
index c3a1efb..cf8521a 100644
--- a/components/camel-google-sheets/src/main/docs/google-sheets-stream-component.adoc
+++ b/components/camel-google-sheets/src/main/docs/google-sheets-stream-component.adoc
@@ -138,7 +138,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-hdfs/src/generated/java/org/apache/camel/component/hdfs/HdfsEndpointConfigurer.java b/components/camel-hdfs/src/generated/java/org/apache/camel/component/hdfs/HdfsEndpointConfigurer.java
index ca91ad4..f47aa98 100644
--- a/components/camel-hdfs/src/generated/java/org/apache/camel/component/hdfs/HdfsEndpointConfigurer.java
+++ b/components/camel-hdfs/src/generated/java/org/apache/camel/component/hdfs/HdfsEndpointConfigurer.java
@@ -86,7 +86,7 @@ public class HdfsEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -148,7 +148,7 @@ public class HdfsEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("replication", short.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("splitStrategy", java.lang.String.class);
diff --git a/components/camel-hdfs/src/generated/resources/org/apache/camel/component/hdfs/hdfs.json b/components/camel-hdfs/src/generated/resources/org/apache/camel/component/hdfs/hdfs.json
index 56cbba0..1c5c619 100644
--- a/components/camel-hdfs/src/generated/resources/org/apache/camel/component/hdfs/hdfs.json
+++ b/components/camel-hdfs/src/generated/resources/org/apache/camel/component/hdfs/hdfs.json
@@ -70,7 +70,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-hdfs/src/main/docs/hdfs-component.adoc b/components/camel-hdfs/src/main/docs/hdfs-component.adoc
index 9f5eec9..35f4dc8 100644
--- a/components/camel-hdfs/src/main/docs/hdfs-component.adoc
+++ b/components/camel-hdfs/src/main/docs/hdfs-component.adoc
@@ -148,7 +148,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-hipchat/src/generated/java/org/apache/camel/component/hipchat/HipchatEndpointConfigurer.java b/components/camel-hipchat/src/generated/java/org/apache/camel/component/hipchat/HipchatEndpointConfigurer.java
index ec49d80..a5723e8 100644
--- a/components/camel-hipchat/src/generated/java/org/apache/camel/component/hipchat/HipchatEndpointConfigurer.java
+++ b/components/camel-hipchat/src/generated/java/org/apache/camel/component/hipchat/HipchatEndpointConfigurer.java
@@ -53,7 +53,7 @@ public class HipchatEndpointConfigurer extends PropertyConfigurerSupport impleme
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -90,7 +90,7 @@ public class HipchatEndpointConfigurer extends PropertyConfigurerSupport impleme
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-hipchat/src/generated/resources/org/apache/camel/component/hipchat/hipchat.json b/components/camel-hipchat/src/generated/resources/org/apache/camel/component/hipchat/hipchat.json
index 06809f1..f50a09a 100644
--- a/components/camel-hipchat/src/generated/resources/org/apache/camel/component/hipchat/hipchat.json
+++ b/components/camel-hipchat/src/generated/resources/org/apache/camel/component/hipchat/hipchat.json
@@ -49,7 +49,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-hipchat/src/main/docs/hipchat-component.adoc b/components/camel-hipchat/src/main/docs/hipchat-component.adoc
index f153cfc..5061a19 100644
--- a/components/camel-hipchat/src/main/docs/hipchat-component.adoc
+++ b/components/camel-hipchat/src/main/docs/hipchat-component.adoc
@@ -100,7 +100,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-ironmq/src/generated/java/org/apache/camel/component/ironmq/IronMQEndpointConfigurer.java b/components/camel-ironmq/src/generated/java/org/apache/camel/component/ironmq/IronMQEndpointConfigurer.java
index f718044..52e1ac6 100644
--- a/components/camel-ironmq/src/generated/java/org/apache/camel/component/ironmq/IronMQEndpointConfigurer.java
+++ b/components/camel-ironmq/src/generated/java/org/apache/camel/component/ironmq/IronMQEndpointConfigurer.java
@@ -60,7 +60,7 @@ public class IronMQEndpointConfigurer extends PropertyConfigurerSupport implemen
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -106,7 +106,7 @@ public class IronMQEndpointConfigurer extends PropertyConfigurerSupport implemen
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-ironmq/src/generated/resources/org/apache/camel/component/ironmq/ironmq.json b/components/camel-ironmq/src/generated/resources/org/apache/camel/component/ironmq/ironmq.json
index 4db17d0..6e6b247 100644
--- a/components/camel-ironmq/src/generated/resources/org/apache/camel/component/ironmq/ironmq.json
+++ b/components/camel-ironmq/src/generated/resources/org/apache/camel/component/ironmq/ironmq.json
@@ -55,7 +55,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-ironmq/src/main/docs/ironmq-component.adoc b/components/camel-ironmq/src/main/docs/ironmq-component.adoc
index 628f669..b0895d6 100644
--- a/components/camel-ironmq/src/main/docs/ironmq-component.adoc
+++ b/components/camel-ironmq/src/main/docs/ironmq-component.adoc
@@ -101,7 +101,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-jooq/src/generated/java/org/apache/camel/component/jooq/JooqEndpointConfigurer.java b/components/camel-jooq/src/generated/java/org/apache/camel/component/jooq/JooqEndpointConfigurer.java
index 44281ec..a0c00a9 100644
--- a/components/camel-jooq/src/generated/java/org/apache/camel/component/jooq/JooqEndpointConfigurer.java
+++ b/components/camel-jooq/src/generated/java/org/apache/camel/component/jooq/JooqEndpointConfigurer.java
@@ -53,7 +53,7 @@ public class JooqEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -91,7 +91,7 @@ public class JooqEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-jooq/src/generated/resources/org/apache/camel/component/jooq/jooq.json b/components/camel-jooq/src/generated/resources/org/apache/camel/component/jooq/jooq.json
index b9c46b7..18d8793 100644
--- a/components/camel-jooq/src/generated/resources/org/apache/camel/component/jooq/jooq.json
+++ b/components/camel-jooq/src/generated/resources/org/apache/camel/component/jooq/jooq.json
@@ -53,7 +53,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-jooq/src/main/docs/jooq-component.adoc b/components/camel-jooq/src/main/docs/jooq-component.adoc
index 704778e..3b81e34 100644
--- a/components/camel-jooq/src/main/docs/jooq-component.adoc
+++ b/components/camel-jooq/src/main/docs/jooq-component.adoc
@@ -113,7 +113,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-jpa/src/generated/java/org/apache/camel/component/jpa/JpaEndpointConfigurer.java b/components/camel-jpa/src/generated/java/org/apache/camel/component/jpa/JpaEndpointConfigurer.java
index 056ac50..0f7974a 100644
--- a/components/camel-jpa/src/generated/java/org/apache/camel/component/jpa/JpaEndpointConfigurer.java
+++ b/components/camel-jpa/src/generated/java/org/apache/camel/component/jpa/JpaEndpointConfigurer.java
@@ -80,7 +80,7 @@ public class JpaEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -143,7 +143,7 @@ public class JpaEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("resultClass", java.lang.Class.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("sharedEntityManager", boolean.class);
diff --git a/components/camel-jpa/src/generated/resources/org/apache/camel/component/jpa/jpa.json b/components/camel-jpa/src/generated/resources/org/apache/camel/component/jpa/jpa.json
index 2a4994a..1fdfb01 100644
--- a/components/camel-jpa/src/generated/resources/org/apache/camel/component/jpa/jpa.json
+++ b/components/camel-jpa/src/generated/resources/org/apache/camel/component/jpa/jpa.json
@@ -72,7 +72,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-jpa/src/main/docs/jpa-component.adoc b/components/camel-jpa/src/main/docs/jpa-component.adoc
index 87ce7d2..193be0f 100644
--- a/components/camel-jpa/src/main/docs/jpa-component.adoc
+++ b/components/camel-jpa/src/main/docs/jpa-component.adoc
@@ -192,7 +192,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-jt400/src/generated/java/org/apache/camel/component/jt400/Jt400EndpointConfigurer.java b/components/camel-jt400/src/generated/java/org/apache/camel/component/jt400/Jt400EndpointConfigurer.java
index 001c03d..575aabb 100644
--- a/components/camel-jt400/src/generated/java/org/apache/camel/component/jt400/Jt400EndpointConfigurer.java
+++ b/components/camel-jt400/src/generated/java/org/apache/camel/component/jt400/Jt400EndpointConfigurer.java
@@ -62,7 +62,7 @@ public class Jt400EndpointConfigurer extends PropertyConfigurerSupport implement
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "searchkey":
@@ -110,7 +110,7 @@ public class Jt400EndpointConfigurer extends PropertyConfigurerSupport implement
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("searchKey", java.lang.String.class);
         answer.put("searchType", org.apache.camel.component.jt400.Jt400Configuration.SearchType.class);
diff --git a/components/camel-jt400/src/generated/resources/org/apache/camel/component/jt400/jt400.json b/components/camel-jt400/src/generated/resources/org/apache/camel/component/jt400/jt400.json
index a8d0066..bd8bbe5 100644
--- a/components/camel-jt400/src/generated/resources/org/apache/camel/component/jt400/jt400.json
+++ b/components/camel-jt400/src/generated/resources/org/apache/camel/component/jt400/jt400.json
@@ -60,7 +60,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-jt400/src/main/docs/jt400-component.adoc b/components/camel-jt400/src/main/docs/jt400-component.adoc
index 1f3b886..2a36483 100644
--- a/components/camel-jt400/src/main/docs/jt400-component.adoc
+++ b/components/camel-jt400/src/main/docs/jt400-component.adoc
@@ -129,7 +129,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-mail/src/generated/java/org/apache/camel/component/mail/MailEndpointConfigurer.java b/components/camel-mail/src/generated/java/org/apache/camel/component/mail/MailEndpointConfigurer.java
index 4128044..530bd95 100644
--- a/components/camel-mail/src/generated/java/org/apache/camel/component/mail/MailEndpointConfigurer.java
+++ b/components/camel-mail/src/generated/java/org/apache/camel/component/mail/MailEndpointConfigurer.java
@@ -108,7 +108,7 @@ public class MailEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "searchterm":
@@ -192,7 +192,7 @@ public class MailEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("replyTo", java.lang.String.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("searchTerm", javax.mail.search.SearchTerm.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
diff --git a/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/imap.json b/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/imap.json
index ffdebe1..8c64be5 100644
--- a/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/imap.json
+++ b/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/imap.json
@@ -127,7 +127,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/imaps.json b/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/imaps.json
index bcce8ce..fee2f9f 100644
--- a/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/imaps.json
+++ b/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/imaps.json
@@ -127,7 +127,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/pop3.json b/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/pop3.json
index 6bca483..70e76ab 100644
--- a/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/pop3.json
+++ b/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/pop3.json
@@ -127,7 +127,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/pop3s.json b/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/pop3s.json
index c14cdac..77a942d 100644
--- a/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/pop3s.json
+++ b/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/pop3s.json
@@ -127,7 +127,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/smtp.json b/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/smtp.json
index aa63784..8752767 100644
--- a/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/smtp.json
+++ b/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/smtp.json
@@ -127,7 +127,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/smtps.json b/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/smtps.json
index 859c236..adea903 100644
--- a/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/smtps.json
+++ b/components/camel-mail/src/generated/resources/org/apache/camel/component/mail/smtps.json
@@ -127,7 +127,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-mail/src/main/docs/mail-component.adoc b/components/camel-mail/src/main/docs/mail-component.adoc
index 617a25b..4f225af 100644
--- a/components/camel-mail/src/main/docs/mail-component.adoc
+++ b/components/camel-mail/src/main/docs/mail-component.adoc
@@ -238,7 +238,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailComponentTest.java b/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailComponentTest.java
index 4fdadec..72a5d15 100644
--- a/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailComponentTest.java
+++ b/components/camel-mail/src/test/java/org/apache/camel/component/mail/MailComponentTest.java
@@ -363,7 +363,7 @@ public class MailComponentTest extends CamelTestSupport {
         assertEquals("secret", endpoint.getConfiguration().getPassword());
         assertEquals("myhost", endpoint.getConfiguration().getHost());
 
-        assertNotNull("Scheduler not set", endpoint.getScheduler());
+        assertNotNull(endpoint.getScheduler());
         assertEquals("quartz", endpoint.getScheduler());
     }
 }
diff --git a/components/camel-minio/src/generated/java/org/apache/camel/component/minio/MinioEndpointConfigurer.java b/components/camel-minio/src/generated/java/org/apache/camel/component/minio/MinioEndpointConfigurer.java
index 1c0d1a1..a18af5b 100644
--- a/components/camel-minio/src/generated/java/org/apache/camel/component/minio/MinioEndpointConfigurer.java
+++ b/components/camel-minio/src/generated/java/org/apache/camel/component/minio/MinioEndpointConfigurer.java
@@ -106,7 +106,7 @@ public class MinioEndpointConfigurer extends PropertyConfigurerSupport implement
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "secretkey":
@@ -191,7 +191,7 @@ public class MinioEndpointConfigurer extends PropertyConfigurerSupport implement
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("secretKey", java.lang.String.class);
         answer.put("secure", boolean.class);
diff --git a/components/camel-minio/src/generated/resources/org/apache/camel/component/minio/minio.json b/components/camel-minio/src/generated/resources/org/apache/camel/component/minio/minio.json
index 5e910b1..8577b2a70 100644
--- a/components/camel-minio/src/generated/resources/org/apache/camel/component/minio/minio.json
+++ b/components/camel-minio/src/generated/resources/org/apache/camel/component/minio/minio.json
@@ -129,7 +129,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-minio/src/main/docs/minio-component.adoc b/components/camel-minio/src/main/docs/minio-component.adoc
index 63b862c..3a05e1e 100644
--- a/components/camel-minio/src/main/docs/minio-component.adoc
+++ b/components/camel-minio/src/main/docs/minio-component.adoc
@@ -181,7 +181,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-mybatis/src/generated/java/org/apache/camel/component/mybatis/MyBatisEndpointConfigurer.java b/components/camel-mybatis/src/generated/java/org/apache/camel/component/mybatis/MyBatisEndpointConfigurer.java
index 9afd4f8..1c13953 100644
--- a/components/camel-mybatis/src/generated/java/org/apache/camel/component/mybatis/MyBatisEndpointConfigurer.java
+++ b/components/camel-mybatis/src/generated/java/org/apache/camel/component/mybatis/MyBatisEndpointConfigurer.java
@@ -61,7 +61,7 @@ public class MyBatisEndpointConfigurer extends PropertyConfigurerSupport impleme
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -107,7 +107,7 @@ public class MyBatisEndpointConfigurer extends PropertyConfigurerSupport impleme
         answer.put("routeEmptyResultSet", boolean.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-mybatis/src/generated/resources/org/apache/camel/component/mybatis/mybatis.json b/components/camel-mybatis/src/generated/resources/org/apache/camel/component/mybatis/mybatis.json
index 38576b1..2fc4bcd 100644
--- a/components/camel-mybatis/src/generated/resources/org/apache/camel/component/mybatis/mybatis.json
+++ b/components/camel-mybatis/src/generated/resources/org/apache/camel/component/mybatis/mybatis.json
@@ -56,7 +56,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-mybatis/src/main/docs/mybatis-component.adoc b/components/camel-mybatis/src/main/docs/mybatis-component.adoc
index 25d35f1..73c5240 100644
--- a/components/camel-mybatis/src/main/docs/mybatis-component.adoc
+++ b/components/camel-mybatis/src/main/docs/mybatis-component.adoc
@@ -118,7 +118,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-oaipmh/src/generated/java/org/apache/camel/oaipmh/component/OAIPMHEndpointConfigurer.java b/components/camel-oaipmh/src/generated/java/org/apache/camel/oaipmh/component/OAIPMHEndpointConfigurer.java
index 76b288e..a5d24c6 100644
--- a/components/camel-oaipmh/src/generated/java/org/apache/camel/oaipmh/component/OAIPMHEndpointConfigurer.java
+++ b/components/camel-oaipmh/src/generated/java/org/apache/camel/oaipmh/component/OAIPMHEndpointConfigurer.java
@@ -55,7 +55,7 @@ public class OAIPMHEndpointConfigurer extends PropertyConfigurerSupport implemen
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -98,7 +98,7 @@ public class OAIPMHEndpointConfigurer extends PropertyConfigurerSupport implemen
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("set", java.lang.String.class);
diff --git a/components/camel-oaipmh/src/generated/resources/org/apache/camel/oaipmh/component/oaipmh.json b/components/camel-oaipmh/src/generated/resources/org/apache/camel/oaipmh/component/oaipmh.json
index c36f846..b70714c 100644
--- a/components/camel-oaipmh/src/generated/resources/org/apache/camel/oaipmh/component/oaipmh.json
+++ b/components/camel-oaipmh/src/generated/resources/org/apache/camel/oaipmh/component/oaipmh.json
@@ -51,7 +51,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-oaipmh/src/main/docs/oaipmh-component.adoc b/components/camel-oaipmh/src/main/docs/oaipmh-component.adoc
index 7934876..bf3e17f 100644
--- a/components/camel-oaipmh/src/main/docs/oaipmh-component.adoc
+++ b/components/camel-oaipmh/src/main/docs/oaipmh-component.adoc
@@ -103,7 +103,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2AppEndpointConfigurationConfigurer.java b/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2AppEndpointConfigurationConfigurer.java
index 383375c..bf7dcb9 100644
--- a/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2AppEndpointConfigurationConfigurer.java
+++ b/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2AppEndpointConfigurationConfigurer.java
@@ -148,7 +148,7 @@ public class Olingo2AppEndpointConfigurationConfigurer extends org.apache.camel.
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "endpointhttpheaders":
         case "EndpointHttpHeaders": return java.lang.String.class;
diff --git a/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2ConfigurationConfigurer.java b/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2ConfigurationConfigurer.java
index f95a885..2c4d8e9 100644
--- a/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2ConfigurationConfigurer.java
+++ b/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2ConfigurationConfigurer.java
@@ -113,7 +113,7 @@ public class Olingo2ConfigurationConfigurer extends org.apache.camel.support.com
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "httpheaders":
         case "HttpHeaders": return java.lang.String.class;
diff --git a/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2EndpointConfigurer.java b/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2EndpointConfigurer.java
index 25c616e..03fdab0 100644
--- a/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2EndpointConfigurer.java
+++ b/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2EndpointConfigurer.java
@@ -66,7 +66,7 @@ public class Olingo2EndpointConfigurer extends PropertyConfigurerSupport impleme
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -118,7 +118,7 @@ public class Olingo2EndpointConfigurer extends PropertyConfigurerSupport impleme
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("serviceUri", java.lang.String.class);
diff --git a/components/camel-olingo2/camel-olingo2-component/src/generated/resources/org/apache/camel/component/olingo2/olingo2.json b/components/camel-olingo2/camel-olingo2-component/src/generated/resources/org/apache/camel/component/olingo2/olingo2.json
index f07ed5a..1ac931e 100644
--- a/components/camel-olingo2/camel-olingo2-component/src/generated/resources/org/apache/camel/component/olingo2/olingo2.json
+++ b/components/camel-olingo2/camel-olingo2-component/src/generated/resources/org/apache/camel/component/olingo2/olingo2.json
@@ -73,7 +73,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-olingo2/camel-olingo2-component/src/main/docs/olingo2-component.adoc b/components/camel-olingo2/camel-olingo2-component/src/main/docs/olingo2-component.adoc
index bd2e800..ceafa19 100644
--- a/components/camel-olingo2/camel-olingo2-component/src/main/docs/olingo2-component.adoc
+++ b/components/camel-olingo2/camel-olingo2-component/src/main/docs/olingo2-component.adoc
@@ -141,7 +141,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4AppEndpointConfigurationConfigurer.java b/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4AppEndpointConfigurationConfigurer.java
index 3bfe940..5e3dac6 100644
--- a/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4AppEndpointConfigurationConfigurer.java
+++ b/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4AppEndpointConfigurationConfigurer.java
@@ -138,7 +138,7 @@ public class Olingo4AppEndpointConfigurationConfigurer extends org.apache.camel.
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "endpointhttpheaders":
         case "EndpointHttpHeaders": return java.lang.String.class;
diff --git a/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4ConfigurationConfigurer.java b/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4ConfigurationConfigurer.java
index 765e2b4..2ba4115 100644
--- a/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4ConfigurationConfigurer.java
+++ b/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4ConfigurationConfigurer.java
@@ -103,7 +103,7 @@ public class Olingo4ConfigurationConfigurer extends org.apache.camel.support.com
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "httpheaders":
         case "HttpHeaders": return java.lang.String.class;
diff --git a/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4EndpointConfigurer.java b/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4EndpointConfigurer.java
index aa1b5f2..936b5fb 100644
--- a/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4EndpointConfigurer.java
+++ b/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4EndpointConfigurer.java
@@ -62,7 +62,7 @@ public class Olingo4EndpointConfigurer extends PropertyConfigurerSupport impleme
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -112,7 +112,7 @@ public class Olingo4EndpointConfigurer extends PropertyConfigurerSupport impleme
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("serviceUri", java.lang.String.class);
diff --git a/components/camel-olingo4/camel-olingo4-component/src/generated/resources/org/apache/camel/component/olingo4/olingo4.json b/components/camel-olingo4/camel-olingo4-component/src/generated/resources/org/apache/camel/component/olingo4/olingo4.json
index 9ed9730..9e2954d 100644
--- a/components/camel-olingo4/camel-olingo4-component/src/generated/resources/org/apache/camel/component/olingo4/olingo4.json
+++ b/components/camel-olingo4/camel-olingo4-component/src/generated/resources/org/apache/camel/component/olingo4/olingo4.json
@@ -69,7 +69,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-olingo4/camel-olingo4-component/src/main/docs/olingo4-component.adoc b/components/camel-olingo4/camel-olingo4-component/src/main/docs/olingo4-component.adoc
index 3df85ab..b582cca 100644
--- a/components/camel-olingo4/camel-olingo4-component/src/main/docs/olingo4-component.adoc
+++ b/components/camel-olingo4/camel-olingo4-component/src/main/docs/olingo4-component.adoc
@@ -138,7 +138,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-pg-replication-slot/src/generated/java/org/apache/camel/component/pg/replication/slot/PgReplicationSlotEndpointConfigurer.java b/components/camel-pg-replication-slot/src/generated/java/org/apache/camel/component/pg/replication/slot/PgReplicationSlotEndpointConfigurer.java
index 3f723ad..7176f7d 100644
--- a/components/camel-pg-replication-slot/src/generated/java/org/apache/camel/component/pg/replication/slot/PgReplicationSlotEndpointConfigurer.java
+++ b/components/camel-pg-replication-slot/src/generated/java/org/apache/camel/component/pg/replication/slot/PgReplicationSlotEndpointConfigurer.java
@@ -48,7 +48,7 @@ public class PgReplicationSlotEndpointConfigurer extends PropertyConfigurerSuppo
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -88,7 +88,7 @@ public class PgReplicationSlotEndpointConfigurer extends PropertyConfigurerSuppo
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("slotOptions", java.util.Map.class);
diff --git a/components/camel-pg-replication-slot/src/generated/resources/org/apache/camel/component/pg/replication/slot/pg-replication-slot.json b/components/camel-pg-replication-slot/src/generated/resources/org/apache/camel/component/pg/replication/slot/pg-replication-slot.json
index d51e1a3..2702dfb 100644
--- a/components/camel-pg-replication-slot/src/generated/resources/org/apache/camel/component/pg/replication/slot/pg-replication-slot.json
+++ b/components/camel-pg-replication-slot/src/generated/resources/org/apache/camel/component/pg/replication/slot/pg-replication-slot.json
@@ -51,7 +51,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-pg-replication-slot/src/main/docs/pg-replication-slot-component.adoc b/components/camel-pg-replication-slot/src/main/docs/pg-replication-slot-component.adoc
index 88988f6..158195d 100644
--- a/components/camel-pg-replication-slot/src/main/docs/pg-replication-slot-component.adoc
+++ b/components/camel-pg-replication-slot/src/main/docs/pg-replication-slot-component.adoc
@@ -108,7 +108,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-robotframework/src/generated/java/org/apache/camel/component/robotframework/RobotFrameworkEndpointConfigurer.java b/components/camel-robotframework/src/generated/java/org/apache/camel/component/robotframework/RobotFrameworkEndpointConfigurer.java
index 55b3d91..8c6fbf9 100644
--- a/components/camel-robotframework/src/generated/java/org/apache/camel/component/robotframework/RobotFrameworkEndpointConfigurer.java
+++ b/components/camel-robotframework/src/generated/java/org/apache/camel/component/robotframework/RobotFrameworkEndpointConfigurer.java
@@ -99,7 +99,7 @@ public class RobotFrameworkEndpointConfigurer extends PropertyConfigurerSupport
         case "runMode": target.getConfiguration().setRunMode(property(camelContext, java.lang.String.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -193,7 +193,7 @@ public class RobotFrameworkEndpointConfigurer extends PropertyConfigurerSupport
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("runMode", java.lang.String.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("skipTeardownOnExit", boolean.class);
diff --git a/components/camel-robotframework/src/generated/resources/org/apache/camel/component/robotframework/robotframework.json b/components/camel-robotframework/src/generated/resources/org/apache/camel/component/robotframework/robotframework.json
index 2321fc7..312684d0 100644
--- a/components/camel-robotframework/src/generated/resources/org/apache/camel/component/robotframework/robotframework.json
+++ b/components/camel-robotframework/src/generated/resources/org/apache/camel/component/robotframework/robotframework.json
@@ -140,7 +140,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-robotframework/src/main/docs/robotframework-component.adoc b/components/camel-robotframework/src/main/docs/robotframework-component.adoc
index 175aa79..1bffcaa 100644
--- a/components/camel-robotframework/src/main/docs/robotframework-component.adoc
+++ b/components/camel-robotframework/src/main/docs/robotframework-component.adoc
@@ -203,7 +203,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-rss/src/generated/java/org/apache/camel/component/rss/RssEndpointConfigurer.java b/components/camel-rss/src/generated/java/org/apache/camel/component/rss/RssEndpointConfigurer.java
index 5986794..c3889f8 100644
--- a/components/camel-rss/src/generated/java/org/apache/camel/component/rss/RssEndpointConfigurer.java
+++ b/components/camel-rss/src/generated/java/org/apache/camel/component/rss/RssEndpointConfigurer.java
@@ -51,7 +51,7 @@ public class RssEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -95,7 +95,7 @@ public class RssEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("sortEntries", boolean.class);
diff --git a/components/camel-rss/src/generated/resources/org/apache/camel/component/rss/rss.json b/components/camel-rss/src/generated/resources/org/apache/camel/component/rss/rss.json
index 3e73028..b3937df 100644
--- a/components/camel-rss/src/generated/resources/org/apache/camel/component/rss/rss.json
+++ b/components/camel-rss/src/generated/resources/org/apache/camel/component/rss/rss.json
@@ -50,7 +50,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-rss/src/main/docs/rss-component.adoc b/components/camel-rss/src/main/docs/rss-component.adoc
index f398dd5..db71736 100644
--- a/components/camel-rss/src/main/docs/rss-component.adoc
+++ b/components/camel-rss/src/main/docs/rss-component.adoc
@@ -108,7 +108,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-saxon/src/generated/java/org/apache/camel/component/xquery/XQueryEndpointConfigurer.java b/components/camel-saxon/src/generated/java/org/apache/camel/component/xquery/XQueryEndpointConfigurer.java
index 27c4455..5469aff 100644
--- a/components/camel-saxon/src/generated/java/org/apache/camel/component/xquery/XQueryEndpointConfigurer.java
+++ b/components/camel-saxon/src/generated/java/org/apache/camel/component/xquery/XQueryEndpointConfigurer.java
@@ -64,7 +64,7 @@ public class XQueryEndpointConfigurer extends PropertyConfigurerSupport implemen
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -112,7 +112,7 @@ public class XQueryEndpointConfigurer extends PropertyConfigurerSupport implemen
         answer.put("resultsFormat", org.apache.camel.component.xquery.ResultFormat.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-saxon/src/generated/resources/org/apache/camel/component/xquery/xquery.json b/components/camel-saxon/src/generated/resources/org/apache/camel/component/xquery/xquery.json
index c261238..9634ec0 100644
--- a/components/camel-saxon/src/generated/resources/org/apache/camel/component/xquery/xquery.json
+++ b/components/camel-saxon/src/generated/resources/org/apache/camel/component/xquery/xquery.json
@@ -59,7 +59,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-saxon/src/main/docs/xquery-component.adoc b/components/camel-saxon/src/main/docs/xquery-component.adoc
index ec7b473..0e1be60 100644
--- a/components/camel-saxon/src/main/docs/xquery-component.adoc
+++ b/components/camel-saxon/src/main/docs/xquery-component.adoc
@@ -94,7 +94,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-scheduler/src/generated/java/org/apache/camel/component/scheduler/SchedulerEndpointConfigurer.java b/components/camel-scheduler/src/generated/java/org/apache/camel/component/scheduler/SchedulerEndpointConfigurer.java
index d2b661c..bd256e7 100644
--- a/components/camel-scheduler/src/generated/java/org/apache/camel/component/scheduler/SchedulerEndpointConfigurer.java
+++ b/components/camel-scheduler/src/generated/java/org/apache/camel/component/scheduler/SchedulerEndpointConfigurer.java
@@ -47,7 +47,7 @@ public class SchedulerEndpointConfigurer extends PropertyConfigurerSupport imple
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -81,7 +81,7 @@ public class SchedulerEndpointConfigurer extends PropertyConfigurerSupport imple
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-scheduler/src/generated/resources/org/apache/camel/component/scheduler/scheduler.json b/components/camel-scheduler/src/generated/resources/org/apache/camel/component/scheduler/scheduler.json
index ffa202b..1cfe558 100644
--- a/components/camel-scheduler/src/generated/resources/org/apache/camel/component/scheduler/scheduler.json
+++ b/components/camel-scheduler/src/generated/resources/org/apache/camel/component/scheduler/scheduler.json
@@ -44,7 +44,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-scheduler/src/main/docs/scheduler-component.adoc b/components/camel-scheduler/src/main/docs/scheduler-component.adoc
index 2c9bdea..b8c040c 100644
--- a/components/camel-scheduler/src/main/docs/scheduler-component.adoc
+++ b/components/camel-scheduler/src/main/docs/scheduler-component.adoc
@@ -97,7 +97,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-slack/src/generated/java/org/apache/camel/component/slack/SlackEndpointConfigurer.java b/components/camel-slack/src/generated/java/org/apache/camel/component/slack/SlackEndpointConfigurer.java
index eebc9b4..53f10bd 100644
--- a/components/camel-slack/src/generated/java/org/apache/camel/component/slack/SlackEndpointConfigurer.java
+++ b/components/camel-slack/src/generated/java/org/apache/camel/component/slack/SlackEndpointConfigurer.java
@@ -53,7 +53,7 @@ public class SlackEndpointConfigurer extends PropertyConfigurerSupport implement
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -96,7 +96,7 @@ public class SlackEndpointConfigurer extends PropertyConfigurerSupport implement
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("serverUrl", java.lang.String.class);
diff --git a/components/camel-slack/src/generated/resources/org/apache/camel/component/slack/slack.json b/components/camel-slack/src/generated/resources/org/apache/camel/component/slack/slack.json
index 9a98971..47d31e3 100644
--- a/components/camel-slack/src/generated/resources/org/apache/camel/component/slack/slack.json
+++ b/components/camel-slack/src/generated/resources/org/apache/camel/component/slack/slack.json
@@ -52,7 +52,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-slack/src/main/docs/slack-component.adoc b/components/camel-slack/src/main/docs/slack-component.adoc
index c1e6b6a..b45e784 100644
--- a/components/camel-slack/src/main/docs/slack-component.adoc
+++ b/components/camel-slack/src/main/docs/slack-component.adoc
@@ -117,7 +117,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-snmp/src/generated/java/org/apache/camel/component/snmp/SnmpEndpointConfigurer.java b/components/camel-snmp/src/generated/java/org/apache/camel/component/snmp/SnmpEndpointConfigurer.java
index f0c4857..bf50120 100644
--- a/components/camel-snmp/src/generated/java/org/apache/camel/component/snmp/SnmpEndpointConfigurer.java
+++ b/components/camel-snmp/src/generated/java/org/apache/camel/component/snmp/SnmpEndpointConfigurer.java
@@ -58,7 +58,7 @@ public class SnmpEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "securitylevel":
@@ -115,7 +115,7 @@ public class SnmpEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("retries", int.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("securityLevel", int.class);
         answer.put("securityName", java.lang.String.class);
diff --git a/components/camel-snmp/src/generated/resources/org/apache/camel/component/snmp/snmp.json b/components/camel-snmp/src/generated/resources/org/apache/camel/component/snmp/snmp.json
index aa42543..a07c1f6 100644
--- a/components/camel-snmp/src/generated/resources/org/apache/camel/component/snmp/snmp.json
+++ b/components/camel-snmp/src/generated/resources/org/apache/camel/component/snmp/snmp.json
@@ -55,7 +55,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-snmp/src/main/docs/snmp-component.adoc b/components/camel-snmp/src/main/docs/snmp-component.adoc
index 3566e70..6049d7f 100644
--- a/components/camel-snmp/src/main/docs/snmp-component.adoc
+++ b/components/camel-snmp/src/main/docs/snmp-component.adoc
@@ -119,7 +119,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-splunk/src/generated/java/org/apache/camel/component/splunk/SplunkEndpointConfigurer.java b/components/camel-splunk/src/generated/java/org/apache/camel/component/splunk/SplunkEndpointConfigurer.java
index f49fd79..21323e2 100644
--- a/components/camel-splunk/src/generated/java/org/apache/camel/component/splunk/SplunkEndpointConfigurer.java
+++ b/components/camel-splunk/src/generated/java/org/apache/camel/component/splunk/SplunkEndpointConfigurer.java
@@ -67,7 +67,7 @@ public class SplunkEndpointConfigurer extends PropertyConfigurerSupport implemen
         case "savedSearch": target.getConfiguration().setSavedSearch(property(camelContext, java.lang.String.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "scheme": target.getConfiguration().setScheme(property(camelContext, java.lang.String.class, value)); return true;
@@ -128,7 +128,7 @@ public class SplunkEndpointConfigurer extends PropertyConfigurerSupport implemen
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("savedSearch", java.lang.String.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("scheme", java.lang.String.class);
         answer.put("search", java.lang.String.class);
diff --git a/components/camel-splunk/src/generated/resources/org/apache/camel/component/splunk/splunk.json b/components/camel-splunk/src/generated/resources/org/apache/camel/component/splunk/splunk.json
index f97ab02..1735d0a 100644
--- a/components/camel-splunk/src/generated/resources/org/apache/camel/component/splunk/splunk.json
+++ b/components/camel-splunk/src/generated/resources/org/apache/camel/component/splunk/splunk.json
@@ -64,7 +64,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-splunk/src/main/docs/splunk-component.adoc b/components/camel-splunk/src/main/docs/splunk-component.adoc
index 1830568..d329c24 100644
--- a/components/camel-splunk/src/main/docs/splunk-component.adoc
+++ b/components/camel-splunk/src/main/docs/splunk-component.adoc
@@ -173,7 +173,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-sql/src/generated/java/org/apache/camel/component/sql/SqlEndpointConfigurer.java b/components/camel-sql/src/generated/java/org/apache/camel/component/sql/SqlEndpointConfigurer.java
index a3f667f..9d58e1d 100644
--- a/components/camel-sql/src/generated/java/org/apache/camel/component/sql/SqlEndpointConfigurer.java
+++ b/components/camel-sql/src/generated/java/org/apache/camel/component/sql/SqlEndpointConfigurer.java
@@ -84,7 +84,7 @@ public class SqlEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -148,7 +148,7 @@ public class SqlEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("routeEmptyResultSet", boolean.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("separator", char.class);
diff --git a/components/camel-sql/src/generated/resources/org/apache/camel/component/sql/sql.json b/components/camel-sql/src/generated/resources/org/apache/camel/component/sql/sql.json
index ce81134..62571b9 100644
--- a/components/camel-sql/src/generated/resources/org/apache/camel/component/sql/sql.json
+++ b/components/camel-sql/src/generated/resources/org/apache/camel/component/sql/sql.json
@@ -72,7 +72,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-sql/src/main/docs/sql-component.adoc b/components/camel-sql/src/main/docs/sql-component.adoc
index 8ed1b7a..0bc2469 100644
--- a/components/camel-sql/src/main/docs/sql-component.adoc
+++ b/components/camel-sql/src/main/docs/sql-component.adoc
@@ -202,7 +202,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-ssh/src/generated/java/org/apache/camel/component/ssh/SshEndpointConfigurer.java b/components/camel-ssh/src/generated/java/org/apache/camel/component/ssh/SshEndpointConfigurer.java
index 61d483c..7d3cd0c 100644
--- a/components/camel-ssh/src/generated/java/org/apache/camel/component/ssh/SshEndpointConfigurer.java
+++ b/components/camel-ssh/src/generated/java/org/apache/camel/component/ssh/SshEndpointConfigurer.java
@@ -64,7 +64,7 @@ public class SshEndpointConfigurer extends PropertyConfigurerSupport implements
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -113,7 +113,7 @@ public class SshEndpointConfigurer extends PropertyConfigurerSupport implements
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("shellPrompt", java.lang.String.class);
diff --git a/components/camel-ssh/src/generated/resources/org/apache/camel/component/ssh/ssh.json b/components/camel-ssh/src/generated/resources/org/apache/camel/component/ssh/ssh.json
index a3efd04..42a3aae 100644
--- a/components/camel-ssh/src/generated/resources/org/apache/camel/component/ssh/ssh.json
+++ b/components/camel-ssh/src/generated/resources/org/apache/camel/component/ssh/ssh.json
@@ -67,7 +67,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-ssh/src/main/docs/ssh-component.adoc b/components/camel-ssh/src/main/docs/ssh-component.adoc
index cb96ee5..d14c863 100644
--- a/components/camel-ssh/src/main/docs/ssh-component.adoc
+++ b/components/camel-ssh/src/main/docs/ssh-component.adoc
@@ -119,7 +119,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-telegram/src/generated/java/org/apache/camel/component/telegram/TelegramEndpointConfigurer.java b/components/camel-telegram/src/generated/java/org/apache/camel/component/telegram/TelegramEndpointConfigurer.java
index f44327a..9b3d477 100644
--- a/components/camel-telegram/src/generated/java/org/apache/camel/component/telegram/TelegramEndpointConfigurer.java
+++ b/components/camel-telegram/src/generated/java/org/apache/camel/component/telegram/TelegramEndpointConfigurer.java
@@ -64,7 +64,7 @@ public class TelegramEndpointConfigurer extends PropertyConfigurerSupport implem
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -108,7 +108,7 @@ public class TelegramEndpointConfigurer extends PropertyConfigurerSupport implem
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-telegram/src/generated/resources/org/apache/camel/component/telegram/telegram.json b/components/camel-telegram/src/generated/resources/org/apache/camel/component/telegram/telegram.json
index caa61b0..7fbcbe3 100644
--- a/components/camel-telegram/src/generated/resources/org/apache/camel/component/telegram/telegram.json
+++ b/components/camel-telegram/src/generated/resources/org/apache/camel/component/telegram/telegram.json
@@ -57,7 +57,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-telegram/src/main/docs/telegram-component.adoc b/components/camel-telegram/src/main/docs/telegram-component.adoc
index 0230e95..b3943f0 100644
--- a/components/camel-telegram/src/main/docs/telegram-component.adoc
+++ b/components/camel-telegram/src/main/docs/telegram-component.adoc
@@ -125,7 +125,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageEndpointConfigurationConfigurer.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageEndpointConfigurationConfigurer.java
index 11307d5..583978a 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageEndpointConfigurationConfigurer.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageEndpointConfigurationConfigurer.java
@@ -83,7 +83,7 @@ public class MessageEndpointConfigurationConfigurer extends org.apache.camel.sup
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "mediaurl":
         case "MediaUrl": return java.net.URI.class;
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/TwilioEndpointConfigurer.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/TwilioEndpointConfigurer.java
index 947a178..29bc66e 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/TwilioEndpointConfigurer.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/TwilioEndpointConfigurer.java
@@ -49,7 +49,7 @@ public class TwilioEndpointConfigurer extends PropertyConfigurerSupport implemen
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -84,7 +84,7 @@ public class TwilioEndpointConfigurer extends PropertyConfigurerSupport implemen
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-twilio/src/generated/resources/org/apache/camel/component/twilio/twilio.json b/components/camel-twilio/src/generated/resources/org/apache/camel/component/twilio/twilio.json
index 90d6c74..d55ae1c 100644
--- a/components/camel-twilio/src/generated/resources/org/apache/camel/component/twilio/twilio.json
+++ b/components/camel-twilio/src/generated/resources/org/apache/camel/component/twilio/twilio.json
@@ -51,7 +51,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-twilio/src/main/docs/twilio-component.adoc b/components/camel-twilio/src/main/docs/twilio-component.adoc
index 8b962f0..e51e0ef 100644
--- a/components/camel-twilio/src/main/docs/twilio-component.adoc
+++ b/components/camel-twilio/src/main/docs/twilio-component.adoc
@@ -92,7 +92,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-twitter/src/generated/java/org/apache/camel/component/twitter/directmessage/TwitterDirectMessageEndpointConfigurer.java b/components/camel-twitter/src/generated/java/org/apache/camel/component/twitter/directmessage/TwitterDirectMessageEndpointConfigurer.java
index 11f335b..cffbf50 100644
--- a/components/camel-twitter/src/generated/java/org/apache/camel/component/twitter/directmessage/TwitterDirectMessageEndpointConfigurer.java
+++ b/components/camel-twitter/src/generated/java/org/apache/camel/component/twitter/directmessage/TwitterDirectMessageEndpointConfigurer.java
@@ -77,7 +77,7 @@ public class TwitterDirectMessageEndpointConfigurer extends PropertyConfigurerSu
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -136,7 +136,7 @@ public class TwitterDirectMessageEndpointConfigurer extends PropertyConfigurerSu
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("sinceId", long.class);
diff --git a/components/camel-twitter/src/generated/java/org/apache/camel/component/twitter/search/TwitterSearchEndpointConfigurer.java b/components/camel-twitter/src/generated/java/org/apache/camel/component/twitter/search/TwitterSearchEndpointConfigurer.java
index 3ce81cd..4167342 100644
--- a/components/camel-twitter/src/generated/java/org/apache/camel/component/twitter/search/TwitterSearchEndpointConfigurer.java
+++ b/components/camel-twitter/src/generated/java/org/apache/camel/component/twitter/search/TwitterSearchEndpointConfigurer.java
@@ -77,7 +77,7 @@ public class TwitterSearchEndpointConfigurer extends PropertyConfigurerSupport i
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -136,7 +136,7 @@ public class TwitterSearchEndpointConfigurer extends PropertyConfigurerSupport i
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("sinceId", long.class);
diff --git a/components/camel-twitter/src/generated/java/org/apache/camel/component/twitter/timeline/TwitterTimelineEndpointConfigurer.java b/components/camel-twitter/src/generated/java/org/apache/camel/component/twitter/timeline/TwitterTimelineEndpointConfigurer.java
index 79eb736..48ebd01 100644
--- a/components/camel-twitter/src/generated/java/org/apache/camel/component/twitter/timeline/TwitterTimelineEndpointConfigurer.java
+++ b/components/camel-twitter/src/generated/java/org/apache/camel/component/twitter/timeline/TwitterTimelineEndpointConfigurer.java
@@ -77,7 +77,7 @@ public class TwitterTimelineEndpointConfigurer extends PropertyConfigurerSupport
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -137,7 +137,7 @@ public class TwitterTimelineEndpointConfigurer extends PropertyConfigurerSupport
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("sinceId", long.class);
diff --git a/components/camel-twitter/src/generated/resources/org/apache/camel/component/twitter/directmessage/twitter-directmessage.json b/components/camel-twitter/src/generated/resources/org/apache/camel/component/twitter/directmessage/twitter-directmessage.json
index 2d48593..481fe03 100644
--- a/components/camel-twitter/src/generated/resources/org/apache/camel/component/twitter/directmessage/twitter-directmessage.json
+++ b/components/camel-twitter/src/generated/resources/org/apache/camel/component/twitter/directmessage/twitter-directmessage.json
@@ -70,7 +70,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-twitter/src/generated/resources/org/apache/camel/component/twitter/search/twitter-search.json b/components/camel-twitter/src/generated/resources/org/apache/camel/component/twitter/search/twitter-search.json
index 4f68e51..400e55b 100644
--- a/components/camel-twitter/src/generated/resources/org/apache/camel/component/twitter/search/twitter-search.json
+++ b/components/camel-twitter/src/generated/resources/org/apache/camel/component/twitter/search/twitter-search.json
@@ -70,7 +70,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-twitter/src/generated/resources/org/apache/camel/component/twitter/timeline/twitter-timeline.json b/components/camel-twitter/src/generated/resources/org/apache/camel/component/twitter/timeline/twitter-timeline.json
index c352ecd..7d2989a 100644
--- a/components/camel-twitter/src/generated/resources/org/apache/camel/component/twitter/timeline/twitter-timeline.json
+++ b/components/camel-twitter/src/generated/resources/org/apache/camel/component/twitter/timeline/twitter-timeline.json
@@ -71,7 +71,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-twitter/src/main/docs/twitter-directmessage-component.adoc b/components/camel-twitter/src/main/docs/twitter-directmessage-component.adoc
index 9639dff..baad862 100644
--- a/components/camel-twitter/src/main/docs/twitter-directmessage-component.adoc
+++ b/components/camel-twitter/src/main/docs/twitter-directmessage-component.adoc
@@ -99,7 +99,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-twitter/src/main/docs/twitter-search-component.adoc b/components/camel-twitter/src/main/docs/twitter-search-component.adoc
index 4e9994e..a1045a0 100644
--- a/components/camel-twitter/src/main/docs/twitter-search-component.adoc
+++ b/components/camel-twitter/src/main/docs/twitter-search-component.adoc
@@ -108,7 +108,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-twitter/src/main/docs/twitter-timeline-component.adoc b/components/camel-twitter/src/main/docs/twitter-timeline-component.adoc
index bc92e63..9718d5c 100644
--- a/components/camel-twitter/src/main/docs/twitter-timeline-component.adoc
+++ b/components/camel-twitter/src/main/docs/twitter-timeline-component.adoc
@@ -100,7 +100,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-weather/src/generated/java/org/apache/camel/component/weather/WeatherEndpointConfigurer.java b/components/camel-weather/src/generated/java/org/apache/camel/component/weather/WeatherEndpointConfigurer.java
index 40dd24b..3e49382 100644
--- a/components/camel-weather/src/generated/java/org/apache/camel/component/weather/WeatherEndpointConfigurer.java
+++ b/components/camel-weather/src/generated/java/org/apache/camel/component/weather/WeatherEndpointConfigurer.java
@@ -68,7 +68,7 @@ public class WeatherEndpointConfigurer extends PropertyConfigurerSupport impleme
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -124,7 +124,7 @@ public class WeatherEndpointConfigurer extends PropertyConfigurerSupport impleme
         answer.put("rightLon", java.lang.String.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-weather/src/generated/resources/org/apache/camel/component/weather/weather.json b/components/camel-weather/src/generated/resources/org/apache/camel/component/weather/weather.json
index e3c410e..a888078 100644
--- a/components/camel-weather/src/generated/resources/org/apache/camel/component/weather/weather.json
+++ b/components/camel-weather/src/generated/resources/org/apache/camel/component/weather/weather.json
@@ -62,7 +62,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-weather/src/main/docs/weather-component.adoc b/components/camel-weather/src/main/docs/weather-component.adoc
index ed531be..8372186 100644
--- a/components/camel-weather/src/main/docs/weather-component.adoc
+++ b/components/camel-weather/src/main/docs/weather-component.adoc
@@ -131,7 +131,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-workday/src/test/java/org/apache/camel/WorkdayReportProducerTest.java b/components/camel-workday/src/test/java/org/apache/camel/WorkdayReportProducerTest.java
index d8fb02c..51de79a 100644
--- a/components/camel-workday/src/test/java/org/apache/camel/WorkdayReportProducerTest.java
+++ b/components/camel-workday/src/test/java/org/apache/camel/WorkdayReportProducerTest.java
@@ -83,7 +83,8 @@ public class WorkdayReportProducerTest extends CamelTestSupport {
         WorkdayReportProducer workdayProducer = new WorkdayReportProducer(workdayEndpoint);
         String workdayUri = workdayProducer.prepareUri(workdayEndpoint.getWorkdayConfiguration());
 
-        assertEquals("https://camel.myworkday.com/ccx/service/customreport2/camel/ISU_Camel/Custom_Report_Employees?param=test1&format=json",
+        assertEquals(
+                "https://camel.myworkday.com/ccx/service/customreport2/camel/ISU_Camel/Custom_Report_Employees?param=test1&format=json",
                 workdayUri);
     }
 }
diff --git a/components/camel-yammer/src/generated/java/org/apache/camel/component/yammer/YammerEndpointConfigurer.java b/components/camel-yammer/src/generated/java/org/apache/camel/component/yammer/YammerEndpointConfigurer.java
index 52f23db..9a2f69b 100644
--- a/components/camel-yammer/src/generated/java/org/apache/camel/component/yammer/YammerEndpointConfigurer.java
+++ b/components/camel-yammer/src/generated/java/org/apache/camel/component/yammer/YammerEndpointConfigurer.java
@@ -59,7 +59,7 @@ public class YammerEndpointConfigurer extends PropertyConfigurerSupport implemen
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -105,7 +105,7 @@ public class YammerEndpointConfigurer extends PropertyConfigurerSupport implemen
         answer.put("requestor", org.apache.camel.component.yammer.ApiRequestor.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("startScheduler", boolean.class);
diff --git a/components/camel-yammer/src/generated/resources/org/apache/camel/component/yammer/yammer.json b/components/camel-yammer/src/generated/resources/org/apache/camel/component/yammer/yammer.json
index 0970092..9e96c0f 100644
--- a/components/camel-yammer/src/generated/resources/org/apache/camel/component/yammer/yammer.json
+++ b/components/camel-yammer/src/generated/resources/org/apache/camel/component/yammer/yammer.json
@@ -63,7 +63,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-yammer/src/main/docs/yammer-component.adoc b/components/camel-yammer/src/main/docs/yammer-component.adoc
index a5160ce..84447a6 100644
--- a/components/camel-yammer/src/main/docs/yammer-component.adoc
+++ b/components/camel-yammer/src/main/docs/yammer-component.adoc
@@ -130,7 +130,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/components/camel-zendesk/src/generated/java/org/apache/camel/component/zendesk/ZendeskEndpointConfigurationConfigurer.java b/components/camel-zendesk/src/generated/java/org/apache/camel/component/zendesk/ZendeskEndpointConfigurationConfigurer.java
index 34a2843..4d991ad 100644
--- a/components/camel-zendesk/src/generated/java/org/apache/camel/component/zendesk/ZendeskEndpointConfigurationConfigurer.java
+++ b/components/camel-zendesk/src/generated/java/org/apache/camel/component/zendesk/ZendeskEndpointConfigurationConfigurer.java
@@ -548,7 +548,7 @@ public class ZendeskEndpointConfigurationConfigurer extends org.apache.camel.sup
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "attachments":
         case "Attachments": return org.zendesk.client.v2.model.Attachment.class;
diff --git a/components/camel-zendesk/src/generated/java/org/apache/camel/component/zendesk/ZendeskEndpointConfigurer.java b/components/camel-zendesk/src/generated/java/org/apache/camel/component/zendesk/ZendeskEndpointConfigurer.java
index 31c3e11..245f3d0 100644
--- a/components/camel-zendesk/src/generated/java/org/apache/camel/component/zendesk/ZendeskEndpointConfigurer.java
+++ b/components/camel-zendesk/src/generated/java/org/apache/camel/component/zendesk/ZendeskEndpointConfigurer.java
@@ -52,7 +52,7 @@ public class ZendeskEndpointConfigurer extends PropertyConfigurerSupport impleme
         case "runLoggingLevel": target.setRunLoggingLevel(property(camelContext, org.apache.camel.LoggingLevel.class, value)); return true;
         case "scheduledexecutorservice":
         case "scheduledExecutorService": target.setScheduledExecutorService(property(camelContext, java.util.concurrent.ScheduledExecutorService.class, value)); return true;
-        case "scheduler": target.setScheduler(property(camelContext, java.lang.String.class, value)); return true;
+        case "scheduler": target.setScheduler(property(camelContext, java.lang.Object.class, value)); return true;
         case "schedulerproperties":
         case "schedulerProperties": target.setSchedulerProperties(property(camelContext, java.util.Map.class, value)); return true;
         case "sendemptymessagewhenidle":
@@ -93,7 +93,7 @@ public class ZendeskEndpointConfigurer extends PropertyConfigurerSupport impleme
         answer.put("repeatCount", long.class);
         answer.put("runLoggingLevel", org.apache.camel.LoggingLevel.class);
         answer.put("scheduledExecutorService", java.util.concurrent.ScheduledExecutorService.class);
-        answer.put("scheduler", java.lang.String.class);
+        answer.put("scheduler", java.lang.Object.class);
         answer.put("schedulerProperties", java.util.Map.class);
         answer.put("sendEmptyMessageWhenIdle", boolean.class);
         answer.put("serverUrl", java.lang.String.class);
diff --git a/components/camel-zendesk/src/generated/resources/org/apache/camel/component/zendesk/zendesk.json b/components/camel-zendesk/src/generated/resources/org/apache/camel/component/zendesk/zendesk.json
index cd1de1c..50d1fa0 100644
--- a/components/camel-zendesk/src/generated/resources/org/apache/camel/component/zendesk/zendesk.json
+++ b/components/camel-zendesk/src/generated/resources/org/apache/camel/component/zendesk/zendesk.json
@@ -48,7 +48,7 @@
     "repeatCount": { "kind": "parameter", "displayName": "Repeat Count", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "secret": false, "defaultValue": "0", "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever." },
     "runLoggingLevel": { "kind": "parameter", "displayName": "Run Logging Level", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "secret": false, "defaultValue": "TRACE", "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that." },
     "scheduledExecutorService": { "kind": "parameter", "displayName": "Scheduled Executor Service", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.ScheduledExecutorService", "deprecated": false, "secret": false, "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool." },
-    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "string", "javaType": "java.lang.String", "enum": [ "none", "spring", "quartz" ], "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component" },
+    "scheduler": { "kind": "parameter", "displayName": "Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "defaultValue": "none", "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler" },
     "schedulerProperties": { "kind": "parameter", "displayName": "Scheduler Properties", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, java.lang.Object>", "prefix": "scheduler.", "multiValue": true, "deprecated": false, "secret": false, "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler." },
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
diff --git a/components/camel-zendesk/src/main/docs/zendesk-component.adoc b/components/camel-zendesk/src/main/docs/zendesk-component.adoc
index b77958e..3895d95 100644
--- a/components/camel-zendesk/src/main/docs/zendesk-component.adoc
+++ b/components/camel-zendesk/src/main/docs/zendesk-component.adoc
@@ -89,7 +89,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/core/camel-api/src/main/java/org/apache/camel/spi/PropertyConfigurerGetter.java b/core/camel-api/src/main/java/org/apache/camel/spi/PropertyConfigurerGetter.java
index e54d0f6..d27eabc 100644
--- a/core/camel-api/src/main/java/org/apache/camel/spi/PropertyConfigurerGetter.java
+++ b/core/camel-api/src/main/java/org/apache/camel/spi/PropertyConfigurerGetter.java
@@ -39,18 +39,17 @@ public interface PropertyConfigurerGetter {
     Map<String, Object> getAllOptions(Object target);
 
     /**
-     * Gets the nested class type an option supports (such as list, map, or arrays)
-     *
-     * For maps, then the nested type returned is the type of the value in the map (not the map key type).
+     * This method can be used to retrieve the class type for an option if the option is a collection kind (list, map,
+     * or array). For maps, then the nested type returned is the type of the value in the map (not the map key type).
      *
      * @param  target     the target instance such as {@link org.apache.camel.Endpoint} or
      *                    {@link org.apache.camel.Component}.
      * @param  name       the property name
      * @param  ignoreCase whether to ignore case for matching the property name
-     * @return            the nested class type, or <tt>null</tt> if the option does not has nested types or not
-     *                    possible to resolve.
+     * @return            the class type, or <tt>null</tt> if the option is not a collection kind or not possible to
+     *                    determine
      */
-    default Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    default Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         return null;
     }
 
diff --git a/core/camel-core-engine/src/generated/java/org/apache/camel/impl/ExtendedCamelContextConfigurer.java b/core/camel-core-engine/src/generated/java/org/apache/camel/impl/ExtendedCamelContextConfigurer.java
index 5a9386a..74b77e7 100644
--- a/core/camel-core-engine/src/generated/java/org/apache/camel/impl/ExtendedCamelContextConfigurer.java
+++ b/core/camel-core-engine/src/generated/java/org/apache/camel/impl/ExtendedCamelContextConfigurer.java
@@ -373,7 +373,7 @@ public class ExtendedCamelContextConfigurer extends org.apache.camel.support.com
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "globaloptions":
         case "GlobalOptions": return java.lang.String.class;
diff --git a/core/camel-core-engine/src/generated/java/org/apache/camel/impl/RestConfigurationConfigurer.java b/core/camel-core-engine/src/generated/java/org/apache/camel/impl/RestConfigurationConfigurer.java
index 6b5ce20..dca7e89 100644
--- a/core/camel-core-engine/src/generated/java/org/apache/camel/impl/RestConfigurationConfigurer.java
+++ b/core/camel-core-engine/src/generated/java/org/apache/camel/impl/RestConfigurationConfigurer.java
@@ -178,7 +178,7 @@ public class RestConfigurationConfigurer extends org.apache.camel.support.compon
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "apiproperties":
         case "ApiProperties": return java.lang.Object.class;
diff --git a/core/camel-core-engine/src/main/docs/modules/eips/examples/components/camel-spring/src/test/java/org/apache/camel/spring/SpringConsumerTemplateTest.java b/core/camel-core-engine/src/main/docs/modules/eips/examples/components/camel-spring/src/test/java/org/apache/camel/spring/SpringConsumerTemplateTest.java
index 28a6444..f3eafa0 100644
--- a/core/camel-core-engine/src/main/docs/modules/eips/examples/components/camel-spring/src/test/java/org/apache/camel/spring/SpringConsumerTemplateTest.java
+++ b/core/camel-core-engine/src/main/docs/modules/eips/examples/components/camel-spring/src/test/java/org/apache/camel/spring/SpringConsumerTemplateTest.java
@@ -52,7 +52,7 @@ public class SpringConsumerTemplateTest extends SpringRunWithTestSupport {
 
         // we consume the body from seda:start
         String body = consumer.receiveBody("seda:start", String.class);
-        assertEquals(body, "Hello World");
+        assertEquals("Hello World", body);
 
         // and then we send the body again to seda:foo so it will be routed to the mock
         // endpoint so our unit test can complete
diff --git a/core/camel-core/src/test/java/org/apache/camel/component/file/FileProducerChmodOptionTest.java b/core/camel-core/src/test/java/org/apache/camel/component/file/FileProducerChmodOptionTest.java
index c900863..fa9db0a 100644
--- a/core/camel-core/src/test/java/org/apache/camel/component/file/FileProducerChmodOptionTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/component/file/FileProducerChmodOptionTest.java
@@ -34,8 +34,7 @@ import org.apache.camel.component.mock.MockEndpoint;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.fail;
+import static org.junit.jupiter.api.Assertions.*;
 
 public class FileProducerChmodOptionTest extends ContextTestSupport {
     public static final String TEST_DIRECTORY = "target/data/fileProducerChmodOptionTest/";
@@ -108,7 +107,7 @@ public class FileProducerChmodOptionTest extends ContextTestSupport {
             PropertyBindingException pbe = assertIsInstanceOf(PropertyBindingException.class, e.getCause().getCause());
             assertEquals("chmod", pbe.getPropertyName());
             IllegalArgumentException iae = assertIsInstanceOf(IllegalArgumentException.class, pbe.getCause());
-            assertEquals("chmod option [abc] is not valid", iae.getMessage());
+            assertTrue(iae.getMessage().contains("chmod option [abc] is not valid"));
         }
     }
 
diff --git a/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportArrayTest.java b/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportArrayTest.java
index dc61a1b..15fcf4c 100644
--- a/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportArrayTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportArrayTest.java
@@ -115,8 +115,8 @@ public class PropertyBindingSupportArrayTest extends ContextTestSupport {
         prop.put("bar.age", "33");
         prop.put("bar.{{committer}}", "true");
         prop.put("bar.gold-customer", "true");
-        prop.put("bar.works[0]", "#bean:company1");
         prop.put("bar.works[0].id", "666");
+        prop.put("bar.works[0]", "#bean:company1");
         prop.put("bar.works[1]", "#bean:company2");
         prop.put("bar.works[1].name", "I changed this");
 
@@ -184,7 +184,7 @@ public class PropertyBindingSupportArrayTest extends ContextTestSupport {
             PropertyBindingSupport.build().bind(context, foo, prop);
             fail("Should have thrown exception");
         } catch (PropertyBindingException e) {
-            assertEquals("bar.gold-customer[]", e.getPropertyName());
+            assertEquals("gold-customer[]", e.getPropertyName());
             IllegalArgumentException iae = assertIsInstanceOf(IllegalArgumentException.class, e.getCause());
             assertTrue(iae.getMessage().startsWith(
                     "Cannot set property: gold-customer[] as either a Map/List/array because target bean is not a Map, List or array type"));
diff --git a/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportConfigurerTest.java b/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportConfigurerTest.java
index 5389e85..f6f44b4 100644
--- a/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportConfigurerTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportConfigurerTest.java
@@ -23,8 +23,12 @@ import java.util.Properties;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.ExtendedCamelContext;
+import org.apache.camel.LoggingLevel;
 import org.apache.camel.PropertyBindingException;
+import org.apache.camel.spi.BeanIntrospection;
 import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.spi.PropertyConfigurerGetter;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.*;
@@ -55,6 +59,38 @@ public class PropertyBindingSupportConfigurerTest extends ContextTestSupport {
 
     @Test
     public void testProperties() throws Exception {
+        BeanIntrospection bi = context.adapt(ExtendedCamelContext.class).getBeanIntrospection();
+        bi.setExtendedStatistics(true);
+        bi.setLoggingLevel(LoggingLevel.WARN);
+
+        Bar bar = new Bar();
+
+        Map<String, Object> prop = new HashMap<>();
+        prop.put("age", "33");
+        prop.put("{{committer}}", "true");
+        prop.put("gold-customer", "true");
+
+        myConfigurer.reset();
+        PropertyBindingSupport.build().withConfigurer(myConfigurer).withIgnoreCase(true).bind(context, bar, prop);
+        assertEquals(3, myConfigurer.getCounter());
+
+        assertEquals(33, bar.getAge());
+        assertTrue(bar.isRider());
+        assertTrue(bar.isGoldCustomer());
+        assertNull(bar.getWork());
+
+        assertTrue(prop.isEmpty(), "Should bind all properties");
+
+        // should not use reflection
+        assertEquals(0, bi.getInvokedCounter());
+    }
+
+    @Test
+    public void testPropertiesNested() throws Exception {
+        BeanIntrospection bi = context.adapt(ExtendedCamelContext.class).getBeanIntrospection();
+        bi.setExtendedStatistics(true);
+        bi.setLoggingLevel(LoggingLevel.WARN);
+
         Bar bar = new Bar();
 
         Map<String, Object> prop = new HashMap<>();
@@ -66,7 +102,7 @@ public class PropertyBindingSupportConfigurerTest extends ContextTestSupport {
 
         myConfigurer.reset();
         PropertyBindingSupport.build().withConfigurer(myConfigurer).withIgnoreCase(true).bind(context, bar, prop);
-        assertEquals(3, myConfigurer.getCounter());
+        assertEquals(6, myConfigurer.getCounter());
 
         assertEquals(33, bar.getAge());
         assertTrue(bar.isRider());
@@ -75,10 +111,37 @@ public class PropertyBindingSupportConfigurerTest extends ContextTestSupport {
         assertEquals("Acme", bar.getWork().getName());
 
         assertTrue(prop.isEmpty(), "Should bind all properties");
+
+        // will use reflection for configuring Work as we do not have a configurer for it
+        assertTrue(bi.getInvokedCounter() > 0);
     }
 
     @Test
-    public void testPropertiesOptionallKey() throws Exception {
+    public void testAutowired() throws Exception {
+        Bar bar = new Bar();
+
+        Map<String, Object> prop = new HashMap<>();
+        prop.put("age", "33");
+        prop.put("{{committer}}", "true");
+        prop.put("gold-customer", "true");
+        prop.put("work", "#autowired");
+
+        myConfigurer.reset();
+        PropertyBindingSupport.build().withConfigurer(myConfigurer).withIgnoreCase(true).bind(context, bar, prop);
+        // there should be 4 as autowried is also used
+        assertEquals(3 + 1, myConfigurer.getCounter());
+
+        assertEquals(33, bar.getAge());
+        assertTrue(bar.isRider());
+        assertTrue(bar.isGoldCustomer());
+        assertEquals(456, bar.getWork().getId());
+        assertEquals("Acme", bar.getWork().getName());
+
+        assertTrue(prop.isEmpty(), "Should bind all properties");
+    }
+
+    @Test
+    public void testPropertiesOptionalKey() throws Exception {
         Bar bar = new Bar();
 
         Map<String, Object> prop = new HashMap<>();
@@ -93,7 +156,7 @@ public class PropertyBindingSupportConfigurerTest extends ContextTestSupport {
 
         myConfigurer.reset();
         PropertyBindingSupport.build().withConfigurer(myConfigurer).withIgnoreCase(true).bind(context, bar, prop);
-        assertEquals(3, myConfigurer.getCounter());
+        assertEquals(7, myConfigurer.getCounter());
 
         assertEquals(33, bar.getAge());
         assertTrue(bar.isRider());
@@ -125,7 +188,7 @@ public class PropertyBindingSupportConfigurerTest extends ContextTestSupport {
         myConfigurer.reset();
         PropertyBindingSupport.build().withConfigurer(myConfigurer).withIgnoreCase(true).withMandatory(true).bind(context, bar,
                 prop);
-        assertEquals(3, myConfigurer.getCounter());
+        assertEquals(7, myConfigurer.getCounter());
 
         assertEquals(33, bar.getAge());
         assertTrue(bar.isRider());
@@ -214,7 +277,7 @@ public class PropertyBindingSupportConfigurerTest extends ContextTestSupport {
         }
     }
 
-    private static class MyConfigurer implements GeneratedPropertyConfigurer {
+    private static class MyConfigurer implements GeneratedPropertyConfigurer, PropertyConfigurerGetter {
 
         private int counter;
 
@@ -252,6 +315,41 @@ public class PropertyBindingSupportConfigurerTest extends ContextTestSupport {
         public void reset() {
             counter = 0;
         }
+
+        @Override
+        public Map<String, Object> getAllOptions(Object target) {
+            Map<String, Object> map = new HashMap<>();
+            if (target instanceof Bar) {
+                map.put("age", int.class);
+                map.put("rider", boolean.class);
+                map.put("work", Company.class);
+                map.put("goldCustomer", boolean.class);
+            }
+            return map;
+        }
+
+        @Override
+        public Object getOptionValue(Object target, String name, boolean ignoreCase) {
+            name = name.toLowerCase(Locale.ENGLISH);
+            name = name.replaceAll("-", "");
+            if (target instanceof Bar) {
+                Bar bar = (Bar) target;
+                if ("age".equals(name)) {
+                    counter++;
+                    return bar.getAge();
+                } else if ("rider".equals(name)) {
+                    counter++;
+                    return bar.isRider();
+                } else if ("work".equals(name)) {
+                    counter++;
+                    return bar.getWork();
+                } else if ("goldcustomer".equals(name)) {
+                    counter++;
+                    return bar.isGoldCustomer();
+                }
+            }
+            return null;
+        }
     }
 
 }
diff --git a/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportListTest.java b/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportListTest.java
index c43f579..02ca622 100644
--- a/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportListTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportListTest.java
@@ -184,7 +184,7 @@ public class PropertyBindingSupportListTest extends ContextTestSupport {
             PropertyBindingSupport.build().bind(context, foo, prop);
             fail("Should have thrown exception");
         } catch (PropertyBindingException e) {
-            assertEquals("bar.gold-customer[]", e.getPropertyName());
+            assertEquals("gold-customer[]", e.getPropertyName());
             IllegalArgumentException iae = assertIsInstanceOf(IllegalArgumentException.class, e.getCause());
             assertTrue(iae.getMessage().startsWith(
                     "Cannot set property: gold-customer[] as either a Map/List/array because target bean is not a Map, List or array type"));
diff --git a/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportMapTest.java b/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportMapTest.java
index 95d6e36..628f178 100644
--- a/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportMapTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportMapTest.java
@@ -137,7 +137,7 @@ public class PropertyBindingSupportMapTest extends ContextTestSupport {
             PropertyBindingSupport.build().bind(context, foo, prop);
             fail("Should have thrown exception");
         } catch (PropertyBindingException e) {
-            assertEquals("bar.gold-customer[foo]", e.getPropertyName());
+            assertEquals("gold-customer[foo]", e.getPropertyName());
             IllegalArgumentException iae = assertIsInstanceOf(IllegalArgumentException.class, e.getCause());
             assertTrue(iae.getMessage().startsWith(
                     "Cannot set property: gold-customer[foo] as either a Map/List/array because target bean is not a Map, List or array type"));
diff --git a/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportTest.java b/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportTest.java
index c651f0b..371eccf 100644
--- a/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/support/PropertyBindingSupportTest.java
@@ -337,8 +337,8 @@ public class PropertyBindingSupportTest extends ContextTestSupport {
             PropertyBindingSupport.build().withMandatory(true).bind(context, foo, "bar.myAge", "33");
             fail("Should have thrown exception");
         } catch (PropertyBindingException e) {
-            assertEquals("bar.myAge", e.getPropertyName());
-            assertSame(foo, e.getTarget());
+            assertEquals("myAge", e.getPropertyName());
+            assertSame(foo.getBar(), e.getTarget());
         }
     }
 
@@ -540,7 +540,8 @@ public class PropertyBindingSupportTest extends ContextTestSupport {
             PropertyBindingSupport.build().withIgnoreCase(true).withMandatory(true).bind(context, foo, prop);
             fail("Should fail");
         } catch (PropertyBindingException e) {
-            assertEquals("bar.unknown", e.getPropertyName());
+            //            assertEquals("bar.unknown", e.getPropertyName());
+            assertEquals("unknown", e.getPropertyName());
         }
     }
 
diff --git a/core/camel-core/src/test/java/org/apache/camel/util/StringHelperTest.java b/core/camel-core/src/test/java/org/apache/camel/util/StringHelperTest.java
index 9dc68b7..4bc0755 100644
--- a/core/camel-core/src/test/java/org/apache/camel/util/StringHelperTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/util/StringHelperTest.java
@@ -333,4 +333,19 @@ public class StringHelperTest {
         assertEquals("helloGreatWorld", StringHelper.dashToCamelCase("hello-great-world"));
     }
 
+    public void testStartsWithIgnoreCase() {
+        assertTrue(StringHelper.startsWithIgnoreCase(null, null));
+        assertFalse(StringHelper.startsWithIgnoreCase("foo", null));
+        assertFalse(StringHelper.startsWithIgnoreCase(null, "bar"));
+        assertFalse(StringHelper.startsWithIgnoreCase("HelloWorld", "bar"));
+        assertTrue(StringHelper.startsWithIgnoreCase("HelloWorld", "Hello"));
+        assertTrue(StringHelper.startsWithIgnoreCase("HelloWorld", "hello"));
+        assertFalse(StringHelper.startsWithIgnoreCase("HelloWorld", "Helo"));
+        assertFalse(StringHelper.startsWithIgnoreCase("HelloWorld", "HelloWorld"));
+        assertTrue(StringHelper.startsWithIgnoreCase("HelloWorld", "helloWORLD"));
+        assertTrue(StringHelper.startsWithIgnoreCase("HelloWorld", "HELLO"));
+        assertTrue(StringHelper.startsWithIgnoreCase("helloworld", "helloWORLD"));
+        assertTrue(StringHelper.startsWithIgnoreCase("HELLOWORLD", "HELLO"));
+    }
+
 }
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AS2EndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AS2EndpointBuilderFactory.java
index 338fe71..b8c03bb 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AS2EndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AS2EndpointBuilderFactory.java
@@ -860,9 +860,22 @@ public interface AS2EndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default AS2EndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AWS2S3EndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AWS2S3EndpointBuilderFactory.java
index 3116185..11bb8ad 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AWS2S3EndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AWS2S3EndpointBuilderFactory.java
@@ -903,9 +903,22 @@ public interface AWS2S3EndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default AWS2S3EndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ApnsEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ApnsEndpointBuilderFactory.java
index a342474..633f28d 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ApnsEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ApnsEndpointBuilderFactory.java
@@ -373,9 +373,22 @@ public interface ApnsEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default ApnsEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AtomEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AtomEndpointBuilderFactory.java
index 2ce4006..caab139 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AtomEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AtomEndpointBuilderFactory.java
@@ -531,9 +531,22 @@ public interface AtomEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default AtomEndpointBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/BeanstalkEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/BeanstalkEndpointBuilderFactory.java
index 6e34fbf..dda6cf6 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/BeanstalkEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/BeanstalkEndpointBuilderFactory.java
@@ -553,9 +553,22 @@ public interface BeanstalkEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default BeanstalkEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/BoxEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/BoxEndpointBuilderFactory.java
index 1be3872..36f0d05 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/BoxEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/BoxEndpointBuilderFactory.java
@@ -421,9 +421,22 @@ public interface BoxEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default BoxEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/BraintreeEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/BraintreeEndpointBuilderFactory.java
index 8e1f4bd..2b3ec39 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/BraintreeEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/BraintreeEndpointBuilderFactory.java
@@ -485,9 +485,22 @@ public interface BraintreeEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default BraintreeEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/CassandraEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/CassandraEndpointBuilderFactory.java
index 0f248a3..692e09d 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/CassandraEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/CassandraEndpointBuilderFactory.java
@@ -538,9 +538,22 @@ public interface CassandraEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default CassandraEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/CouchbaseEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/CouchbaseEndpointBuilderFactory.java
index 58dda9f..909f259 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/CouchbaseEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/CouchbaseEndpointBuilderFactory.java
@@ -540,9 +540,22 @@ public interface CouchbaseEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default CouchbaseEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Ddb2StreamEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Ddb2StreamEndpointBuilderFactory.java
index 451afaf..80f56e4 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Ddb2StreamEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Ddb2StreamEndpointBuilderFactory.java
@@ -602,9 +602,22 @@ public interface Ddb2StreamEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default Ddb2StreamEndpointBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/DdbStreamEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/DdbStreamEndpointBuilderFactory.java
index 0671c40..0d1d016 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/DdbStreamEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/DdbStreamEndpointBuilderFactory.java
@@ -572,9 +572,22 @@ public interface DdbStreamEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default DdbStreamEndpointBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ElsqlEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ElsqlEndpointBuilderFactory.java
index 23c5887..48e3f7d 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ElsqlEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ElsqlEndpointBuilderFactory.java
@@ -756,9 +756,22 @@ public interface ElsqlEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default ElsqlEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/EtcdStatsEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/EtcdStatsEndpointBuilderFactory.java
index bc1e889..c1d53df 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/EtcdStatsEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/EtcdStatsEndpointBuilderFactory.java
@@ -458,9 +458,22 @@ public interface EtcdStatsEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default EtcdStatsEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FhirEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FhirEndpointBuilderFactory.java
index 21e8fae..ce88272 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FhirEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FhirEndpointBuilderFactory.java
@@ -538,9 +538,22 @@ public interface FhirEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default FhirEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FileEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FileEndpointBuilderFactory.java
index 071025e..ff9bfbc 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FileEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FileEndpointBuilderFactory.java
@@ -1595,9 +1595,22 @@ public interface FileEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default FileEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FlatpackEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FlatpackEndpointBuilderFactory.java
index 2535d5f..cc29fb1 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FlatpackEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FlatpackEndpointBuilderFactory.java
@@ -518,9 +518,22 @@ public interface FlatpackEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default FlatpackEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FtpEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FtpEndpointBuilderFactory.java
index a36a0b0..04fc0d0 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FtpEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FtpEndpointBuilderFactory.java
@@ -1724,9 +1724,22 @@ public interface FtpEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default FtpEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FtpsEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FtpsEndpointBuilderFactory.java
index 1122545..9f24ae1 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FtpsEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/FtpsEndpointBuilderFactory.java
@@ -1726,9 +1726,22 @@ public interface FtpsEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default FtpsEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleCalendarEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleCalendarEndpointBuilderFactory.java
index b2f832d..788aac2 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleCalendarEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleCalendarEndpointBuilderFactory.java
@@ -452,9 +452,22 @@ public interface GoogleCalendarEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default GoogleCalendarEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleCalendarStreamEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleCalendarStreamEndpointBuilderFactory.java
index c39dedc..3973095 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleCalendarStreamEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleCalendarStreamEndpointBuilderFactory.java
@@ -557,9 +557,22 @@ public interface GoogleCalendarStreamEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default GoogleCalendarStreamEndpointBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleDriveEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleDriveEndpointBuilderFactory.java
index 0d496d0..75ebd70 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleDriveEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleDriveEndpointBuilderFactory.java
@@ -456,9 +456,22 @@ public interface GoogleDriveEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default GoogleDriveEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleMailEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleMailEndpointBuilderFactory.java
index 6ecd503..46803e4 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleMailEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleMailEndpointBuilderFactory.java
@@ -396,9 +396,22 @@ public interface GoogleMailEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default GoogleMailEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleMailStreamEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleMailStreamEndpointBuilderFactory.java
index 44484f5..74d2565 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleMailStreamEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleMailStreamEndpointBuilderFactory.java
@@ -491,9 +491,22 @@ public interface GoogleMailStreamEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default GoogleMailStreamEndpointBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleSheetsEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleSheetsEndpointBuilderFactory.java
index cb90da2..4adcebf 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleSheetsEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleSheetsEndpointBuilderFactory.java
@@ -399,9 +399,22 @@ public interface GoogleSheetsEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default GoogleSheetsEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleSheetsStreamEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleSheetsStreamEndpointBuilderFactory.java
index fd5df85..70a1770 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleSheetsStreamEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/GoogleSheetsStreamEndpointBuilderFactory.java
@@ -591,9 +591,22 @@ public interface GoogleSheetsStreamEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default GoogleSheetsStreamEndpointBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/HdfsEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/HdfsEndpointBuilderFactory.java
index 10af214..11db31d 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/HdfsEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/HdfsEndpointBuilderFactory.java
@@ -609,9 +609,22 @@ public interface HdfsEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default HdfsEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/HipchatEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/HipchatEndpointBuilderFactory.java
index ebff5e1..ca68b74 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/HipchatEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/HipchatEndpointBuilderFactory.java
@@ -412,9 +412,22 @@ public interface HipchatEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default HipchatEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/IronMQEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/IronMQEndpointBuilderFactory.java
index 4f4b1e0..01881c3 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/IronMQEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/IronMQEndpointBuilderFactory.java
@@ -583,9 +583,22 @@ public interface IronMQEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default IronMQEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JooqEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JooqEndpointBuilderFactory.java
index 3f9033a..8a60c52 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JooqEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JooqEndpointBuilderFactory.java
@@ -410,9 +410,22 @@ public interface JooqEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default JooqEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JpaEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JpaEndpointBuilderFactory.java
index 247e9fe..6bc3e4c 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JpaEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JpaEndpointBuilderFactory.java
@@ -724,9 +724,22 @@ public interface JpaEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default JpaEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Jt400EndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Jt400EndpointBuilderFactory.java
index 8ed158d..2c48601 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Jt400EndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Jt400EndpointBuilderFactory.java
@@ -554,9 +554,22 @@ public interface Jt400EndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default Jt400EndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Kinesis2EndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Kinesis2EndpointBuilderFactory.java
index 911971b..5a662e5 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Kinesis2EndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Kinesis2EndpointBuilderFactory.java
@@ -638,9 +638,22 @@ public interface Kinesis2EndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default Kinesis2EndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/KinesisEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/KinesisEndpointBuilderFactory.java
index 85e3a20..443eae6 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/KinesisEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/KinesisEndpointBuilderFactory.java
@@ -608,9 +608,22 @@ public interface KinesisEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default KinesisEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MailEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MailEndpointBuilderFactory.java
index 9dec101..ba08d55 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MailEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MailEndpointBuilderFactory.java
@@ -768,9 +768,22 @@ public interface MailEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default MailEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MinioEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MinioEndpointBuilderFactory.java
index 95e3357..b3084ac 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MinioEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MinioEndpointBuilderFactory.java
@@ -1148,9 +1148,22 @@ public interface MinioEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default MinioEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MyBatisEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MyBatisEndpointBuilderFactory.java
index 10129a8..8dc9118 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MyBatisEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MyBatisEndpointBuilderFactory.java
@@ -487,9 +487,22 @@ public interface MyBatisEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default MyBatisEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/OAIPMHEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/OAIPMHEndpointBuilderFactory.java
index 175fa00..da494af 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/OAIPMHEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/OAIPMHEndpointBuilderFactory.java
@@ -435,9 +435,22 @@ public interface OAIPMHEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default OAIPMHEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Olingo2EndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Olingo2EndpointBuilderFactory.java
index 26fa6f5..3dc8af7 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Olingo2EndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Olingo2EndpointBuilderFactory.java
@@ -624,9 +624,22 @@ public interface Olingo2EndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default Olingo2EndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Olingo4EndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Olingo4EndpointBuilderFactory.java
index 459d495..f81d65a 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Olingo4EndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Olingo4EndpointBuilderFactory.java
@@ -558,9 +558,22 @@ public interface Olingo4EndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default Olingo4EndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/PgReplicationSlotEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/PgReplicationSlotEndpointBuilderFactory.java
index 97fb29e..1a7e285 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/PgReplicationSlotEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/PgReplicationSlotEndpointBuilderFactory.java
@@ -386,9 +386,22 @@ public interface PgReplicationSlotEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default PgReplicationSlotEndpointBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/RobotFrameworkEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/RobotFrameworkEndpointBuilderFactory.java
index fe304ef..9eb1bb1 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/RobotFrameworkEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/RobotFrameworkEndpointBuilderFactory.java
@@ -1196,9 +1196,22 @@ public interface RobotFrameworkEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default RobotFrameworkEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/RssEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/RssEndpointBuilderFactory.java
index db91dea..bda4fa4 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/RssEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/RssEndpointBuilderFactory.java
@@ -529,9 +529,22 @@ public interface RssEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default RssEndpointBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/S3EndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/S3EndpointBuilderFactory.java
index 207fd6d..214f671 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/S3EndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/S3EndpointBuilderFactory.java
@@ -770,9 +770,22 @@ public interface S3EndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default S3EndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SchedulerEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SchedulerEndpointBuilderFactory.java
index f534d22..ad7f135 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SchedulerEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SchedulerEndpointBuilderFactory.java
@@ -384,9 +384,22 @@ public interface SchedulerEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default SchedulerEndpointBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SftpEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SftpEndpointBuilderFactory.java
index 6e23433..0537bf9 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SftpEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SftpEndpointBuilderFactory.java
@@ -1770,9 +1770,22 @@ public interface SftpEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default SftpEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SlackEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SlackEndpointBuilderFactory.java
index ed729ba..be90854 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SlackEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SlackEndpointBuilderFactory.java
@@ -396,9 +396,22 @@ public interface SlackEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default SlackEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SnmpEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SnmpEndpointBuilderFactory.java
index 887e19d..759fc4a 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SnmpEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SnmpEndpointBuilderFactory.java
@@ -565,9 +565,22 @@ public interface SnmpEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default SnmpEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SplunkEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SplunkEndpointBuilderFactory.java
index 9d6bef2..efed8f8 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SplunkEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SplunkEndpointBuilderFactory.java
@@ -561,9 +561,22 @@ public interface SplunkEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default SplunkEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SqlEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SqlEndpointBuilderFactory.java
index 1e7b120..1b3e2a8 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SqlEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SqlEndpointBuilderFactory.java
@@ -728,9 +728,22 @@ public interface SqlEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default SqlEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Sqs2EndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Sqs2EndpointBuilderFactory.java
index db2a0b4..4245668 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Sqs2EndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Sqs2EndpointBuilderFactory.java
@@ -1044,9 +1044,22 @@ public interface Sqs2EndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default Sqs2EndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SqsEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SqsEndpointBuilderFactory.java
index 590a1d7..c91d8dd 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SqsEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SqsEndpointBuilderFactory.java
@@ -1015,9 +1015,22 @@ public interface SqsEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default SqsEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SshEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SshEndpointBuilderFactory.java
index 04996d8..d3262bf 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SshEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SshEndpointBuilderFactory.java
@@ -441,9 +441,22 @@ public interface SshEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default SshEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TelegramEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TelegramEndpointBuilderFactory.java
index 0269def..dc43158 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TelegramEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TelegramEndpointBuilderFactory.java
@@ -480,9 +480,22 @@ public interface TelegramEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default TelegramEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwilioEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwilioEndpointBuilderFactory.java
index c9ab736..774273b 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwilioEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwilioEndpointBuilderFactory.java
@@ -372,9 +372,22 @@ public interface TwilioEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default TwilioEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwitterDirectMessageEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwitterDirectMessageEndpointBuilderFactory.java
index 1624f69..9c3bdfc 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwitterDirectMessageEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwitterDirectMessageEndpointBuilderFactory.java
@@ -592,9 +592,23 @@ public interface TwitterDirectMessageEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default TwitterDirectMessageEndpointConsumerBuilder scheduler(
+                Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwitterSearchEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwitterSearchEndpointBuilderFactory.java
index d9c6ec4..61643cb 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwitterSearchEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwitterSearchEndpointBuilderFactory.java
@@ -586,9 +586,22 @@ public interface TwitterSearchEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default TwitterSearchEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwitterTimelineEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwitterTimelineEndpointBuilderFactory.java
index 567b7fc..6076f42 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwitterTimelineEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/TwitterTimelineEndpointBuilderFactory.java
@@ -599,9 +599,23 @@ public interface TwitterTimelineEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default TwitterTimelineEndpointConsumerBuilder scheduler(
+                Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/WeatherEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/WeatherEndpointBuilderFactory.java
index e91f1fd..e47722d 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/WeatherEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/WeatherEndpointBuilderFactory.java
@@ -651,9 +651,22 @@ public interface WeatherEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default WeatherEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/XQueryEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/XQueryEndpointBuilderFactory.java
index 1d77384..32169ba 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/XQueryEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/XQueryEndpointBuilderFactory.java
@@ -505,9 +505,22 @@ public interface XQueryEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default XQueryEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/YammerEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/YammerEndpointBuilderFactory.java
index 118f13c..e4850c5 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/YammerEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/YammerEndpointBuilderFactory.java
@@ -506,9 +506,22 @@ public interface YammerEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default YammerEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ZendeskEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ZendeskEndpointBuilderFactory.java
index 63d67fb..6fed348 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ZendeskEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ZendeskEndpointBuilderFactory.java
@@ -383,9 +383,22 @@ public interface ZendeskEndpointBuilderFactory {
         }
         /**
          * To use a cron scheduler from either camel-spring or camel-quartz
-         * component.
+         * component. Use value spring or quartz for built in scheduler.
          * 
-         * The option is a: <code>java.lang.String</code> type.
+         * The option is a: <code>java.lang.Object</code> type.
+         * 
+         * Default: none
+         * Group: scheduler
+         */
+        default ZendeskEndpointConsumerBuilder scheduler(Object scheduler) {
+            doSetProperty("scheduler", scheduler);
+            return this;
+        }
+        /**
+         * To use a cron scheduler from either camel-spring or camel-quartz
+         * component. Use value spring or quartz for built in scheduler.
+         * 
+         * The option will be converted to a <code>java.lang.Object</code> type.
          * 
          * Default: none
          * Group: scheduler
diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/HealthConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/HealthConfigurationPropertiesConfigurer.java
index 0437f56..ef80c38 100644
--- a/core/camel-main/src/generated/java/org/apache/camel/main/HealthConfigurationPropertiesConfigurer.java
+++ b/core/camel-main/src/generated/java/org/apache/camel/main/HealthConfigurationPropertiesConfigurer.java
@@ -63,7 +63,7 @@ public class HealthConfigurationPropertiesConfigurer extends org.apache.camel.su
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "config":
         case "Config": return org.apache.camel.main.HealthCheckConfigurationProperties.class;
diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java
index c861558..bcf11b5 100644
--- a/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java
+++ b/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java
@@ -453,7 +453,7 @@ public class MainConfigurationPropertiesConfigurer extends org.apache.camel.supp
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "configurations":
         case "Configurations": return java.lang.Object.class;
diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/RestConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/RestConfigurationPropertiesConfigurer.java
index be282d2..43f40a4 100644
--- a/core/camel-main/src/generated/java/org/apache/camel/main/RestConfigurationPropertiesConfigurer.java
+++ b/core/camel-main/src/generated/java/org/apache/camel/main/RestConfigurationPropertiesConfigurer.java
@@ -178,7 +178,7 @@ public class RestConfigurationPropertiesConfigurer extends org.apache.camel.supp
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "apiproperties":
         case "ApiProperties": return java.lang.Object.class;
diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/ThreadPoolConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/ThreadPoolConfigurationPropertiesConfigurer.java
index d7b70c4..95cb707 100644
--- a/core/camel-main/src/generated/java/org/apache/camel/main/ThreadPoolConfigurationPropertiesConfigurer.java
+++ b/core/camel-main/src/generated/java/org/apache/camel/main/ThreadPoolConfigurationPropertiesConfigurer.java
@@ -78,7 +78,7 @@ public class ThreadPoolConfigurationPropertiesConfigurer extends org.apache.came
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "config":
         case "Config": return org.apache.camel.main.ThreadPoolProfileConfigurationProperties.class;
diff --git a/core/camel-main/src/test/java/org/apache/camel/main/MySecondBar.java b/core/camel-main/src/test/java/org/apache/camel/main/MyOtherBar.java
similarity index 84%
copy from core/camel-main/src/test/java/org/apache/camel/main/MySecondBar.java
copy to core/camel-main/src/test/java/org/apache/camel/main/MyOtherBar.java
index 5110b07..e9e6559 100644
--- a/core/camel-main/src/test/java/org/apache/camel/main/MySecondBar.java
+++ b/core/camel-main/src/test/java/org/apache/camel/main/MyOtherBar.java
@@ -18,12 +18,19 @@ package org.apache.camel.main;
 
 import java.util.List;
 
-import org.apache.camel.spi.Configurer;
+public class MyOtherBar {
 
-@Configurer
-public class MySecondBar {
+    private int number;
     private List<String> names;
 
+    public int getNumber() {
+        return number;
+    }
+
+    public void setNumber(int number) {
+        this.number = number;
+    }
+
     public List<String> getNames() {
         return names;
     }
diff --git a/core/camel-main/src/test/java/org/apache/camel/main/MySecondBar.java b/core/camel-main/src/test/java/org/apache/camel/main/MyOtherFoo.java
similarity index 78%
copy from core/camel-main/src/test/java/org/apache/camel/main/MySecondBar.java
copy to core/camel-main/src/test/java/org/apache/camel/main/MyOtherFoo.java
index 5110b07..4001efd 100644
--- a/core/camel-main/src/test/java/org/apache/camel/main/MySecondBar.java
+++ b/core/camel-main/src/test/java/org/apache/camel/main/MyOtherFoo.java
@@ -18,17 +18,15 @@ package org.apache.camel.main;
 
 import java.util.List;
 
-import org.apache.camel.spi.Configurer;
+public class MyOtherFoo {
 
-@Configurer
-public class MySecondBar {
-    private List<String> names;
+    private List<MyOtherBar> bars;
 
-    public List<String> getNames() {
-        return names;
+    public List<MyOtherBar> getBars() {
+        return bars;
     }
 
-    public void setNames(List<String> names) {
-        this.names = names;
+    public void setBars(List<MyOtherBar> bars) {
+        this.bars = bars;
     }
 }
diff --git a/core/camel-main/src/test/java/org/apache/camel/main/MySecondBar.java b/core/camel-main/src/test/java/org/apache/camel/main/MySecondBar.java
index 5110b07..8b5ebdd 100644
--- a/core/camel-main/src/test/java/org/apache/camel/main/MySecondBar.java
+++ b/core/camel-main/src/test/java/org/apache/camel/main/MySecondBar.java
@@ -22,8 +22,18 @@ import org.apache.camel.spi.Configurer;
 
 @Configurer
 public class MySecondBar {
+
+    private int number;
     private List<String> names;
 
+    public int getNumber() {
+        return number;
+    }
+
+    public void setNumber(int number) {
+        this.number = number;
+    }
+
     public List<String> getNames() {
         return names;
     }
diff --git a/core/camel-main/src/test/java/org/apache/camel/main/MySecondBarConfigurer.java b/core/camel-main/src/test/java/org/apache/camel/main/MySecondBarConfigurer.java
index 323fb8e..3cc3c77 100644
--- a/core/camel-main/src/test/java/org/apache/camel/main/MySecondBarConfigurer.java
+++ b/core/camel-main/src/test/java/org/apache/camel/main/MySecondBarConfigurer.java
@@ -21,6 +21,8 @@ public class MySecondBarConfigurer extends org.apache.camel.support.component.Pr
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "names":
         case "Names": target.setNames(property(camelContext, java.util.List.class, value)); return true;
+        case "number":
+        case "Number": target.setNumber(property(camelContext, int.class, value)); return true;
         default: return false;
         }
     }
@@ -29,6 +31,7 @@ public class MySecondBarConfigurer extends org.apache.camel.support.component.Pr
     public Map<String, Object> getAllOptions(Object target) {
         Map<String, Object> answer = new CaseInsensitiveMap();
         answer.put("Names", java.util.List.class);
+        answer.put("Number", int.class);
         return answer;
     }
 
@@ -38,12 +41,14 @@ public class MySecondBarConfigurer extends org.apache.camel.support.component.Pr
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "names":
         case "Names": return target.getNames();
+        case "number":
+        case "Number": return target.getNumber();
         default: return null;
         }
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "names":
         case "Names": return java.lang.String.class;
diff --git a/core/camel-main/src/test/java/org/apache/camel/main/MySecondFooConfigurer.java b/core/camel-main/src/test/java/org/apache/camel/main/MySecondFooConfigurer.java
index b14c7df..6392d11 100644
--- a/core/camel-main/src/test/java/org/apache/camel/main/MySecondFooConfigurer.java
+++ b/core/camel-main/src/test/java/org/apache/camel/main/MySecondFooConfigurer.java
@@ -43,7 +43,7 @@ public class MySecondFooConfigurer extends org.apache.camel.support.component.Pr
     }
 
     @Override
-    public Object getOptionNestedType(Object target, String name, boolean ignoreCase) {
+    public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "bars":
         case "Bars": return org.apache.camel.main.MySecondBar.class;
diff --git a/core/camel-main/src/test/java/org/apache/camel/main/PropertyBindingSupportRootArrayReflectionTest.java b/core/camel-main/src/test/java/org/apache/camel/main/PropertyBindingSupportRootArrayReflectionTest.java
new file mode 100644
index 0000000..9a6bf11
--- /dev/null
+++ b/core/camel-main/src/test/java/org/apache/camel/main/PropertyBindingSupportRootArrayReflectionTest.java
@@ -0,0 +1,150 @@
+/*
+ * 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.main;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.ExtendedCamelContext;
+import org.apache.camel.impl.DefaultCamelContext;
+import org.apache.camel.spi.BeanIntrospection;
+import org.apache.camel.support.PropertyBindingSupport;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+/**
+ * Unit test for PropertyBindingSupport
+ */
+public class PropertyBindingSupportRootArrayReflectionTest {
+
+    @Test
+    public void testRootArray() throws Exception {
+        CamelContext context = new DefaultCamelContext();
+
+        BeanIntrospection bi = context.adapt(ExtendedCamelContext.class).getBeanIntrospection();
+        bi.setExtendedStatistics(true);
+
+        context.start();
+
+        MyOtherFoo target = new MyOtherFoo();
+
+        PropertyBindingSupport.build()
+                .withCamelContext(context)
+                .withTarget(target)
+                .withProperty("bars[0]", "#class:" + MyOtherBar.class.getName())
+                .withProperty("bars[0].names[0]", "a")
+                .withProperty("bars[0].names[1]", "b")
+                .withRemoveParameters(false).bind();
+
+        assertEquals(1, target.getBars().size());
+        assertEquals(2, target.getBars().get(0).getNames().size());
+        assertEquals("a", target.getBars().get(0).getNames().get(0));
+        assertEquals("b", target.getBars().get(0).getNames().get(1));
+
+        // no configurers so should use reflection
+        assertEquals(9, bi.getInvokedCounter());
+
+        context.stop();
+    }
+
+    @Test
+    public void testNestedArray() throws Exception {
+        CamelContext context = new DefaultCamelContext();
+
+        BeanIntrospection bi = context.adapt(ExtendedCamelContext.class).getBeanIntrospection();
+        bi.setExtendedStatistics(true);
+
+        context.start();
+
+        MyRoot target = new MyRoot();
+
+        PropertyBindingSupport.build()
+                .withCamelContext(context)
+                .withTarget(target)
+                .withProperty("name", "Donald")
+                .withProperty("foo.bars[0]", "#class:" + MyOtherBar.class.getName())
+                .withProperty("foo.bars[0].names[0]", "a")
+                .withProperty("foo.bars[0].names[1]", "b")
+                .withRemoveParameters(false).bind();
+
+        assertEquals("Donald", target.getName());
+        assertEquals(1, target.getFoo().getBars().size());
+        assertEquals(2, target.getFoo().getBars().get(0).getNames().size());
+        assertEquals("a", target.getFoo().getBars().get(0).getNames().get(0));
+        assertEquals("b", target.getFoo().getBars().get(0).getNames().get(1));
+
+        // no configurers so should use reflection
+        assertEquals(15, bi.getInvokedCounter());
+
+        context.stop();
+    }
+
+    @Test
+    public void testNestedArrayAutodetect() throws Exception {
+        CamelContext context = new DefaultCamelContext();
+
+        BeanIntrospection bi = context.adapt(ExtendedCamelContext.class).getBeanIntrospection();
+        bi.setExtendedStatistics(true);
+
+        context.start();
+
+        MyRoot target = new MyRoot();
+
+        PropertyBindingSupport.build()
+                .withCamelContext(context)
+                .withTarget(target)
+                .withProperty("name", "Donald")
+                // should autodetect what type bars[] and names[] contains
+                .withProperty("foo.bars[0].names[0]", "a")
+                .withProperty("foo.bars[0].names[1]", "b")
+                .withRemoveParameters(false).bind();
+
+        assertEquals("Donald", target.getName());
+        assertEquals(1, target.getFoo().getBars().size());
+        assertEquals(2, target.getFoo().getBars().get(0).getNames().size());
+        assertEquals("a", target.getFoo().getBars().get(0).getNames().get(0));
+        assertEquals("b", target.getFoo().getBars().get(0).getNames().get(1));
+
+        // no configurers so should use reflection
+        assertTrue(bi.getInvokedCounter() > 0);
+
+        context.stop();
+    }
+
+    public static class MyRoot {
+
+        private String name;
+        private MyOtherFoo foo;
+
+        public String getName() {
+            return name;
+        }
+
+        public void setName(String name) {
+            this.name = name;
+        }
+
+        public MyOtherFoo getFoo() {
+            return foo;
+        }
+
+        public void setFoo(MyOtherFoo foo) {
+            this.foo = foo;
+        }
+    }
+
+}
diff --git a/core/camel-main/src/test/java/org/apache/camel/main/PropertyBindingSupportRootArrayTest.java b/core/camel-main/src/test/java/org/apache/camel/main/PropertyBindingSupportRootArrayTest.java
index 80e11c4..b10b732 100644
--- a/core/camel-main/src/test/java/org/apache/camel/main/PropertyBindingSupportRootArrayTest.java
+++ b/core/camel-main/src/test/java/org/apache/camel/main/PropertyBindingSupportRootArrayTest.java
@@ -54,8 +54,8 @@ public class PropertyBindingSupportRootArrayTest {
         assertEquals("a", target.getBars().get(0).getNames().get(0));
         assertEquals("b", target.getBars().get(0).getNames().get(1));
 
-        // no configurer so reflection is in use
-        assertEquals(3, bi.getInvokedCounter());
+        // will auto detect generated configurer so no reflection in use
+        assertEquals(0, bi.getInvokedCounter());
 
         context.stop();
     }
diff --git a/core/camel-main/src/test/java/org/apache/camel/main/PropertyBindingSupportRootArrayWithConfigurerTest.java b/core/camel-main/src/test/java/org/apache/camel/main/PropertyBindingSupportRootArrayWithConfigurerTest.java
index ccfb26a..4a45a11 100644
--- a/core/camel-main/src/test/java/org/apache/camel/main/PropertyBindingSupportRootArrayWithConfigurerTest.java
+++ b/core/camel-main/src/test/java/org/apache/camel/main/PropertyBindingSupportRootArrayWithConfigurerTest.java
@@ -18,6 +18,7 @@ package org.apache.camel.main;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.ExtendedCamelContext;
+import org.apache.camel.LoggingLevel;
 import org.apache.camel.impl.DefaultCamelContext;
 import org.apache.camel.spi.BeanIntrospection;
 import org.apache.camel.support.PropertyBindingSupport;
@@ -36,6 +37,7 @@ public class PropertyBindingSupportRootArrayWithConfigurerTest {
 
         BeanIntrospection bi = context.adapt(ExtendedCamelContext.class).getBeanIntrospection();
         bi.setExtendedStatistics(true);
+        bi.setLoggingLevel(LoggingLevel.WARN);
 
         context.start();
 
@@ -44,20 +46,84 @@ public class PropertyBindingSupportRootArrayWithConfigurerTest {
         PropertyBindingSupport.build()
                 .withCamelContext(context)
                 .withTarget(target)
-                // TODO: this should not be needed anymore with newly generated configurers
                 .withProperty("bars[0]", "#class:" + MySecondBar.class.getName())
+                .withProperty("bars[0].number", "123")
                 .withProperty("bars[0].names[0]", "a")
                 .withProperty("bars[0].names[1]", "b")
                 .withConfigurer(new MySecondFooConfigurer())
                 .withRemoveParameters(false).bind();
 
         assertEquals(1, target.getBars().size());
+        assertEquals(123, target.getBars().get(0).getNumber());
         assertEquals(2, target.getBars().get(0).getNames().size());
         assertEquals("a", target.getBars().get(0).getNames().get(0));
         assertEquals("b", target.getBars().get(0).getNames().get(1));
 
-        // TODO: CAMEL-15394
-        // assertEquals(0, bi.getInvokedCounter());
+        assertEquals(0, bi.getInvokedCounter());
+
+        context.stop();
+    }
+
+    @Test
+    public void testRootArrayAutoDetectClass() throws Exception {
+        CamelContext context = new DefaultCamelContext();
+
+        BeanIntrospection bi = context.adapt(ExtendedCamelContext.class).getBeanIntrospection();
+        bi.setExtendedStatistics(true);
+        bi.setLoggingLevel(LoggingLevel.WARN);
+
+        context.start();
+
+        MySecondFoo target = new MySecondFoo();
+
+        PropertyBindingSupport.build()
+                .withCamelContext(context)
+                .withTarget(target)
+                // should use configurer to auto-detect which class is bars[0] holds
+                .withProperty("bars[0].number", "123")
+                .withProperty("bars[0].names[0]", "a")
+                .withProperty("bars[0].names[1]", "b")
+                .withConfigurer(new MySecondFooConfigurer())
+                .withRemoveParameters(false).bind();
+
+        assertEquals(1, target.getBars().size());
+        assertEquals(123, target.getBars().get(0).getNumber());
+        assertEquals(2, target.getBars().get(0).getNames().size());
+        assertEquals("a", target.getBars().get(0).getNames().get(0));
+        assertEquals("b", target.getBars().get(0).getNames().get(1));
+
+        assertEquals(0, bi.getInvokedCounter());
+
+        context.stop();
+    }
+
+    @Test
+    public void testRootArrayAutoDetectClassTwo() throws Exception {
+        CamelContext context = new DefaultCamelContext();
+
+        BeanIntrospection bi = context.adapt(ExtendedCamelContext.class).getBeanIntrospection();
+        bi.setExtendedStatistics(true);
+        bi.setLoggingLevel(LoggingLevel.WARN);
+
+        context.start();
+
+        MySecondFoo target = new MySecondFoo();
+
+        PropertyBindingSupport.build()
+                .withCamelContext(context)
+                .withTarget(target)
+                // should use configurer to auto-detect which class is bars[0] and names[0] holds
+                .withProperty("bars[0].names[0]", "a")
+                .withProperty("bars[0].names[1]", "b")
+                .withConfigurer(new MySecondFooConfigurer())
+                .withRemoveParameters(false).bind();
+
+        assertEquals(1, target.getBars().size());
+        assertEquals(2, target.getBars().get(0).getNames().size());
+        assertEquals("a", target.getBars().get(0).getNames().get(0));
+        assertEquals("b", target.getBars().get(0).getNames().get(1));
+
+        assertEquals(0, bi.getInvokedCounter());
 
         context.stop();
     }
diff --git a/core/camel-main/src/test/java/org/apache/camel/main/support/MyDummyComponentConfigurer.java b/core/camel-main/src/test/java/org/apache/camel/main/support/MyDummyComponentConfigurer.java
index e86cf98..f507af5 100644
--- a/core/camel-main/src/test/java/org/apache/camel/main/support/MyDummyComponentConfigurer.java
+++ b/core/camel-main/src/test/java/org/apache/camel/main/support/MyDummyComponentConfigurer.java
@@ -49,4 +49,5 @@ public class MyDummyComponentConfigurer extends PropertyConfigurerSupport implem
                 return false;
         }
     }
+
 }
diff --git a/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java b/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
index bfc49b4..a2a558f 100644
--- a/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
+++ b/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
@@ -22,23 +22,23 @@ import java.lang.reflect.Method;
 import java.lang.reflect.Modifier;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Collection;
 import java.util.Comparator;
 import java.util.HashMap;
 import java.util.HashSet;
-import java.util.Iterator;
 import java.util.LinkedHashMap;
 import java.util.List;
-import java.util.Locale;
 import java.util.Map;
 import java.util.Optional;
 import java.util.Set;
+import java.util.SortedMap;
+import java.util.TreeMap;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.Component;
 import org.apache.camel.ExtendedCamelContext;
 import org.apache.camel.PropertyBindingException;
 import org.apache.camel.spi.BeanIntrospection;
-import org.apache.camel.spi.GeneratedPropertyConfigurer;
 import org.apache.camel.spi.PropertyConfigurer;
 import org.apache.camel.spi.PropertyConfigurerGetter;
 import org.apache.camel.support.service.ServiceHelper;
@@ -46,6 +46,7 @@ import org.apache.camel.util.StringHelper;
 import org.apache.camel.util.StringQuoteHelper;
 
 import static org.apache.camel.util.ObjectHelper.isNotEmpty;
+import static org.apache.camel.util.StringHelper.startsWithIgnoreCase;
 
 /**
  * A convenient support class for binding String valued properties to an instance which uses a set of conventions:
@@ -73,14 +74,14 @@ import static org.apache.camel.util.ObjectHelper.isNotEmpty;
  * <li>ignore case - Whether to ignore case for property keys
  * <li>
  * </ul>
- *
+ * <p>
  * Keys can be marked as optional if the key name starts with a question mark, such as:
- * 
+ *
  * <pre>
  * foo=123
  * ?bar=false
  * </pre>
- * 
+ * <p>
  * Where foo is mandatory, and bar is optional.
  */
 public final class PropertyBindingSupport {
@@ -371,7 +372,7 @@ public final class PropertyBindingSupport {
 
         // if there a configurer
         PropertyConfigurer configurer = null;
-        PropertyConfigurerGetter getter = null;
+        PropertyConfigurerGetter getter;
         if (target instanceof Component) {
             // the component needs to be initialized to have the configurer ready
             ServiceHelper.initService(target);
@@ -526,6 +527,79 @@ public final class PropertyBindingSupport {
     }
 
     /**
+     * Used for making it easier to support using option prefix in property binding and to remove the bound properties
+     * from the input map.
+     */
+    private static class OptionPrefixMap extends LinkedHashMap<String, Object> {
+
+        private final String optionPrefix;
+        private final Map<String, Object> originalMap;
+
+        public OptionPrefixMap(Map<String, Object> map, String optionPrefix) {
+            this.originalMap = map;
+            this.optionPrefix = optionPrefix;
+            // copy from original map into our map without the option prefix
+            map.forEach((k, v) -> {
+                if (startsWithIgnoreCase(k, optionPrefix)) {
+                    put(k.substring(optionPrefix.length()), v);
+                } else if (startsWithIgnoreCase(k, "?" + optionPrefix)) {
+                    put(k.substring(optionPrefix.length() + 1), v);
+                }
+            });
+        }
+
+        @Override
+        public Object remove(Object key) {
+            // we only need to care about the remove method,
+            // so we can remove the corresponding key from the original map
+            Set<String> toBeRemoved = new HashSet<>();
+            originalMap.forEach((k, v) -> {
+                if (startsWithIgnoreCase(k, optionPrefix)) {
+                    toBeRemoved.add(k);
+                } else if (startsWithIgnoreCase(k, "?" + optionPrefix)) {
+                    toBeRemoved.add(k);
+                }
+            });
+            toBeRemoved.forEach(originalMap::remove);
+
+            return super.remove(key);
+        }
+
+    }
+
+    /**
+     * Used for sorting the property keys when doing property binding. We need to sort the keys in a specific order so
+     * we process the binding in a way that allows us to walk down the OGNL object graph and build empty nodes on the
+     * fly, and as well handle map/list and array types as well.
+     */
+    private static class PropertyBindingKeyComparator implements Comparator<String> {
+
+        private final Map<String, Object> map;
+
+        private PropertyBindingKeyComparator(Map<String, Object> map) {
+            this.map = map;
+        }
+
+        @Override
+        public int compare(String o1, String o2) {
+            // 1) sort by nested level (shortest OGNL graph first)
+            int n1 = StringHelper.countChar(o1, '.');
+            int n2 = StringHelper.countChar(o2, '.');
+            if (n1 != n2) {
+                return Integer.compare(n1, n2);
+            }
+            // 2) sort by reference (as it may refer to other beans in the OGNL graph)
+            boolean ref1 = map.get(o1).toString().startsWith("#");
+            boolean ref2 = map.get(o2).toString().startsWith("#");
+            if (ref1 != ref2) {
+                return Boolean.compare(ref1, ref2);
+            }
+            // 3) sort by name
+            return o1.compareTo(o2);
+        }
+    }
+
+    /**
      * Binds the properties with the given prefix to the target object, and removes the property that was bound from
      * properties. Note that the prefix is removed from the key before the property is bound.
      *
@@ -556,106 +630,510 @@ public final class PropertyBindingSupport {
             boolean reference, boolean placeholder,
             PropertyConfigurer configurer) {
 
-        final String uOptionPrefix = ignoreCase && isNotEmpty(optionPrefix) ? optionPrefix.toUpperCase(Locale.US) : "";
-        final int size = properties.size();
+        boolean answer = false;
+
+        if (optionPrefix != null) {
+            properties = new OptionPrefixMap(properties, optionPrefix);
+        }
+
+        // need to process them in specific order so use a sorted map
+        // and use our comparator
+        SortedMap<String, Object> sorted = new TreeMap<>(new PropertyBindingKeyComparator(properties));
+        sorted.putAll(properties);
+
+        // process each property and bind it
+        for (Map.Entry<String, Object> entry : sorted.entrySet()) {
+            String key = entry.getKey();
+            Object value = entry.getValue();
+
+            // if nesting is not allowed, then only bind properties without dots (ONGL graph)
+            if (!nesting && key.indexOf('.') != -1) {
+                continue;
+            }
+
+            // attempt to bind the property
+            boolean hit = doBuildPropertyOgnlPath(camelContext, target, key, value, deepNesting, fluentBuilder,
+                    allowPrivateSetter, ignoreCase, reference, placeholder, mandatory, configurer);
+            if (hit && removeParameter) {
+                properties.remove(key);
+            }
+            answer |= hit;
+        }
+
+        return answer;
+    }
+
+    private static boolean doBuildPropertyOgnlPath(
+            final CamelContext camelContext, final Object originalTarget, String name, final Object value,
+            boolean deepNesting, boolean fluentBuilder, boolean allowPrivateSetter,
+            boolean ignoreCase, boolean reference, boolean placeholder, boolean mandatory,
+            PropertyConfigurer configurer) {
+
+        boolean optional = name.startsWith("?");
+        if (optional) {
+            name = name.substring(1);
+        }
+
+        Object newTarget = originalTarget;
+        Class<?> newClass = originalTarget.getClass();
+        String newName = name;
 
-        // use configuer first to set the options it can do
-        if (configurer != null) {
-            for (Iterator<Map.Entry<String, Object>> iter = properties.entrySet().iterator(); iter.hasNext();) {
-                Map.Entry<String, Object> entry = iter.next();
-                String key = entry.getKey();
-                Object value = entry.getValue();
+        if (configurer == null) {
+            // do we have a configurer by any chance
+            configurer = camelContext.adapt(ExtendedCamelContext.class).getConfigurerResolver()
+                    .resolvePropertyConfigurer(newClass.getSimpleName(), camelContext);
+        }
 
-                final boolean optional = key.startsWith("?");
+        // we should only walk and create OGNL path for the middle graph
+        String[] parts;
+        if (name.contains(".")) {
+            parts = name.split("\\.");
+        } else {
+            parts = new String[] { name };
+        }
+        // last node should not be walked here (that happens later)
+        for (int i = 0; i < parts.length - 1; i++) {
+            String part = parts[i];
+            Object prop = null;
+            // get ognl path for this part
+            if (configurer != null) {
+                prop = getOrCreatePropertyOgnlPathViaConfigurer(camelContext, newTarget, part, ignoreCase, configurer);
+            }
+            if (prop == null) {
+                // no configurer or not possible with configurer so fallback and use reflection
+                prop = getOrCreatePropertyOgnlPathViaReflection(camelContext, newTarget, part, ignoreCase);
+            }
+            if (prop == null) {
+                if (!deepNesting) {
+                    // okay we cannot go further down
+                    return false;
+                }
+                // create ognl path for this part
+                if (configurer != null) {
+                    prop = attemptCreateNewInstanceViaConfigurer(camelContext, newTarget, part, ignoreCase,
+                            configurer);
+                }
+                if (prop == null) {
+                    // no configurer or not possible with configurer so fallback and use reflection
+                    prop = attemptCreateNewInstanceViaReflection(camelContext, newTarget, newClass, part, fluentBuilder,
+                            allowPrivateSetter,
+                            ignoreCase);
+                }
+            }
+            if (prop == null) {
                 if (optional) {
-                    key = key.substring(1);
+                    return false;
+                } else if (mandatory) {
+                    // there is no getter with this given name, so lets report this as a problem
+                    throw new IllegalArgumentException(
+                            "Cannot find getter method: " + part + " on bean: " + newClass
+                                                       + " when binding property: " + name);
                 }
-
-                // property configurer does not support nested names so skip if the name has a dot
-                if (key.indexOf('.') == -1) {
-                    try {
-                        // PropertyConfigurer works by invoking the methods directly but it does
-                        // not resolve property placeholders eventually defined in the value before invoking
-                        // the setter.
-                        if (value instanceof String) {
-                            value = camelContext.resolvePropertyPlaceholders((String) value);
-                        }
-                        value = resolveValue(camelContext, target, key, value, ignoreCase, fluentBuilder, allowPrivateSetter);
-                        boolean hit = configurer.configure(camelContext, target, key, value, ignoreCase);
-                        if (removeParameter && hit) {
-                            iter.remove();
-                        }
-                    } catch (Exception e) {
-                        throw new PropertyBindingException(target, key, value, e);
+            } else {
+                // okay ognl path is success (either get existing or created empty object)
+                // now lets update the target/name/class before next iterator (next part)
+                if (configurer instanceof PropertyConfigurerGetter) {
+                    // lets see if we have a specialized configurer
+                    String key = part;
+                    int pos = part.indexOf('[');
+                    if (pos != -1) {
+                        key = part.substring(0, pos);
+                    }
+                    // if its a map/list/array type then find out what type the collection uses
+                    // so we can use that to lookup as configurer
+                    Class<?> collectionType = (Class<?>) ((PropertyConfigurerGetter) configurer)
+                            .getCollectionValueType(newTarget, key, ignoreCase);
+                    if (collectionType != null) {
+                        configurer = camelContext.adapt(ExtendedCamelContext.class).getConfigurerResolver()
+                                .resolvePropertyConfigurer(collectionType.getSimpleName(), camelContext);
+                    } else {
+                        configurer = camelContext.adapt(ExtendedCamelContext.class).getConfigurerResolver()
+                                .resolvePropertyConfigurer(prop.getClass().getSimpleName(), camelContext);
                     }
                 }
+                // prepare for next iterator
+                newTarget = prop;
+                newClass = newTarget.getClass();
+                newName = parts[i + 1];
             }
         }
 
-        // then we must set reference parameters before the other bindings
-        setReferenceProperties(camelContext, target, properties);
+        // we have walked down to the last part of the ognl path and are ready to set the last piece with the value
+        // now this is actually also a bit complex so lets use another method for that
+        return doSetPropertyValue(camelContext, newTarget, newName, value, ignoreCase, mandatory,
+                fluentBuilder, allowPrivateSetter, reference, placeholder, optional, configurer);
+    }
 
-        // sort the keys by nesting level and set the remainder
-        properties.keySet().stream()
-                .sorted(Comparator.comparingInt(s -> StringHelper.countChar(s, '.')))
-                .forEach(key -> {
-                    Object text = properties.get(key);
-                    final String propertyKey = key;
-                    final boolean optional = key.startsWith("?");
-                    if (optional) {
-                        key = key.substring(1);
-                    }
-                    if (placeholder) {
-                        // resolve property placeholders
-                        key = camelContext.resolvePropertyPlaceholders(key);
-                        if (text instanceof String) {
-                            // resolve property placeholders
-                            text = camelContext.resolvePropertyPlaceholders(text.toString());
-                        }
-                    }
-                    final Object value = text;
+    private static Object attemptCreateNewInstanceViaReflection(
+            CamelContext camelContext, Object newTarget, Class newClass, String name, boolean fluentBuilder,
+            boolean allowPrivateSetter, boolean ignoreCase) {
 
-                    if (isNotEmpty(optionPrefix)) {
-                        boolean match = key.startsWith(optionPrefix)
-                                || ignoreCase && key.toUpperCase(Locale.US).startsWith(uOptionPrefix);
-                        if (!match) {
-                            return;
-                        }
-                        key = key.substring(optionPrefix.length());
-                    }
+        // if the name has collection lookup then ignore that as we want to create the instance
+        String key = name;
+        int pos = name.indexOf('[');
+        if (pos != -1) {
+            key = name.substring(0, pos);
+        }
 
-                    boolean bound = false;
-                    if (configurer != null) {
-                        // attempt configurer first
-                        try {
-                            bound = configurer.configure(camelContext, target, key, value, ignoreCase);
-                        } catch (Exception e) {
-                            throw new PropertyBindingException(target, key, value, e);
-                        }
+        Object answer = null;
+        Method method = findBestSetterMethod(camelContext, newClass, key, fluentBuilder, allowPrivateSetter, ignoreCase);
+        if (method != null) {
+            Class<?> parameterType = method.getParameterTypes()[0];
+            Object obj = null;
+            // special for map/list/array
+            if (Map.class.isAssignableFrom(parameterType)) {
+                obj = new LinkedHashMap<>();
+            } else if (Collection.class.isAssignableFrom(parameterType)) {
+                obj = new ArrayList<>();
+            } else if (parameterType.isArray()) {
+                obj = Array.newInstance(parameterType.getComponentType(), 0);
+            }
+            if (obj == null && org.apache.camel.util.ObjectHelper.hasDefaultPublicNoArgConstructor(parameterType)) {
+                obj = camelContext.getInjector().newInstance(parameterType);
+            }
+            if (obj != null) {
+                org.apache.camel.support.ObjectHelper.invokeMethod(method, newTarget, obj);
+                answer = obj;
+            }
+        }
+        return answer;
+    }
+
+    private static Object attemptCreateNewInstanceViaConfigurer(
+            CamelContext camelContext, Object newTarget, String name,
+            boolean ignoreCase, PropertyConfigurer configurer) {
+
+        // if the name has collection lookup then ignore that as we want to create the instance
+        String key = name;
+        int pos = name.indexOf('[');
+        if (pos != -1) {
+            key = name.substring(0, pos);
+        }
+
+        Object answer = null;
+        Class<?> parameterType = null;
+        if (configurer instanceof PropertyConfigurerGetter) {
+            parameterType = (Class<?>) ((PropertyConfigurerGetter) configurer).getAllOptions(newTarget).get(key);
+        }
+        if (parameterType != null) {
+            Object obj = null;
+            // special for map/list/array
+            if (Map.class.isAssignableFrom(parameterType)) {
+                obj = new LinkedHashMap<>();
+            } else if (Collection.class.isAssignableFrom(parameterType)) {
+                obj = new ArrayList<>();
+            } else if (parameterType.isArray()) {
+                obj = Array.newInstance(parameterType.getComponentType(), 0);
+            }
+            if (obj == null && org.apache.camel.util.ObjectHelper.hasDefaultPublicNoArgConstructor(parameterType)) {
+                obj = camelContext.getInjector().newInstance(parameterType);
+            }
+            if (obj != null) {
+                boolean hit = configurer.configure(camelContext, newTarget, key, obj, ignoreCase);
+                if (hit) {
+                    answer = obj;
+                }
+            }
+        }
+        return answer;
+    }
+
+    private static boolean doSetPropertyValue(
+            CamelContext camelContext, Object target, String name, Object value,
+            boolean ignoreCase, boolean mandatory,
+            boolean fluentBuilder, boolean allowPrivateSetter,
+            boolean reference, boolean placeholder, boolean optional,
+            PropertyConfigurer configurer) {
+
+        String key = name;
+        Object text = value;
+
+        if (placeholder) {
+            // resolve property placeholders
+            key = camelContext.resolvePropertyPlaceholders(key);
+            if (text instanceof String) {
+                // resolve property placeholders
+                text = camelContext.resolvePropertyPlaceholders(text.toString());
+            }
+        }
+
+        // prepare the value before it is bound
+        try {
+            Object str = resolveValue(camelContext, target, key, text, ignoreCase, fluentBuilder,
+                    allowPrivateSetter, configurer);
+            // resolve property placeholders
+            if (str instanceof String) {
+                // resolve property placeholders
+                str = camelContext.resolvePropertyPlaceholders(str.toString());
+            }
+            // special for reference (we should not do this for options that are String type)
+            if (reference && isReferenceParameter(str)) {
+                Object bean = CamelContextHelper.lookup(camelContext, str.toString().substring(1));
+                if (bean != null) {
+                    str = bean;
+                }
+            }
+            value = str;
+        } catch (Exception e) {
+            // report the exception using the long key and parent target
+            throw new PropertyBindingException(target, key, text, e);
+        }
+
+        // okay we are ready to set the value, but the property key
+        // can still be complex such as a map/list/array so we need to handle them specially than a regular key
+        boolean bound = false;
+        try {
+            if (isCollectionKey(name)) {
+                // collection key (list,map,array)
+                if (configurer != null) {
+                    bound = setPropertyCollectionViaConfigurer(camelContext, target, key, value, ignoreCase, configurer);
+                }
+                if (!bound) {
+                    // fallback to reflection based
+                    bound = setPropertyCollectionViaReflection(camelContext, target, key, value, ignoreCase);
+                }
+            } else {
+                // regular key
+                if (configurer != null) {
+                    bound = setSimplePropertyViaConfigurer(camelContext, target, key, value, ignoreCase, configurer);
+                }
+                if (!bound) {
+                    // fallback to reflection based
+                    bound = setSimplePropertyViaReflection(camelContext, target, key, value, fluentBuilder, allowPrivateSetter,
+                            reference, ignoreCase);
+                }
+
+            }
+        } catch (PropertyBindingException e) {
+            throw e;
+        } catch (Exception e) {
+            throw new PropertyBindingException(target, key, value, e);
+        }
+
+        if (mandatory && !optional && !bound) {
+            throw new PropertyBindingException(target, key, value);
+        }
+
+        return bound;
+    }
+
+    private static boolean isCollectionKey(String name) {
+        return name.contains("[") && name.endsWith("]");
+    }
+
+    private static boolean setPropertyCollectionViaReflection(
+            CamelContext context, Object target, String name, Object value,
+            boolean ignoreCase)
+            throws Exception {
+
+        BeanIntrospection bi = context.adapt(ExtendedCamelContext.class).getBeanIntrospection();
+
+        int pos = name.indexOf('[');
+        String lookupKey = name.substring(pos + 1, name.length() - 1);
+        String key = name.substring(0, pos);
+
+        Object obj = bi.getOrElseProperty(target, key, null, ignoreCase);
+        if (obj == null) {
+            // it was supposed to be a list or map, but its null, so lets create a new list or map and set it automatically
+            Method getter = bi.getPropertyGetter(target.getClass(), key, ignoreCase);
+            if (getter != null) {
+                // what type does it have
+                Class<?> returnType = getter.getReturnType();
+                if (Map.class.isAssignableFrom(returnType)) {
+                    obj = new LinkedHashMap<>();
+                } else if (Collection.class.isAssignableFrom(returnType)) {
+                    obj = new ArrayList<>();
+                } else if (returnType.isArray()) {
+                    obj = Array.newInstance(returnType.getComponentType(), 0);
+                }
+            } else {
+                // fallback as map type
+                obj = new LinkedHashMap<>();
+            }
+            boolean hit = bi.setProperty(context, target, key, obj);
+            if (!hit) {
+                throw new IllegalArgumentException(
+                        "Cannot set property: " + name + " as a Map because target bean has no setter method for the Map");
+            }
+        }
+        if (obj instanceof Map) {
+            Map map = (Map) obj;
+            map.put(lookupKey, value);
+            return true;
+        } else if (obj instanceof List) {
+            List list = (List) obj;
+            if (isNotEmpty(lookupKey)) {
+                int idx = Integer.parseInt(lookupKey);
+                if (idx < list.size()) {
+                    list.set(idx, value);
+                } else if (idx == list.size()) {
+                    list.add(value);
+                } else {
+                    // If the list implementation is based on an array, we
+                    // can increase tha capacity to the required value to
+                    // avoid potential re-allocation weh invoking List::add.
+                    //
+                    // Note that ArrayList is the default List impl that
+                    // is automatically created if the property is null.
+                    if (list instanceof ArrayList) {
+                        ((ArrayList) list).ensureCapacity(idx + 1);
                     }
-                    if (!bound) {
-                        bound = bindProperty(camelContext, target, key, value, ignoreCase, nesting, deepNesting, fluentBuilder,
-                                allowPrivateSetter, reference, placeholder);
+                    while (list.size() < idx) {
+                        list.add(null);
                     }
-                    if (bound && removeParameter) {
-                        properties.remove(propertyKey);
+                    list.add(idx, value);
+                }
+            } else {
+                list.add(value);
+            }
+            return true;
+        } else if (obj.getClass().isArray() && lookupKey != null) {
+            int idx = Integer.parseInt(lookupKey);
+            int size = Array.getLength(obj);
+            if (idx >= size) {
+                obj = Arrays.copyOf((Object[]) obj, idx + 1);
+                // replace array
+                boolean hit = bi.setProperty(context, target, key, obj);
+                if (!hit) {
+                    throw new IllegalArgumentException(
+                            "Cannot set property: " + name
+                                                       + " as an array because target bean has no setter method for the array");
+                }
+            }
+            Array.set(obj, idx, value);
+            return true;
+        } else {
+            // not a map or list
+            throw new IllegalArgumentException(
+                    "Cannot set property: " + name
+                                               + " as either a Map/List/array because target bean is not a Map, List or array type: "
+                                               + target);
+        }
+    }
+
+    private static boolean setPropertyCollectionViaConfigurer(
+            CamelContext camelContext, Object target, String name, Object value,
+            boolean ignoreCase, PropertyConfigurer configurer)
+            throws Exception {
+
+        final Object originalTarget = target;
+
+        int pos = name.indexOf('[');
+        String lookupKey = name.substring(pos + 1, name.length() - 1);
+        String key = name.substring(0, pos);
+
+        Object obj = null;
+        if (configurer instanceof PropertyConfigurerGetter) {
+            obj = ((PropertyConfigurerGetter) configurer).getOptionValue(target, key, ignoreCase);
+        }
+        if (obj == null) {
+            // it was supposed to be a list or map, but its null, so lets create a new list or map and set it automatically
+            Class<?> returnType = null;
+            if (configurer instanceof PropertyConfigurerGetter) {
+                returnType = (Class<?>) ((PropertyConfigurerGetter) configurer).getAllOptions(target).get(key);
+            }
+            if (returnType == null) {
+                return false;
+            }
+            if (Map.class.isAssignableFrom(returnType)) {
+                obj = new LinkedHashMap<>();
+            } else if (Collection.class.isAssignableFrom(returnType)) {
+                obj = new ArrayList<>();
+            } else if (returnType.isArray()) {
+                obj = Array.newInstance(returnType.getComponentType(), 0);
+            }
+            if (obj != null) {
+                // set
+                boolean hit = configurer.configure(camelContext, target, key, obj, ignoreCase);
+                if (!hit) {
+                    // not a map or list
+                    throw new IllegalArgumentException(
+                            "Cannot set property: " + name
+                                                       + " as either a Map/List/array because target bean is not a Map, List or array type: "
+                                                       + target);
+                }
+                target = obj;
+            }
+        }
+
+        if (obj == null) {
+            return false;
+        }
+
+        if (obj instanceof Map) {
+            Map map = (Map) obj;
+            map.put(lookupKey, value);
+            return true;
+        } else if (obj instanceof List) {
+            List list = (List) obj;
+            if (isNotEmpty(lookupKey)) {
+                int idx = Integer.parseInt(lookupKey);
+                if (idx < list.size()) {
+                    list.set(idx, value);
+                } else if (idx == list.size()) {
+                    list.add(value);
+                } else {
+                    // If the list implementation is based on an array, we
+                    // can increase tha capacity to the required value to
+                    // avoid potential re-allocation weh invoking List::add.
+                    //
+                    // Note that ArrayList is the default List impl that
+                    // is automatically created if the property is null.
+                    if (list instanceof ArrayList) {
+                        ((ArrayList) list).ensureCapacity(idx + 1);
                     }
-                    if (mandatory && !optional && !bound) {
-                        throw new PropertyBindingException(target, propertyKey, value);
+                    while (list.size() < idx) {
+                        list.add(null);
                     }
-                });
+                    list.add(idx, value);
+                }
+            } else {
+                list.add(value);
+            }
+            return true;
+        } else if (obj.getClass().isArray()) {
+            int idx = Integer.parseInt(lookupKey);
+            int size = Array.getLength(obj);
+            if (idx >= size) {
+                obj = Arrays.copyOf((Object[]) obj, idx + 1);
+                // replace array
+                boolean hit = configurer.configure(camelContext, originalTarget, key, obj, ignoreCase);
+                if (!hit) {
+                    throw new IllegalArgumentException(
+                            "Cannot set property: " + name
+                                                       + " as an array because target bean has no setter method for the array");
+                }
+            }
+            Array.set(obj, idx, value);
+            return true;
+        } else {
+            // not a map or list
+            throw new IllegalArgumentException(
+                    "Cannot set property: " + name
+                                               + " as either a Map/List/array because target bean is not a Map, List or array type: "
+                                               + target);
+        }
+    }
 
-        return properties.size() != size;
+    private static boolean setSimplePropertyViaConfigurer(
+            CamelContext camelContext, Object target, String key, Object value,
+            boolean ignoreCase, PropertyConfigurer configurer) {
+        try {
+            return configurer.configure(camelContext, target, key, value, ignoreCase);
+        } catch (Exception e) {
+            throw new PropertyBindingException(target, key, value, e);
+        }
     }
 
-    private static boolean bindProperty(
+    private static boolean setSimplePropertyViaReflection(
             CamelContext camelContext, Object target, String name, Object value,
-            boolean ignoreCase, boolean nesting, boolean deepNesting, boolean fluentBuilder,
-            boolean allowPrivateSetter, boolean reference, boolean placeholder) {
+            boolean fluentBuilder, boolean allowPrivateSetter, boolean reference,
+            boolean ignoreCase) {
+
         try {
             if (target != null && name != null) {
-                return setProperty(camelContext, target, name, value, false, ignoreCase, nesting, deepNesting, fluentBuilder,
-                        allowPrivateSetter, reference, placeholder);
+                return doSetSimplePropertyViaReflection(camelContext, target, name, value, false, ignoreCase, fluentBuilder,
+                        allowPrivateSetter, reference);
             }
         } catch (Exception e) {
             throw new PropertyBindingException(target, name, value, e);
@@ -664,18 +1142,35 @@ public final class PropertyBindingSupport {
         return false;
     }
 
-    private static Object resolveValue(
+    private static Object resolveAutowired(
             CamelContext context, Object target, String name, Object value,
-            boolean ignoreCase, boolean fluentBuilder, boolean allowPrivateSetter)
+            boolean ignoreCase, boolean fluentBuilder, boolean allowPrivateSetter,
+            PropertyConfigurer configurer)
             throws Exception {
+
         if (value instanceof String) {
             String str = value.toString();
             if (str.equals("#autowired")) {
                 // we should get the type from the setter
-                Method method
-                        = findBestSetterMethod(context, target.getClass(), name, fluentBuilder, allowPrivateSetter, ignoreCase);
-                if (method != null) {
-                    Class<?> parameterType = method.getParameterTypes()[0];
+                Class<?> parameterType = null;
+                if (configurer instanceof PropertyConfigurerGetter) {
+                    // favour using configurer
+                    parameterType = (Class<?>) ((PropertyConfigurerGetter) configurer).getAllOptions(target).get(name);
+                }
+                if (parameterType == null) {
+                    // fallback to reflection
+                    Method method
+                            = findBestSetterMethod(context, target.getClass(), name, fluentBuilder, allowPrivateSetter,
+                                    ignoreCase);
+                    if (method != null) {
+                        parameterType = method.getParameterTypes()[0];
+                    } else {
+                        throw new IllegalStateException(
+                                "Cannot find setter method with name: " + name + " on class: " + target.getClass().getName()
+                                                        + " to use for autowiring");
+                    }
+                }
+                if (parameterType != null) {
                     Set<?> types = context.getRegistry().findByType(parameterType);
                     if (types.size() == 1) {
                         value = types.iterator().next();
@@ -688,12 +1183,20 @@ public final class PropertyBindingSupport {
                                 "Cannot select single type: " + parameterType
                                                         + " as there are no beans in the registry with this type");
                     }
-                } else {
-                    throw new IllegalStateException(
-                            "Cannot find setter method with name: " + name + " on class: " + target.getClass().getName()
-                                                    + " to use for autowiring");
                 }
-            } else if (str.startsWith("#property:")) {
+            }
+        }
+        return value;
+    }
+
+    private static Object resolveValue(
+            CamelContext context, Object target, String name, Object value,
+            boolean ignoreCase, boolean fluentBuilder, boolean allowPrivateSetter,
+            PropertyConfigurer configurer)
+            throws Exception {
+        if (value instanceof String) {
+            String str = value.toString();
+            if (str.startsWith("#property:")) {
                 String key = str.substring(10);
                 // the key may have property placeholder so resolve those first
                 key = context.resolvePropertyPlaceholders(key);
@@ -703,6 +1206,9 @@ public final class PropertyBindingSupport {
                 } else {
                     throw new IllegalArgumentException("Property with key " + key + " not found by properties component");
                 }
+            } else if (str.equals("#autowired")) {
+                value = resolveAutowired(context, target, name, value, ignoreCase, fluentBuilder, allowPrivateSetter,
+                        configurer);
             } else {
                 value = resolveBean(context, name, value);
             }
@@ -710,107 +1216,36 @@ public final class PropertyBindingSupport {
         return value;
     }
 
-    private static boolean setProperty(
+    private static boolean doSetSimplePropertyViaReflection(
             CamelContext context, Object target, String name, Object value, boolean mandatory,
-            boolean ignoreCase, boolean nesting, boolean deepNesting, boolean fluentBuilder,
-            boolean allowPrivateSetter, boolean reference, boolean placeholder)
+            boolean ignoreCase, boolean fluentBuilder,
+            boolean allowPrivateSetter, boolean reference)
             throws Exception {
-        String refName = null;
-
-        if (placeholder) {
-            // resolve property placeholders
-            name = context.resolvePropertyPlaceholders(name);
-            if (value instanceof String) {
-                // resolve property placeholders
-                value = context.resolvePropertyPlaceholders(value.toString());
-            }
-        }
-
-        String ognlPath = name;
-
-        // if name has dot then we need to OGNL walk it
-        if (nesting) {
-            if (name.indexOf('.') > 0) {
-                String[] parts = name.split("\\.");
-                Object newTarget = target;
-                Class<?> newClass = target.getClass();
-                // we should only iterate until until 2nd last so we use -1 in the for loop
-                for (int i = 0; i < parts.length - 1; i++) {
-                    String part = parts[i];
-                    Object prop = getOrElseProperty(context, newTarget, part, null, ignoreCase);
-                    if (prop == null) {
-                        if (!deepNesting) {
-                            // okay we cannot go further down
-                            break;
-                        }
-                        // okay is there a setter so we can create a new instance and set it automatic
-                        Method method
-                                = findBestSetterMethod(context, newClass, part, fluentBuilder, allowPrivateSetter, ignoreCase);
-                        if (method != null) {
-                            Class<?> parameterType = method.getParameterTypes()[0];
-                            Object instance = null;
-                            if (parameterType != null
-                                    && org.apache.camel.util.ObjectHelper.hasDefaultPublicNoArgConstructor(parameterType)) {
-                                instance = context.getInjector().newInstance(parameterType);
-                            }
-                            if (instance != null) {
-                                org.apache.camel.support.ObjectHelper.invokeMethod(method, newTarget, instance);
-                                newTarget = instance;
-                                newClass = newTarget.getClass();
-                            }
-                        } else {
-                            if (mandatory) {
-                                // there is no getter with this given name, so lets report this as a problem
-                                throw new IllegalArgumentException(
-                                        "Cannot find getter method: " + part + " on bean: " + newClass
-                                                                   + " when binding property: " + ognlPath);
-                            }
-                        }
-                    } else {
-                        newTarget = prop;
-                        newClass = newTarget.getClass();
-                    }
-                }
-                if (newTarget != target) {
-                    // okay we found a nested property, then lets change to use that
-                    target = newTarget;
-                    name = parts[parts.length - 1];
-                }
-            }
-        }
 
+        String refName = null;
         if (reference && value instanceof String) {
             if (value.toString().startsWith("#bean:")) {
                 // okay its a reference so swap to lookup this which is already supported in IntrospectionSupport
                 refName = "#" + ((String) value).substring(6);
                 value = null;
-            } else {
-                value = resolveValue(context, target, name, value, ignoreCase, fluentBuilder, allowPrivateSetter);
+            } else if (value.toString().equals("#autowired")) {
+                value = resolveAutowired(context, target, name, value, ignoreCase, fluentBuilder, allowPrivateSetter, null);
             }
         }
-        // use configurer if possible
-        boolean hit = false;
-        GeneratedPropertyConfigurer configurer = context.adapt(ExtendedCamelContext.class).getConfigurerResolver()
-                .resolvePropertyConfigurer(target.getClass().getSimpleName(), context);
-        if (configurer != null) {
-            hit = configurer.configure(context, target, name, value, ignoreCase);
-        }
-        if (!hit) {
-            // fallback to reflection based
-            hit = context.adapt(ExtendedCamelContext.class).getBeanIntrospection().setProperty(context,
-                    context.getTypeConverter(), target, name, value, refName, fluentBuilder, allowPrivateSetter, ignoreCase);
-        }
+
+        boolean hit = context.adapt(ExtendedCamelContext.class).getBeanIntrospection().setProperty(context,
+                context.getTypeConverter(), target, name, value, refName, fluentBuilder, allowPrivateSetter, ignoreCase);
         if (!hit && mandatory) {
             // there is no setter with this given name, so lets report this as a problem
             throw new IllegalArgumentException(
                     "Cannot find setter method: " + name + " on bean: " + target + " of type: " + target.getClass().getName()
-                                               + " when binding property: " + ognlPath);
+                                               + " when binding property: " + name);
         }
         return hit;
     }
 
-    private static Object getOrElseProperty(
-            CamelContext context, Object target, String property, Object defaultValue, boolean ignoreCase) {
+    private static Object getOrCreatePropertyOgnlPathViaConfigurer(
+            CamelContext context, Object target, String property, boolean ignoreCase, PropertyConfigurer configurer) {
         String key = property;
         String lookupKey = null;
 
@@ -821,47 +1256,69 @@ public final class PropertyBindingSupport {
             key = property.substring(0, pos);
         }
 
-        // use configurer if possible
         Object answer = null;
         Class<?> type = null;
 
-        GeneratedPropertyConfigurer configurer = PropertyConfigurerHelper.resolvePropertyConfigurer(context, target);
         if (configurer instanceof PropertyConfigurerGetter) {
             answer = ((PropertyConfigurerGetter) configurer).getOptionValue(target, key, ignoreCase);
-            if (answer == null) {
-                answer = defaultValue;
-            }
         }
-        if (answer == null) {
-            BeanIntrospection introspection = context.adapt(ExtendedCamelContext.class).getBeanIntrospection();
-            // fallback to reflection based
-            answer = introspection.getOrElseProperty(target, key, defaultValue, ignoreCase);
-            if (answer == null) {
-                try {
-                    Method method = introspection.getPropertyGetter(target.getClass(), key, ignoreCase);
-                    if (method != null) {
-                        type = method.getReturnType();
-                    }
-                } catch (NoSuchMethodException e) {
-                    // ignore
-                }
-            }
-        }
-
         if (answer != null) {
             type = answer.getClass();
         } else if (configurer instanceof PropertyConfigurerGetter) {
             type = (Class<?>) ((PropertyConfigurerGetter) configurer).getAllOptions(target).get(key);
         }
 
+        if (answer == null && type == null) {
+            // not possible to build
+            return null;
+        }
+
+        if (answer == null) {
+            if (lookupKey != null) {
+                if (Map.class.isAssignableFrom(type)) {
+                    answer = new LinkedHashMap<>();
+                } else if (Collection.class.isAssignableFrom(type)) {
+                    answer = new ArrayList<>();
+                } else if (type.isArray()) {
+                    answer = Array.newInstance(type.getComponentType(), 0);
+                } else {
+                    // not a map or list
+                    throw new IllegalArgumentException(
+                            "Cannot set property: " + property
+                                                       + " as either a Map/List/array because target bean is not a Map, List or array type: "
+                                                       + target);
+                }
+                boolean hit = configurer.configure(context, target, key, answer, ignoreCase);
+                if (!hit) {
+                    throw new IllegalArgumentException(
+                            "Cannot set property: " + key
+                                                       + " as an map/list/array because target bean has no suitable setter method");
+                }
+            }
+        }
+
         if (answer instanceof Map && lookupKey != null) {
             Map map = (Map) answer;
-            answer = map.getOrDefault(lookupKey, defaultValue);
+            answer = map.get(lookupKey);
+            if (answer == null) {
+                // okay there was no element in the list, so create a new empty instance if we can know its parameter type
+                Class<?> parameterType = null;
+                if (configurer instanceof PropertyConfigurerGetter) {
+                    parameterType = (Class<?>) ((PropertyConfigurerGetter) configurer).getCollectionValueType(target, key,
+                            ignoreCase);
+                }
+                if (parameterType != null
+                        && org.apache.camel.util.ObjectHelper.hasDefaultPublicNoArgConstructor(parameterType)) {
+                    Object instance = context.getInjector().newInstance(parameterType);
+                    map.put(lookupKey, instance);
+                    answer = instance;
+                }
+            }
         } else if (answer instanceof List) {
             List list = (List) answer;
             if (isNotEmpty(lookupKey)) {
                 int idx = Integer.parseInt(lookupKey);
-                answer = list.get(idx);
+                answer = list.size() > idx ? list.get(idx) : null;
             } else {
                 if (list.isEmpty()) {
                     answer = null;
@@ -869,45 +1326,202 @@ public final class PropertyBindingSupport {
                     answer = list.get(list.size() - 1);
                 }
             }
+            if (answer == null) {
+                // okay there was no element in the list, so create a new empty instance if we can know its parameter type
+                Class<?> parameterType = null;
+                if (configurer instanceof PropertyConfigurerGetter) {
+                    parameterType = (Class<?>) ((PropertyConfigurerGetter) configurer).getCollectionValueType(target, key,
+                            ignoreCase);
+                }
+                if (parameterType != null
+                        && org.apache.camel.util.ObjectHelper.hasDefaultPublicNoArgConstructor(parameterType)) {
+                    Object instance = context.getInjector().newInstance(parameterType);
+                    list.add(instance);
+                    answer = instance;
+                }
+            }
         } else if (type != null && type.isArray() && lookupKey != null) {
+            Object[] arr = (Object[]) answer;
             int idx = Integer.parseInt(lookupKey);
-            int size = answer != null ? Array.getLength(answer) : 0;
+            int size = arr.length;
             if (idx >= size) {
-                answer = answer != null ? Arrays.copyOf((Object[]) answer, idx + 1) : Array.newInstance(Object.class, idx + 1);
+                // index outside current array size, so enlarge array
+                arr = Arrays.copyOf(arr, idx + 1);
+                // replace array
+                boolean hit = configurer.configure(context, target, key, arr, true);
+                if (!hit) {
+                    throw new IllegalArgumentException(
+                            "Cannot set property: " + key
+                                                       + " as an array because target bean has no setter method for the array");
+                }
+            }
+            Object instance = arr[idx];
+            if (instance == null) {
+                instance = context.getInjector().newInstance(type.getComponentType());
+                Array.set(arr, idx, instance);
             }
+            answer = instance;
+        }
+
+        return answer;
+    }
+
+    private static Object getOrCreatePropertyOgnlPathViaReflection(
+            CamelContext context, Object target, String property, boolean ignoreCase) {
+        String key = property;
+        String lookupKey = null;
+
+        // support maps in keys
+        if (property.contains("[") && property.endsWith("]")) {
+            int pos = property.indexOf('[');
+            lookupKey = property.substring(pos + 1, property.length() - 1);
+            key = property.substring(0, pos);
+        }
+
+        Object answer;
+        Class<?> type = null;
 
-            Object result = Array.get(answer, idx);
-            if (result == null) {
-                result = context.getInjector().newInstance(type.getComponentType());
-                Array.set(answer, idx, result);
+        final BeanIntrospection introspection = context.adapt(ExtendedCamelContext.class).getBeanIntrospection();
+        answer = introspection.getOrElseProperty(target, key, null, ignoreCase);
+        if (answer != null) {
+            type = answer.getClass();
+        } else {
+            // the value is null then lets find out what type it is via its getter
+            try {
+                Method method = introspection.getPropertyGetter(target.getClass(), key, ignoreCase);
+                if (method != null) {
+                    type = method.getReturnType();
+                }
+            } catch (NoSuchMethodException e) {
+                // ignore
             }
+        }
 
-            if (idx >= size) {
-                // replace array
-                if (configurer != null) {
-                    configurer.configure(context, target, key, answer, true);
+        if (answer == null && type == null) {
+            // not possible to build
+            return null;
+        }
+
+        if (answer == null) {
+            if (lookupKey != null) {
+                if (Map.class.isAssignableFrom(type)) {
+                    answer = new LinkedHashMap<>();
+                } else if (Collection.class.isAssignableFrom(type)) {
+                    answer = new ArrayList<>();
+                } else if (type.isArray()) {
+                    answer = Array.newInstance(type.getComponentType(), 0);
                 } else {
-                    // fallback to reflection
-                    boolean hit;
-                    try {
-                        hit = IntrospectionSupport.setProperty(context.getTypeConverter(), target, key, answer);
-                    } catch (Exception e) {
-                        throw new IllegalArgumentException(
-                                "Cannot set property: " + key
-                                                           + " as an array because target bean has no setter method for the array");
+                    // not a map or list
+                    throw new IllegalArgumentException(
+                            "Cannot set property: " + property
+                                                       + " as either a Map/List/array because target bean is not a Map, List or array type: "
+                                                       + target);
+                }
+                boolean hit = false;
+                try {
+                    hit = introspection.setProperty(context, target, key, answer);
+                } catch (Exception e) {
+                    // ignore
+                }
+                if (!hit) {
+                    throw new IllegalArgumentException(
+                            "Cannot set property: " + key
+                                                       + " as an map/list/array because target bean has no suitable setter method");
+                }
+            }
+        }
+
+        if (answer instanceof Map && lookupKey != null) {
+            Map map = (Map) answer;
+            answer = map.get(lookupKey);
+            if (answer == null) {
+                Class<?> parameterType = null;
+                try {
+                    // our only hope is that the List has getter/setter that use a generic type to specify what kind of class
+                    // they contains so we can use that to know the parameter type
+                    Method method = introspection.getPropertyGetter(target.getClass(), key, ignoreCase);
+                    if (method != null) {
+                        String typeName = method.getGenericReturnType().getTypeName();
+                        String fqn = StringHelper.between(typeName, "<", ">");
+                        if (fqn != null) {
+                            parameterType = context.getClassResolver().resolveClass(fqn);
+                        }
                     }
-                    if (!hit) {
-                        throw new IllegalArgumentException(
-                                "Cannot set property: " + key
-                                                           + " as an array because target bean has no setter method for the array");
+                } catch (Exception e) {
+                    // ignore
+                }
+                if (parameterType != null
+                        && org.apache.camel.util.ObjectHelper.hasDefaultPublicNoArgConstructor(parameterType)) {
+                    Object instance = context.getInjector().newInstance(parameterType);
+                    map.put(lookupKey, instance);
+                    answer = instance;
+                }
+            }
+        } else if (answer instanceof List) {
+            List list = (List) answer;
+            if (isNotEmpty(lookupKey)) {
+                int idx = Integer.parseInt(lookupKey);
+                answer = list.size() > idx ? list.get(idx) : null;
+            } else {
+                if (list.isEmpty()) {
+                    answer = null;
+                } else {
+                    answer = list.get(list.size() - 1);
+                }
+            }
+            if (answer == null) {
+                // okay there was no element in the list, so create a new empty instance if we can know its parameter type
+                Class<?> parameterType = null;
+                try {
+                    // our only hope is that the List has getter/setter that use a generic type to specify what kind of class
+                    // they contains so we can use that to know the parameter type
+                    Method method = introspection.getPropertyGetter(target.getClass(), key, ignoreCase);
+                    if (method != null) {
+                        String typeName = method.getGenericReturnType().getTypeName();
+                        String fqn = StringHelper.between(typeName, "<", ">");
+                        if (fqn != null) {
+                            parameterType = context.getClassResolver().resolveClass(fqn);
+                        }
                     }
+                } catch (Exception e) {
+                    // ignore
+                }
+                if (parameterType != null
+                        && org.apache.camel.util.ObjectHelper.hasDefaultPublicNoArgConstructor(parameterType)) {
+                    Object instance = context.getInjector().newInstance(parameterType);
+                    list.add(instance);
+                    answer = instance;
                 }
             }
-
-            answer = result;
+        } else if (type != null && type.isArray() && lookupKey != null) {
+            Object[] arr = (Object[]) answer;
+            int idx = Integer.parseInt(lookupKey);
+            int size = arr.length;
+            if (idx >= size) {
+                // index outside current array size, so enlarge array
+                arr = Arrays.copyOf(arr, idx + 1);
+                // replace array
+                boolean hit = false;
+                try {
+                    hit = introspection.setProperty(context, target, key, arr);
+                } catch (Exception e) {
+                    // ignore
+                }
+                if (!hit) {
+                    throw new IllegalArgumentException(
+                            "Cannot set property: " + key
+                                                       + " as an array because target bean has no setter method for the array");
+                }
+            }
+            Object instance = arr[idx];
+            if (instance == null) {
+                instance = context.getInjector().newInstance(type.getComponentType());
+                Array.set(arr, idx, instance);
+            }
+            answer = instance;
         }
 
-        return answer != null ? answer : defaultValue;
+        return answer;
     }
 
     private static Method findBestSetterMethod(
@@ -958,59 +1572,17 @@ public final class PropertyBindingSupport {
         return type != null && !type.isPrimitive() && !type.getName().startsWith("java.");
     }
 
-    private static void setReferenceProperties(CamelContext context, Object target, Map<String, Object> parameters) {
-        Iterator<Map.Entry<String, Object>> it = parameters.entrySet().iterator();
-        while (it.hasNext()) {
-            Map.Entry<String, Object> entry = it.next();
-            String name = entry.getKey();
-
-            final boolean optional = name.startsWith("?");
-            if (optional) {
-                name = name.substring(1);
-            }
-
-            // we only support basic keys
-            if (name.contains(".") || name.contains("[") || name.contains("]")) {
-                continue;
-            }
-
-            Object v = entry.getValue();
-            String value = v != null ? v.toString() : null;
-            if (isReferenceParameter(value)) {
-                try {
-                    // use configurer if possible
-                    boolean hit = false;
-                    GeneratedPropertyConfigurer configurer = context.adapt(ExtendedCamelContext.class).getConfigurerResolver()
-                            .resolvePropertyConfigurer(target.getClass().getSimpleName(), context);
-                    if (configurer != null) {
-                        hit = configurer.configure(context, target, name, value, false);
-                    }
-                    if (!hit) {
-                        // fallback to reflection
-                        hit = context.adapt(ExtendedCamelContext.class).getBeanIntrospection().setProperty(context,
-                                context.getTypeConverter(), target, name, null, value, true, false, false);
-                    }
-                    if (hit) {
-                        // must remove as its a valid option and we could configure it
-                        it.remove();
-                    }
-                } catch (Exception e) {
-                    throw new PropertyBindingException(target, e);
-                }
-            }
-        }
-    }
-
     /**
      * Is the given parameter a reference parameter (starting with a # char)
      *
-     * @param  parameter the parameter
-     * @return           <tt>true</tt> if its a reference parameter
+     * @param  obj the parameter
+     * @return     <tt>true</tt> if its a reference parameter
      */
-    private static boolean isReferenceParameter(String parameter) {
-        if (parameter == null) {
+    private static boolean isReferenceParameter(Object obj) {
+        if (obj == null) {
             return false;
         }
+        String parameter = obj.toString();
         parameter = parameter.trim();
         if (!parameter.startsWith("#")) {
             return false;
@@ -1021,8 +1593,8 @@ public final class PropertyBindingSupport {
         if (parameter.equals("#autowired")
                 || parameter.startsWith("#bean:")
                 || parameter.startsWith("#class:")
-                || parameter.startsWith("#type")
-                || parameter.startsWith("#property")) {
+                || parameter.startsWith("#type:")
+                || parameter.startsWith("#property:")) {
             return false;
         }
 
diff --git a/core/camel-support/src/main/java/org/apache/camel/support/ScheduledPollEndpoint.java b/core/camel-support/src/main/java/org/apache/camel/support/ScheduledPollEndpoint.java
index 7a68315..df27ed5 100644
--- a/core/camel-support/src/main/java/org/apache/camel/support/ScheduledPollEndpoint.java
+++ b/core/camel-support/src/main/java/org/apache/camel/support/ScheduledPollEndpoint.java
@@ -71,10 +71,9 @@ public abstract class ScheduledPollEndpoint extends DefaultEndpoint {
     @UriParam(label = "consumer,scheduler",
               description = "If greedy is enabled, then the ScheduledPollConsumer will run immediately again, if the previous run polled 1 or more messages.")
     private boolean greedy;
-    @UriParam(enums = "none,spring,quartz",
-              defaultValue = "none", label = "consumer,scheduler",
-              description = "To use a cron scheduler from either camel-spring or camel-quartz component")
-    private String scheduler = "none";
+    @UriParam(defaultValue = "none", label = "consumer,scheduler",
+              description = "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler")
+    private Object scheduler = "none";
     @UriParam(prefix = "scheduler.", multiValue = true, label = "consumer,scheduler",
               description = "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler.")
     private Map<String, Object> schedulerProperties;
@@ -127,9 +126,9 @@ public abstract class ScheduledPollEndpoint extends DefaultEndpoint {
         }
 
         // options take precedence
-        String schedulerName = (String) options.getOrDefault("scheduler", scheduler);
-        if (schedulerName != null) {
-            if ("spring".equals(schedulerName)) {
+        Object schedulerKey = options.getOrDefault("scheduler", scheduler);
+        if (schedulerKey != null) {
+            if ("spring".equals(schedulerKey)) {
                 // special for scheduler if its "spring" or "quartz"
                 try {
                     Class<? extends ScheduledPollConsumerScheduler> clazz = getCamelContext().getClassResolver()
@@ -141,7 +140,7 @@ public abstract class ScheduledPollEndpoint extends DefaultEndpoint {
                                                        + " from classpath. Make sure camel-spring.jar is on the classpath.",
                             e);
                 }
-            } else if ("quartz".equals(schedulerName)) {
+            } else if ("quartz".equals(schedulerKey)) {
                 // special for scheduler if its "spring" or "quartz"
                 try {
                     Class<? extends ScheduledPollConsumerScheduler> clazz = getCamelContext().getClassResolver()
@@ -153,13 +152,22 @@ public abstract class ScheduledPollEndpoint extends DefaultEndpoint {
                                                        + " from classpath. Make sure camel-quartz.jar is on the classpath.",
                             e);
                 }
-            } else if (!"none".equals(schedulerName)) {
-                // must refer to a custom scheduler by the given name
-                if (EndpointHelper.isReferenceParameter(schedulerName)) {
-                    schedulerName = schedulerName.substring(1);
+            } else if (!"none".equals(schedulerKey)) {
+                if (schedulerKey instanceof String) {
+                    String str = schedulerKey.toString();
+                    // must refer to a custom scheduler by the given name
+                    if (EndpointHelper.isReferenceParameter(str)) {
+                        str = str.substring(1);
+                    }
+                    consumerScheduler = CamelContextHelper.mandatoryLookup(getCamelContext(), str,
+                            ScheduledPollConsumerScheduler.class);
+                } else if (schedulerKey instanceof ScheduledPollConsumerScheduler) {
+                    consumerScheduler = (ScheduledPollConsumerScheduler) schedulerKey;
+                } else {
+                    throw new IllegalArgumentException(
+                            "Scheduler must either be a reference to a custom scheduler or an ScheduledPollConsumerScheduler type, was: "
+                                                       + schedulerKey.getClass().getName());
                 }
-                consumerScheduler = CamelContextHelper.mandatoryLookup(getCamelContext(), schedulerName,
-                        ScheduledPollConsumerScheduler.class);
             }
         }
     }
@@ -335,11 +343,11 @@ public abstract class ScheduledPollEndpoint extends DefaultEndpoint {
      * text spring to use the Spring based; and use the text #myScheduler to refer to a custom scheduler by its id in
      * the Registry. See Quartz page for an example.
      */
-    public void setScheduler(String schedulerName) {
+    public void setScheduler(Object schedulerName) {
         this.scheduler = schedulerName;
     }
 
-    public String getScheduler() {
+    public Object getScheduler() {
         return scheduler;
     }
 
diff --git a/core/camel-util/src/main/java/org/apache/camel/util/StringHelper.java b/core/camel-util/src/main/java/org/apache/camel/util/StringHelper.java
index 8ca422d..eb3d339 100644
--- a/core/camel-util/src/main/java/org/apache/camel/util/StringHelper.java
+++ b/core/camel-util/src/main/java/org/apache/camel/util/StringHelper.java
@@ -863,4 +863,18 @@ public final class StringHelper {
         return answer.toString().toLowerCase(Locale.ENGLISH);
     }
 
+    /**
+     * Does the string starts with the given prefix (ignore case).
+     *
+     * @param text   the string
+     * @param prefix the prefix
+     */
+    public static boolean startsWithIgnoreCase(String text, String prefix) {
+        if (text != null && prefix != null) {
+            return prefix.length() > text.length() ? false : text.regionMatches(true, 0, prefix, 0, prefix.length());
+        } else {
+            return text == null && prefix == null;
+        }
+    }
+
 }
diff --git a/docs/components/modules/ROOT/pages/apns-component.adoc b/docs/components/modules/ROOT/pages/apns-component.adoc
index 271872c..e37c592 100644
--- a/docs/components/modules/ROOT/pages/apns-component.adoc
+++ b/docs/components/modules/ROOT/pages/apns-component.adoc
@@ -122,7 +122,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/docs/components/modules/ROOT/pages/as2-component.adoc b/docs/components/modules/ROOT/pages/as2-component.adoc
index 0ce32bf..995370c 100644
--- a/docs/components/modules/ROOT/pages/as2-component.adoc
+++ b/docs/components/modules/ROOT/pages/as2-component.adoc
@@ -136,7 +136,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/docs/components/modules/ROOT/pages/atom-component.adoc b/docs/components/modules/ROOT/pages/atom-component.adoc
index 37df74f..a9ec35b 100644
--- a/docs/components/modules/ROOT/pages/atom-component.adoc
+++ b/docs/components/modules/ROOT/pages/atom-component.adoc
@@ -108,7 +108,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/docs/components/modules/ROOT/pages/aws-ddbstream-component.adoc b/docs/components/modules/ROOT/pages/aws-ddbstream-component.adoc
index 839c83f..74c9007 100644
--- a/docs/components/modules/ROOT/pages/aws-ddbstream-component.adoc
+++ b/docs/components/modules/ROOT/pages/aws-ddbstream-component.adoc
@@ -118,7 +118,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/docs/components/modules/ROOT/pages/aws-kinesis-component.adoc b/docs/components/modules/ROOT/pages/aws-kinesis-component.adoc
index ceb7d5e..ee12ded 100644
--- a/docs/components/modules/ROOT/pages/aws-kinesis-component.adoc
+++ b/docs/components/modules/ROOT/pages/aws-kinesis-component.adoc
@@ -125,7 +125,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/docs/components/modules/ROOT/pages/aws-s3-component.adoc b/docs/components/modules/ROOT/pages/aws-s3-component.adoc
index 7f0cd0a..9d538e6 100644
--- a/docs/components/modules/ROOT/pages/aws-s3-component.adoc
+++ b/docs/components/modules/ROOT/pages/aws-s3-component.adoc
@@ -184,7 +184,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/docs/components/modules/ROOT/pages/aws-sqs-component.adoc b/docs/components/modules/ROOT/pages/aws-sqs-component.adoc
index 1f56b65..b149c3b 100644
--- a/docs/components/modules/ROOT/pages/aws-sqs-component.adoc
+++ b/docs/components/modules/ROOT/pages/aws-sqs-component.adoc
@@ -172,7 +172,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/docs/components/modules/ROOT/pages/aws2-ddbstream-component.adoc b/docs/components/modules/ROOT/pages/aws2-ddbstream-component.adoc
index 805f342..15c8556 100644
--- a/docs/components/modules/ROOT/pages/aws2-ddbstream-component.adoc
+++ b/docs/components/modules/ROOT/pages/aws2-ddbstream-component.adoc
@@ -125,7 +125,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/docs/components/modules/ROOT/pages/aws2-kinesis-component.adoc b/docs/components/modules/ROOT/pages/aws2-kinesis-component.adoc
index 37c9e35..782a82f 100644
--- a/docs/components/modules/ROOT/pages/aws2-kinesis-component.adoc
+++ b/docs/components/modules/ROOT/pages/aws2-kinesis-component.adoc
@@ -132,7 +132,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/docs/components/modules/ROOT/pages/aws2-s3-component.adoc b/docs/components/modules/ROOT/pages/aws2-s3-component.adoc
index ef457a1..1ccb1c0 100644
--- a/docs/components/modules/ROOT/pages/aws2-s3-component.adoc
+++ b/docs/components/modules/ROOT/pages/aws2-s3-component.adoc
@@ -186,7 +186,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/docs/components/modules/ROOT/pages/aws2-sqs-component.adoc b/docs/components/modules/ROOT/pages/aws2-sqs-component.adoc
index 19362f0..5751875 100644
--- a/docs/components/modules/ROOT/pages/aws2-sqs-component.adoc
+++ b/docs/components/modules/ROOT/pages/aws2-sqs-component.adoc
@@ -179,7 +179,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/docs/components/modules/ROOT/pages/beanstalk-component.adoc b/docs/components/modules/ROOT/pages/beanstalk-component.adoc
index f369a23..afc91a0 100644
--- a/docs/components/modules/ROOT/pages/beanstalk-component.adoc
+++ b/docs/components/modules/ROOT/pages/beanstalk-component.adoc
@@ -133,7 +133,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/docs/components/modules/ROOT/pages/box-component.adoc b/docs/components/modules/ROOT/pages/box-component.adoc
index 8018bd7..b8ff47e 100644
--- a/docs/components/modules/ROOT/pages/box-component.adoc
+++ b/docs/components/modules/ROOT/pages/box-component.adoc
@@ -136,7 +136,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
 | *timeUnit* (scheduler) | Time unit for initialDelay and delay options. The value can be one of: NANOSECONDS, MICROSECONDS, MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS | MILLISECONDS | TimeUnit
diff --git a/docs/components/modules/ROOT/pages/braintree-component.adoc b/docs/components/modules/ROOT/pages/braintree-component.adoc
index bf8788b..9063167 100644
--- a/docs/components/modules/ROOT/pages/braintree-component.adoc
+++ b/docs/components/modules/ROOT/pages/braintree-component.adoc
@@ -116,7 +116,7 @@ with the following path and query parameters:
 | *repeatCount* (scheduler) | Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever. | 0 | long
 | *runLoggingLevel* (scheduler) | The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. The value can be one of: TRACE, DEBUG, INFO, WARN, ERROR, OFF | TRACE | LoggingLevel
 | *scheduledExecutorService* (scheduler) | Allows for configuring a custom/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool. |  | ScheduledExecutorService
-| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. The value can be one of: none, spring, quartz | none | String
+| *scheduler* (scheduler) | To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler | none | Object
 | *schedulerProperties* (scheduler) | To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler. |  | Map
 | *startScheduler* (scheduler) | Whether the scheduler should be auto started. | true | boolean
... 642 lines suppressed ...


[camel] 04/11: CAMEL-15394: PropertyBindingSupport: Fixed NPE

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

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

commit 0d2f3e996b80a068efbf4213741010bfe889d600
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Aug 22 18:35:47 2020 +0200

    CAMEL-15394: PropertyBindingSupport: Fixed NPE
---
 .../java/org/apache/camel/support/PropertyBindingSupport.java  | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java b/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
index a2a558f..5e53862 100644
--- a/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
+++ b/core/camel-support/src/main/java/org/apache/camel/support/PropertyBindingSupport.java
@@ -589,8 +589,10 @@ public final class PropertyBindingSupport {
                 return Integer.compare(n1, n2);
             }
             // 2) sort by reference (as it may refer to other beans in the OGNL graph)
-            boolean ref1 = map.get(o1).toString().startsWith("#");
-            boolean ref2 = map.get(o2).toString().startsWith("#");
+            Object v1 = map.get(o1);
+            Object v2 = map.get(o2);
+            boolean ref1 = v1 != null && v1.toString().startsWith("#");
+            boolean ref2 = v2 != null && v2.toString().startsWith("#");
             if (ref1 != ref2) {
                 return Boolean.compare(ref1, ref2);
             }
@@ -630,6 +632,10 @@ public final class PropertyBindingSupport {
             boolean reference, boolean placeholder,
             PropertyConfigurer configurer) {
 
+        if (properties == null || properties.isEmpty()) {
+            return false;
+        }
+
         boolean answer = false;
 
         if (optionPrefix != null) {


[camel] 11/11: Regen

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

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

commit e3bedb753de6633aec55c9bf3a5e4c20f1154885
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sun Aug 23 15:13:10 2020 +0200

    Regen
---
 .../apache/camel/catalog/schemas/camel-spring.xsd  | 12967 +++++++++++++++----
 1 file changed, 10212 insertions(+), 2755 deletions(-)

diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
index 902cce5..590a421 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
@@ -1,611 +1,758 @@
 <?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://camel.apache.org/schema/spring" elementFormDefault="qualified" targetNamespace="http://camel.apache.org/schema/spring" version="1.0">
-
+    
   <xs:element name="aggregate" type="tns:aggregateDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Aggregates many messages into a single message
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="any23" type="tns:any23DataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Extract RDF data from HTML documents.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="apiKey" type="tns:restSecurityApiKey">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Rest security basic auth definition
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="asn1" type="tns:asn1DataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Encode and decode data structures using Abstract Syntax Notation One (ASN.1).
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="avro" type="tns:avroDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Serialize and deserialize messages using Apache Avro binary data format.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="barcode" type="tns:barcodeDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Transform strings to various 1D/2D barcode bitmap formats and back.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="base64" type="tns:base64DataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Encode and decode data using Base64.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="basicAuth" type="tns:restSecurityBasicAuth">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Rest security basic auth definition
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="batch-config" type="tns:batchResequencerConfig">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Configures batch-processing resequence eip.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="bean" type="tns:beanDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Calls a java bean
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="beanPostProcessor" type="tns:camelBeanPostProcessor">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Spring specific DefaultCamelBeanPostProcessor which uses Spring
 BeanPostProcessor to post process beans.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="beanio" type="tns:beanioDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal and unmarshal Java beans to and from flat files (such as CSV, delimited,
 or fixed length formats).
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="bindy" type="tns:bindyDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal and unmarshal Java beans from and to flat payloads (such as CSV,
 delimited, fixed length formats, or FIX messages).
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="blacklistServiceFilter" type="tns:blacklistServiceCallServiceFilterConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="cachingServiceDiscovery" type="tns:cachingServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="camelContext" type="tns:camelContextFactoryBean">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 CamelContext using XML configuration.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="cbor" type="tns:cborDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Unmarshal a CBOR payload to POJO and back.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="choice" type="tns:choiceDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Routes messages based on a series of predicates
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="circuitBreaker" type="tns:circuitBreakerDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="claimCheck" type="tns:claimCheckDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 The Claim Check EIP allows you to replace message content with a claim check (a
 unique key), which can be used to retrieve the message content at a later time.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="combinedServiceDiscovery" type="tns:combinedServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="combinedServiceFilter" type="tns:combinedServiceCallServiceFilterConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="constant" type="tns:constantExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 A fixed value set only once during the route startup.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="consulServiceDiscovery" type="tns:consulServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="consumerTemplate" type="tns:camelConsumerTemplateFactoryBean">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Configures a ConsumerTemplate
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="contextScan" type="tns:contextScanDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Scans for Java org.apache.camel.builder.RouteBuilder instances in the context
 org.apache.camel.spi.Registry .
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="convertBodyTo" type="tns:convertBodyDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Converts the message body to another type
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="crypto" type="tns:cryptoDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Encrypt and decrypt messages using Java Cryptography Extension (JCE).
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="csv" type="tns:csvDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Handle CSV (Comma Separated Values) payloads.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="customDataFormat" type="tns:customDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Delegate to a custom org.apache.camel.spi.DataFormat implementation via Camel
 registry.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="customLoadBalancer" type="tns:customLoadBalancerDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Custom load balancer
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="customServiceFilter" type="tns:customServiceCallServiceFilterConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="dataFormats" type="tns:dataFormatsDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Configure data formats.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="defaultLoadBalancer" type="tns:defaultServiceCallServiceLoadBalancerConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="delay" type="tns:delayDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Delays processing for a specified length of time
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="delete" type="tns:deleteVerbDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Rest DELETE command
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="description" type="tns:descriptionDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To provide comments about the node.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="dnsServiceDiscovery" type="tns:dnsServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="doCatch" type="tns:catchDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Catches exceptions as part of a try, catch, finally block
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="doFinally" type="tns:finallyDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Path traversed when a try, catch, finally block exits
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="doTry" type="tns:tryDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marks the beginning of a try, catch, finally block
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="dynamicRouter" type="tns:dynamicRouterDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Routes messages based on dynamic rules
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="endpoint" type="tns:camelEndpointFactoryBean">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Camel endpoint configuration
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="enrich" type="tns:enrichDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Enriches a message with data from a secondary resource
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="errorHandler" type="tns:errorHandlerDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Error handler settings
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="etcdServiceDiscovery" type="tns:etcdServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="exchangeProperty" type="tns:exchangePropertyExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Get the value of named Camel Exchange property.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="export" type="tns:camelServiceExporterDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Used for export a service using Spring Remoting to hide the network call using
 an interface.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="expression" type="tns:expressionSubElementDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 A useful base class for an expression
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="expressionDefinition" type="tns:expression"/>
-
+    
   <xs:element name="failover" type="tns:failoverLoadBalancerDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Failover load balancer The failover load balancer is capable of trying the next
 processor in case an Exchange failed with an exception during processing. You
 can constrain the failover to activate only when one exception of a list you
 specify occurs. If you do not specify a list any exception will cause fail over
 to occur. This balancer uses the same strategy for matching exceptions as the
 Exception Clause does for the onException.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="faultToleranceConfiguration" type="tns:faultToleranceConfigurationDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 MicroProfile Fault Tolerance Circuit Breaker EIP configuration
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="fhirJson" type="tns:fhirJsonDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshall and unmarshall FHIR objects to/from JSON.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="fhirXml" type="tns:fhirXmlDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshall and unmarshall FHIR objects to/from XML.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="filter" type="tns:filterDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Filter out messages based using a predicate
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="flatpack" type="tns:flatpackDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal and unmarshal Java lists and maps to/from flat files (such as CSV,
 delimited, or fixed length formats) using Flatpack library.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="fluentTemplate" type="tns:camelFluentProducerTemplateFactoryBean">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Configures a org.apache.camel.FluentProducerTemplate
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="from" type="tns:fromDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Act as a message source as input to a route
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="get" type="tns:getVerbDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Rest GET command
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="globalOption" type="tns:globalOptionDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Models a string key/value pair for configuring some global options on a Camel
 context such as max debug log length.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="globalOptions" type="tns:globalOptionsDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Models a series of string key/value pairs for configuring some global options on
 a Camel context such as max debug log length.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="grok" type="tns:grokDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Unmarshal unstructured data to objects using Logstash based Grok patterns.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="groovy" type="tns:groovyExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Evaluate a Groovy script.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="gzipdeflater" type="tns:gzipDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Compress and decompress messages using java.util.zip.GZIPStream.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="head" type="tns:headVerbDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Rest HEAD command
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="header" type="tns:headerExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Get the value of the named Camel Message header.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="healthyServiceFilter" type="tns:healthyServiceCallServiceFilterConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="hl7" type="tns:hl7DataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal and unmarshal HL7 (Health Care) model objects using the HL7 MLLP codec.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="hl7terser" type="tns:hl7TerserExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Get the value of an HL7 message field specified by terse location specification
 syntax.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="hystrixConfiguration" type="tns:hystrixConfigurationDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Hystrix Circuit Breaker EIP configuration
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="ical" type="tns:icalDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal and unmarshal iCal (.ics) documents to/from model objects provided by
 the iCal4j library.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="idempotentConsumer" type="tns:idempotentConsumerDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Filters out duplicate messages
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="inOnly" type="tns:inOnlyDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marks the exchange pattern for the route to one way
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="inOut" type="tns:inOutDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marks the exchange pattern for the route to request/reply
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="inputType" type="tns:inputTypeDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Set the expected data type of the input message. If the actual message type is
 different at runtime, camel look for a required Transformer and apply if exists.
 If validate attribute is true then camel applies Validator as well. Type name
@@ -615,242 +762,300 @@ consists of two parts, 'scheme' and 'name' connected with ':'. For Java type
 it works like a wildcard. If only 'xml' is specified, all the XML message
 matches. It's handy to add only one transformer/validator for all the
 transformation from/to XML.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="intercept" type="tns:interceptDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Intercepts a message at each step in the route
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="interceptFrom" type="tns:interceptFromDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Intercepts incoming messages
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="interceptSendToEndpoint" type="tns:interceptSendToEndpointDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Intercepts messages being sent to an endpoint
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="jacksonxml" type="tns:jacksonXMLDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Unmarshal a XML payloads to POJOs and back using XMLMapper extension of Jackson.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="jaxb" type="tns:jaxbDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Unmarshal XML payloads to POJOs and back using JAXB2 XML marshalling standard.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="jmxAgent" type="tns:camelJMXAgentDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 JMX configuration.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="json" type="tns:jsonDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal POJOs to JSON and back.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="jsonApi" type="tns:jsonApiDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal and unmarshal JSON:API resources using JSONAPI-Converter library.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="jsonpath" type="tns:jsonPathExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Evaluate a JsonPath expression against a JSON message body.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="keyStoreParameters" type="tns:keyStoreParametersFactoryBean"/>
-
+    
   <xs:element name="kubernetesServiceDiscovery" type="tns:kubernetesServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="language" type="tns:languageExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Evaluate the given expression using the specified language.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="loadBalance" type="tns:loadBalanceDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Balances message processing among a number of nodes
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="loadBalancerConfiguration" type="tns:serviceCallServiceLoadBalancerConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="log" type="tns:logDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Logs the defined message to the logger
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="loop" type="tns:loopDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Processes a message multiple times
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="lzf" type="tns:lzfDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Compress and decompress streams using LZF deflate algorithm.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="marshal" type="tns:marshalDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshals data into a specified format for transmission over a transport or
 component
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="method" type="tns:methodCallExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Call a method of the specified Java bean passing the Exchange, Body or specific
 headers to it.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="mime-multipart" type="tns:mimeMultipartDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal Camel messages with attachments into MIME-Multipart messages and back.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="multicast" type="tns:multicastDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Routes the same message to multiple paths either sequentially or in parallel.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="mvel" type="tns:mvelExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Evaluate an MVEL template against the Camel Exchange.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="oauth2" type="tns:restSecurityOAuth2">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Rest security OAuth2 definition
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="ognl" type="tns:ognlExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Evaluate an Apache Commons Object Graph Navigation Library (OGNL) expression
 against the Camel Exchange.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="onCompletion" type="tns:onCompletionDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Route to be executed when normal route processing completes
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="onException" type="tns:onExceptionDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Route to be executed when an exception is thrown
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="onFallback" type="tns:onFallbackDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Route to be executed when Hystrix EIP executes fallback
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="optimisticLockRetryPolicy" type="tns:optimisticLockRetryPolicyDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To configure optimistic locking
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="otherwise" type="tns:otherwiseDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Route to be executed when all other choices evaluate to false
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="outputType" type="tns:outputTypeDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Set the expected data type of the output message. If the actual message type is
 different at runtime, camel look for a required Transformer and apply if exists.
 If validate attribute is true then camel applies Validator as well. Type name
@@ -860,1629 +1065,2164 @@ consists of two parts, 'scheme' and 'name' connected with ':'. For Java type
 it works like a wildcard. If only 'xml' is specified, all the XML message
 matches. It's handy to add only one transformer/validator for all the XML-Java
 transformation.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="packageScan" type="tns:packageScanDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Scans for Java org.apache.camel.builder.RouteBuilder classes in java packages
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="param" type="tns:restOperationParamDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To specify the rest operation parameters using Swagger. This maps to the Swagger
 Parameter Message Object.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="passThroughServiceFilter" type="tns:passThroughServiceCallServiceFilterConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="patch" type="tns:patchVerbDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Rest PATCH command
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="pgp" type="tns:pgpDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Encrypt and decrypt messages using Java Cryptographic Extension (JCE) and PGP.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="pipeline" type="tns:pipelineDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Routes the message to a sequence of processors.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="policy" type="tns:policyDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Defines a policy the route will use
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="pollEnrich" type="tns:pollEnrichDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Enriches messages with data polled from a secondary resource
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="post" type="tns:postVerbDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Rest POST command
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="process" type="tns:processDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Calls a Camel processor
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="propertiesFunction" type="tns:camelPropertyPlaceholderFunctionDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Function to use with properties placeholder
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="propertiesLocation" type="tns:camelPropertyPlaceholderLocationDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Properties to use with properties placeholder
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="property" type="tns:propertyDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 A key value pair
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="propertyPlaceholder" type="tns:camelPropertyPlaceholderDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Properties placeholder
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="protobuf" type="tns:protobufDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Serialize and deserialize Java objects using Google's Protocol buffers.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="proxy" type="tns:camelProxyFactoryDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To proxy a service call using a interface
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="put" type="tns:putVerbDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Rest PUT command
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="random" type="tns:randomLoadBalancerDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Random load balancer The random load balancer selects a random endpoint for each
 exchange.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="recipientList" type="tns:recipientListDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Routes messages to a number of dynamically specified recipients (dynamic to)
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="redeliveryPolicy" type="tns:redeliveryPolicyDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To configure re-delivery for error handling
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="redeliveryPolicyProfile" type="tns:camelRedeliveryPolicyFactoryBean">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Configuration of redelivery policy.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="ref" type="tns:refExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Look up an expression in the Camel Registry and evaluate it.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="removeHeader" type="tns:removeHeaderDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Removes a named header from the message
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="removeHeaders" type="tns:removeHeadersDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Removes message headers whose name matches a specified pattern
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="removeProperties" type="tns:removePropertiesDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Removes message exchange properties whose name matches a specified pattern
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="removeProperty" type="tns:removePropertyDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Removes a named property from the message exchange
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="resequence" type="tns:resequenceDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Resequences (re-order) messages based on an expression
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="resilience4jConfiguration" type="tns:resilience4JConfigurationDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Resilience4j Circuit Breaker EIP configuration
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="responseHeader" type="tns:restOperationResponseHeaderDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To specify the rest operation response headers using Swagger. This maps to the
 Swagger Response Header Object.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="responseMessage" type="tns:restOperationResponseMsgDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To specify the rest operation response messages using Swagger. This maps to the
 Swagger Response Message Object.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="rest" type="tns:restDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Defines a rest service using the rest-dsl
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="restBinding" type="tns:restBindingDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To configure rest binding
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="restConfiguration" type="tns:restConfigurationDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To configure rest
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="restContext" type="tns:camelRestContextFactoryBean">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Configuration of REST services using rest-dsl using XML
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="restContextRef" type="tns:restContextRefDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To refer to an XML file with rest services defined using the rest-dsl
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="restProperty" type="tns:restPropertyDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 A key value pair
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="rests" type="tns:restsDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 A series of rest services defined using the rest-dsl
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="ribbonLoadBalancer" type="tns:ribbonServiceCallServiceLoadBalancerConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="rollback" type="tns:rollbackDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Forces a rollback by stopping routing the message
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="roundRobin" type="tns:roundRobinLoadBalancerDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Round robin load balancer The round robin load balancer will use the next
 endpoint for each message. This load balancer is not meant to work with
 failover, for that you should use the dedicated failover load balancer.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="route" type="tns:routeDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 A Camel route
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="routeBuilder" type="tns:routeBuilderDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To refer to a Java org.apache.camel.builder.RouteBuilder instance to use.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="routeContext" type="tns:camelRouteContextFactoryBean">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Configuration of routes using XML
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="routeContextRef" type="tns:routeContextRefDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To refer to an XML file with routes defined using the xml-dsl
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="routeController" type="tns:camelRouteControllerDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Route controller configuration.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="routeTemplate" type="tns:routeTemplateDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Defines a route template (parameterized routes)
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="routeTemplateContext" type="tns:camelRouteTemplateContextFactoryBean">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Configuration of route templates using XML
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="routeTemplateContextRef" type="tns:routeTemplateContextRefDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To refer to an XML file with route templates defined using the xml-dsl
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="routeTemplates" type="tns:routeTemplatesDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 A series of route templates
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="routes" type="tns:routesDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 A series of Camel routes
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="routingSlip" type="tns:routingSlipDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Routes a message through a series of steps that are pre-determined (the slip)
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="rss" type="tns:rssDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Transform from ROME SyndFeed Java Objects to XML and vice-versa.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="saga" type="tns:sagaDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Enables sagas on the route
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="sample" type="tns:samplingDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Extract a sample of the messages passing through a route
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="script" type="tns:scriptDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Executes a script from a language which does not change the message body.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="secureRandomParameters" type="tns:secureRandomParametersFactoryBean"/>
-
+    
   <xs:element name="secureXML" type="tns:xmlSecurityDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Encrypt and decrypt XML payloads using Apache Santuario.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="security" type="tns:securityDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Rest security definition
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="securityDefinitions" type="tns:restSecuritiesDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To configure rest security definitions.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="serviceCall" type="tns:serviceCallDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To call remote services
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="serviceCallConfiguration" type="tns:serviceCallConfigurationDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Remote service call configuration
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="serviceChooserConfiguration" type="tns:serviceCallServiceChooserConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="serviceDiscoveryConfiguration" type="tns:serviceCallServiceDiscoveryConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="serviceExpression" type="tns:serviceCallExpressionConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="serviceFilterConfiguration" type="tns:serviceCallServiceFilterConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="setBody" type="tns:setBodyDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Sets the contents of the message body
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="setExchangePattern" type="tns:setExchangePatternDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Sets the exchange pattern on the message exchange
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="setHeader" type="tns:setHeaderDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Sets the value of a message header
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="setProperty" type="tns:setPropertyDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Sets a named property on the message exchange
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="simple" type="tns:simpleExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Evaluate Camel's built-in Simple language expression against the Camel Exchange.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="soapjaxb" type="tns:soapJaxbDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal Java objects to SOAP messages and back.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="sort" type="tns:sortDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Sorts the contents of the message
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="spel" type="tns:spELExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Evaluate a Spring Expression Language (SpEL) expression against the Camel
 Exchange.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="split" type="tns:splitDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Splits a single message into many sub-messages.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="sslContextParameters" type="tns:sslContextParametersFactoryBean"/>
-
+    
   <xs:element name="staticServiceDiscovery" type="tns:staticServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="step" type="tns:stepDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Routes the message to a sequence of processors which is grouped together as one
 logical name
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="sticky" type="tns:stickyLoadBalancerDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Sticky load balancer Sticky load balancing using an Expression to calculate a
 correlation key to perform the sticky load balancing; rather like jsessionid in
 the web or JMSXGroupID in JMS.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="stop" type="tns:stopDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Stops the processing of the current message
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="stream-config" type="tns:streamResequencerConfig">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Configures stream-processing resequence eip.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="streamCaching" type="tns:camelStreamCachingStrategyDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Stream caching configuration.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="syslog" type="tns:syslogDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshall SyslogMessages to RFC3164 and RFC5424 messages and back.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="tarfile" type="tns:tarFileDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Archive files into tarballs or extract files from tarballs.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="template" type="tns:camelProducerTemplateFactoryBean">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Configures a ProducerTemplate
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="templateParameter" type="tns:routeTemplateParameterDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 A route template parameter
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="threadPool" type="tns:camelThreadPoolFactoryBean">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Configuration of thread pools
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="threadPoolProfile" type="tns:threadPoolProfileDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To configure thread pools
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="threads" type="tns:threadsDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Specifies that all steps after this node are processed asynchronously
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="thrift" type="tns:thriftDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Serialize and deserialize messages using Apache Thrift binary data format.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="throttle" type="tns:throttleDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Controls the rate at which messages are passed to the next node in the route
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="throwException" type="tns:throwExceptionDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Throws an exception
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="tidyMarkup" type="tns:tidyMarkupDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Parse (potentially invalid) HTML into valid HTML or DOM.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="to" type="tns:toDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Sends the message to a static endpoint
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="toD" type="tns:toDynamicDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Sends the message to a dynamic endpoint You can specify multiple languages in
 the uri separated by the plus sign, such as mock:language:xpath:/order/uri where
 mock: would be a prefix to a xpath expression. For more dynamic behavior use
 Recipient List or Dynamic Router EIP instead.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="tokenize" type="tns:tokenizerExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Tokenize text payloads using the specified delimiter patterns.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="topic" type="tns:topicLoadBalancerDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Topic load balancer The topic load balancer sends to all destinations (rather
 like JMS Topics)
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="transacted" type="tns:transactedDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Enables transaction on the route
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="transform" type="tns:transformDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Transforms the message body based on an expression
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="transformers" type="tns:transformersDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To configure transformers.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="typeFilter" type="tns:yamlTypeFilterDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="univocity-csv" type="tns:uniVocityCsvDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal and unmarshal Java objects from and to CSV (Comma Separated Values)
 using UniVocity Parsers.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="univocity-fixed" type="tns:uniVocityFixedWidthDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal and unmarshal Java objects from and to fixed length records using
 UniVocity Parsers.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="univocity-header" type="tns:uniVocityHeader">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To configure headers for UniVocity data formats.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="univocity-tsv" type="tns:uniVocityTsvDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal and unmarshal Java objects from and to TSV (Tab-Separated Values)
 records using UniVocity Parsers.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="unmarshal" type="tns:unmarshalDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Converts the message data received from the wire into a format that Apache Camel
 processors can consume
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="validate" type="tns:validateDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Validates a message based on an expression
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="validators" type="tns:validatorsDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 To configure validators.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="verb" type="tns:verbDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Rest command
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="weighted" type="tns:weightedLoadBalancerDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Weighted load balancer The weighted load balancing policy allows you to specify
 a processing load distribution ratio for each server with respect to others. In
 addition to the weight, endpoint selection is then further refined using random
 distribution based on weight.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="when" type="tns:whenDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Triggers a route when an expression evaluates to true
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="whenSkipSendToEndpoint" type="tns:whenSkipSendToEndpointDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Predicate to determine if the message should be sent or not to the endpoint,
 when using interceptSentToEndpoint.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="wireTap" type="tns:wireTapDefinition">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Routes a copy of a message (or creates a new message) to a secondary destination
 while continue routing the original message.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="xmlrpc" type="tns:xmlRpcDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal and unmarshal XML RPC protocol requests or responses.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="xpath" type="tns:xPathExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Evaluate an XPath expression against an XML payload.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="xquery" type="tns:xQueryExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Evaluate an XQuery expressions against an XML payload.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="xstream" type="tns:xStreamDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal and unmarshal POJOs to/from XML using XStream library.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="xtokenize" type="tns:xmlTokenizerExpression">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Tokenize XML payloads using the specified path expression.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="yaml" type="tns:yamlDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Marshal and unmarshal Java objects to and from YAML.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="zipdeflater" type="tns:zipDeflaterDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Compress and decompress streams using java.util.zip.Deflater and
 java.util.zip.Inflater.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="zipfile" type="tns:zipFileDataFormat">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 Compression and decompress streams using java.util.zip.ZipStream.
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:element name="zookeeperServiceDiscovery" type="tns:zooKeeperServiceCallServiceDiscoveryConfiguration">
     <xs:annotation>
-      <xs:documentation xml:lang="en"><![CDATA[
+      <xs:documentation xml:lang="en">
+        <![CDATA[
 null
-      ]]></xs:documentation>
+      ]]>
+      </xs:documentation>
     </xs:annotation>
   </xs:element>
-
+    
   <xs:complexType abstract="true" name="abstractCamelConsumerTemplateFactoryBean">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:abstractCamelFactoryBean">
+                
         <xs:sequence/>
+                
         <xs:attribute name="maximumCacheSize" type="xs:int">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets a custom maximum cache size to use in the backing cache pools.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="abstractCamelFactoryBean">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence/>
+                
         <xs:attribute name="camelContextId" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Id of CamelContext to use if there are multiple CamelContexts in the same JVM.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="identifiedType">
+        
     <xs:sequence/>
+        
     <xs:attribute name="id" type="xs:ID">
       <xs:annotation>
-        <xs:documentation xml:lang="en"><![CDATA[
+        <xs:documentation xml:lang="en">
+          <![CDATA[
 The id of this node.
-        ]]></xs:documentation>
+        ]]>
+        </xs:documentation>
       </xs:annotation>
     </xs:attribute>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="abstractCamelContextFactoryBean">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="abstractCamelEndpointFactoryBean">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:abstractCamelFactoryBean">
+                
         <xs:sequence>
+                    
           <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:property"/>
+                  
         </xs:sequence>
+                
         <xs:attribute name="uri" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the URI to use to resolve the endpoint. Notice that additional options can
 be configured using a series of property.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="propertyDefinition">
+        
     <xs:sequence/>
+        
     <xs:attribute name="key" type="xs:string" use="required">
       <xs:annotation>
-        <xs:documentation xml:lang="en"><![CDATA[
+        <xs:documentation xml:lang="en">
+          <![CDATA[
 Property key.
-        ]]></xs:documentation>
+        ]]>
+        </xs:documentation>
       </xs:annotation>
     </xs:attribute>
+        
     <xs:attribute name="value" type="xs:string" use="required">
       <xs:annotation>
-        <xs:documentation xml:lang="en"><![CDATA[
+        <xs:documentation xml:lang="en">
+          <![CDATA[
 Property value.
-        ]]></xs:documentation>
+        ]]>
+        </xs:documentation>
       </xs:annotation>
     </xs:attribute>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="abstractCamelFluentProducerTemplateFactoryBean">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:abstractCamelFactoryBean">
+                
         <xs:sequence/>
+                
         <xs:attribute name="defaultEndpoint" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the default endpoint URI used by default for sending message exchanges.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="maximumCacheSize" type="xs:int">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets a custom maximum cache size to use in the backing cache pools.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="abstractCamelProducerTemplateFactoryBean">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:abstractCamelFactoryBean">
+                
         <xs:sequence/>
+                
         <xs:attribute name="defaultEndpoint" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the default endpoint URI used by default for sending message exchanges.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="maximumCacheSize" type="xs:int">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets a custom maximum cache size to use in the backing cache pools.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="abstractCamelRedeliveryPolicyFactoryBean">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:abstractCamelFactoryBean">
+                
         <xs:sequence/>
+                
         <xs:attribute name="maximumRedeliveries" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the maximum number of times a message exchange will be redelivered. Setting
 a negative value will retry forever.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="redeliveryDelay" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the maximum redelivery delay. Use -1 if you wish to have no maximum.
 Default value: 1000
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="asyncDelayedRedelivery" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether asynchronous delayed redelivery is allowed. This is disabled by
 default. When enabled it allows Camel to schedule a future task for delayed
 redelivery which prevents current thread from blocking while waiting. Exchange
 which is transacted will however always use synchronous delayed redelivery
 because the transaction must execute in the same thread context. Default value:
 false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="backOffMultiplier" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the multiplier used to increase the delay between redeliveries if
 useExponentialBackOff is enabled. Default value: 2
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="useExponentialBackOff" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Enables/disables exponential backoff using the backOffMultiplier to increase the
 time between retries. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="collisionAvoidanceFactor" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the factor used for collision avoidance if enabled via
 useCollisionAvoidance. Default value: 0.15
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="useCollisionAvoidance" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Enables/disables collision avoidance which adds some randomization to the
 backoff timings to reduce contention probability. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="maximumRedeliveryDelay" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the maximum redelivery delay. Use -1 if you wish to have no maximum.
 Default value: 60000
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="retriesExhaustedLogLevel" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the logging level to use for log messages when retries have been exhausted.
 Default value: ERROR
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="retryAttemptedLogLevel" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the logging level to use for log messages when retries are attempted.
 Default value: DEBUG
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="retryAttemptedLogInterval" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the interval for log messages when retries are attempted. Default value: 0
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="logRetryAttempted" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether to log retry attempts. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="logStackTrace" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether stack traces should be logged or not. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="logRetryStackTrace" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether stack traces should be logged or not. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="logHandled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether errors should be logged even if its handled. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="logNewException" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether errors should be logged when a new exception occurred during
 handling a previous exception. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="logContinued" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether errors should be logged even if its continued. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="logExhausted" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether exhausted exceptions should be logged or not. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="logExhaustedMessageHistory" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether to log exhausted errors including message history. Default value:
 false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="logExhaustedMessageBody" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether exhausted message body/headers should be logged with message
 history included. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="disableRedelivery" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Disables redelivery by setting maximum redeliveries to 0. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="delayPattern" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets an optional delay pattern to use instead of fixed delay.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="allowRedeliveryWhileStopping" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Controls whether to allow redelivery while stopping/shutting down a route that
 uses error handling. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="exchangeFormatterRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the reference of the instance of org.apache.camel.spi.ExchangeFormatter to
 generate the log message from exchange.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="abstractCamelThreadPoolFactoryBean">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:abstractCamelFactoryBean">
+                
         <xs:sequence/>
+                
         <xs:attribute name="poolSize" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the core pool size (threads to keep minimum in pool).
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="maxPoolSize" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the maximum pool size.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="keepAliveTime" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the keep alive time for inactive threads.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="timeUnit" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the time unit used for keep alive time. Default value: SECONDS
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="maxQueueSize" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the maximum number of tasks in the work queue. Use -1 for an unbounded
 queue.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="allowCoreThreadTimeOut" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether to allow core threads to timeout.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="rejectedPolicy" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the handler for tasks which cannot be executed by the thread pool. Default
 value: CallerRuns
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="threadName" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 To use a custom thread name / pattern.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="scheduled" type="xs:boolean">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether to use a scheduled thread pool. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="camelJMXAgentDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence/>
+                
         <xs:attribute name="disabled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Disable JMI (default false). Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="onlyRegisterProcessorWithCustomId" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Only register processor if a custom id was defined for it. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="mbeanServerDefaultDomain" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 MBean server default domain name (default org.apache.camel). Default value:
 org.apache.camel
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="mbeanObjectDomainName" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 MBean object domain name (default org.apache.camel). Default value:
 org.apache.camel
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="usePlatformMBeanServer" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 A flag that indicates whether the platform mbean server should be used. Default
 value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="registerAlways" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 A flag that indicates whether to register mbeans always. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="registerNewRoutes" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 A flag that indicates whether to register mbeans when starting new routes.
 Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="statisticsLevel" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Level of granularity for performance statistics enabled. Default value: Default
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="loadStatisticsEnabled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 A flag that indicates whether Load statistics is enabled. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="endpointRuntimeStatisticsEnabled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 A flag that indicates whether endpoint runtime statistics is enabled. Default
 value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="includeHostName" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 A flag that indicates whether to include hostname in JMX MBean names. Default
 value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="useHostIPAddress" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 A flag that indicates whether to use hostname or IP Address in the service url.
 Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="mask" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 A flag that indicates whether to remove detected sensitive information (such as
 passwords) from MBean names and attributes. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="camelPropertyPlaceholderDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence>
+                    
           <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:propertiesFunction"/>
+                    
           <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:propertiesLocation"/>
+                  
         </xs:sequence>
+                
         <xs:attribute name="location" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 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.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="encoding" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Encoding to use when loading properties file from the file system or classpath.
 If no encoding has been set, then the properties files is loaded using
 ISO-8859-1 encoding (latin-1) as documented by
 java.util.Properties#load(java.io.InputStream).
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="ignoreMissingLocation" type="xs:boolean">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether to silently ignore if a location cannot be located, such as a properties
 file not found. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="propertiesParserRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Reference to a custom PropertiesParser to be used.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="defaultFallbackEnabled" type="xs:boolean">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 If false, the component does not attempt to find a default for the key by
 looking after the colon separator. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="camelPropertyPlaceholderFunctionDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence/>
+                
         <xs:attribute name="ref" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Reference to the custom properties function to lookup in the registry.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="camelPropertyPlaceholderLocationDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence/>
+                
         <xs:attribute name="resolver" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 The resolver to use to locate the location. Default value: classpath
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="path" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Property locations to use.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="optional" type="xs:boolean">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 If the location is optional. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="camelProxyFactoryDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence/>
+                
         <xs:attribute name="serviceUrl" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 The camel endpoint uri used to send the message to when calling the service from
 the interface.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="serviceInterface" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Java interfaces to use as facade for the service to be proxied.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="camelContextId" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 The id of the CamelContext to use, if there is multiple CamelContext in the same
 JVM.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="camelRouteControllerDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence/>
+                
         <xs:attribute name="supervising" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 To enable using supervising route controller which allows Camel to startup and
 then the controller takes care of starting the routes in a safe manner. This can
 be used when you want to startup Camel despite a route may otherwise fail fast
@@ -2490,554 +3230,846 @@ during startup and cause Camel to fail to startup as well. By delegating the
 route startup to the supervising route controller then its manages the startup
 using a background thread. The controller allows to be configured with various
 settings to attempt to restart failing routes. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="includeRoutes" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Pattern for filtering routes to be included as supervised. The pattern is
 matching on route id, and endpoint uri for the route. Multiple patterns can be
 separated by comma. For example to include all kafka routes, you can say kafka:.
 And to include routes with specific route ids myRoute,myOtherRoute. The pattern
 supports wildcards and uses the matcher from
 org.apache.camel.support.PatternHelper#matchPattern.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="excludeRoutes" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Pattern for filtering routes to be excluded as supervised. The pattern is
 matching on route id, and endpoint uri for the route. Multiple patterns can be
 separated by comma. For example to exclude all JMS routes, you can say jms:. And
 to exclude routes with specific route ids mySpecialRoute,myOtherSpecialRoute.
 The pattern supports wildcards and uses the matcher from
 org.apache.camel.support.PatternHelper#matchPattern.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="threadPoolSize" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 The number of threads used by the scheduled thread pool that are used for
 restarting routes. The pool uses 1 thread by default, but you can increase this
 to allow the controller to concurrently attempt to restart multiple routes in
 case more than one route has problems starting. Default value: 1
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="initialDelay" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Initial delay in milli seconds before the route controller starts, after
 CamelContext has been started.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="backOffDelay" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Backoff delay in millis when restarting a route that failed to startup. Default
 value: 2000
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="backOffMaxDelay" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Backoff maximum delay in millis when restarting a route that failed to startup.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="backOffMaxElapsedTime" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Backoff maximum elapsed time in millis, after which the backoff should be
 considered exhausted and no more attempts should be made.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="backOffMaxAttempts" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Backoff maximum number of attempts to restart a route that failed to startup.
 When this threshold has been exceeded then the controller will give up
 attempting to restart the route, and the route will remain as stopped.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="backOffMultiplier" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Backoff multiplier to use for exponential backoff. This is used to extend the
 delay between restart attempts. Default value: 1.0
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="unhealthyOnExhausted" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether to mark the route as unhealthy (down) when all restarting attempts
 (backoff) have failed and the route is not successfully started and the route
 manager is giving up. Setting this to true allows health checks to know about
 this and can report the Camel application as DOWN. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="camelServiceExporterDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence/>
+                
         <xs:attribute name="uri" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Camel endpoint uri to use a remote transport when calling the service.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="serviceRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Reference to the service name to lookup in the registry.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="method" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Name of method to invoke on service.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="serviceInterface" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Java interfaces to use as facade for the service to be exported.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="camelContextId" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 The id of the CamelContext to use, if there is multiple CamelContext in the same
 JVM.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="camelStreamCachingStrategyDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence/>
+                
         <xs:attribute name="enabled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether the stream caching is enabled. Notice: This cannot be changed at
 runtime. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="spoolDirectory" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the spool (temporary) directory to use for overflow and spooling to disk.
 If no spool directory has been explicit configured, then a temporary directory
 is created in the java.io.tmpdir directory.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="spoolCipher" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets a cipher name to use when spooling to disk to write with encryption. By
 default the data is not encrypted.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="spoolThreshold" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Threshold in bytes when overflow to disk is activated. The default threshold is
 org.apache.camel.StreamCache#DEFAULT_SPOOL_THRESHOLD bytes (eg 128kb). Use -1 to
 disable overflow to disk.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="spoolUsedHeapMemoryThreshold" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets a percentage (1-99) of used heap memory threshold to activate spooling to
 disk.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="spoolUsedHeapMemoryLimit" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets what the upper bounds should be when spoolUsedHeapMemoryThreshold is in
 use.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="spoolRules" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Reference to one or more custom
 org.apache.camel.spi.StreamCachingStrategy.SpoolRule to use. Multiple rules can
 be separated by comma.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="bufferSize" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the buffer size to use when allocating in-memory buffers used for in-memory
 stream caches. The default size is
 org.apache.camel.util.IOHelper#DEFAULT_BUFFER_SIZE.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="removeSpoolDirectoryWhenStopping" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether to remove the temporary directory when stopping. This option is default
 true. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="statisticsEnabled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether statistics is enabled.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="anySpoolRules" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether if just any of the
 org.apache.camel.spi.StreamCachingStrategy.SpoolRule rules returns true then
 shouldSpoolCache(long) returns true. If this option is false, then all the
 org.apache.camel.spi.StreamCachingStrategy.SpoolRule must return true. The
 default value is false which means that all the rules must return true. Default
 value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="patternBasedPackageScanFilter">
+        
     <xs:sequence/>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="abstractJsseUtilFactoryBean">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:abstractCamelFactoryBean">
+                
         <xs:sequence/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="abstractKeyManagersParametersFactoryBean">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:abstractJsseUtilFactoryBean">
+                
         <xs:sequence/>
+                
         <xs:attribute name="keyPassword" type="xs:string"/>
+                
         <xs:attribute name="provider" type="xs:string"/>
+                
         <xs:attribute name="algorithm" type="xs:string"/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="abstractKeyStoreParametersFactoryBean">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:abstractJsseUtilFactoryBean">
+                
         <xs:sequence/>
+                
         <xs:attribute name="type" type="xs:string"/>
+                
         <xs:attribute name="password" type="xs:string"/>
+                
         <xs:attribute name="provider" type="xs:string"/>
+                
         <xs:attribute name="resource" type="xs:string"/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="abstractSecureRandomParametersFactoryBean">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:abstractJsseUtilFactoryBean">
+                
         <xs:sequence/>
+                
         <xs:attribute name="algorithm" type="xs:string" use="required"/>
+                
         <xs:attribute name="provider" type="xs:string"/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="abstractTrustManagersParametersFactoryBean">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:abstractJsseUtilFactoryBean">
+                
         <xs:sequence/>
+                
         <xs:attribute name="provider" type="xs:string"/>
+                
         <xs:attribute name="algorithm" type="xs:string"/>
+                
         <xs:attribute name="trustManager" type="xs:string"/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="cipherSuitesParameters">
+        
     <xs:sequence>
+            
       <xs:element maxOccurs="unbounded" minOccurs="0" name="cipherSuite" nillable="true" type="xs:string"/>
+          
     </xs:sequence>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="filterParameters">
+        
     <xs:sequence>
+            
       <xs:element maxOccurs="unbounded" minOccurs="0" name="include" nillable="true" type="xs:string"/>
+            
       <xs:element maxOccurs="unbounded" minOccurs="0" name="exclude" nillable="true" type="xs:string"/>
+          
     </xs:sequence>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="sniHostNames">
+        
     <xs:sequence>
+            
       <xs:element maxOccurs="unbounded" minOccurs="0" name="sniHostName" type="xs:string"/>
+          
     </xs:sequence>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="secureSocketProtocolsParameters">
+        
     <xs:sequence>
+            
       <xs:element maxOccurs="unbounded" minOccurs="0" name="secureSocketProtocol" nillable="true" type="xs:string"/>
+          
     </xs:sequence>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="output">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:processorDefinition">
+                
         <xs:sequence/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="processorDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:optionalIdentifiedDefinition">
+                
         <xs:sequence/>
+                
         <xs:attribute name="inheritErrorHandler" type="xs:boolean"/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="optionalIdentifiedDefinition">
+        
     <xs:sequence>
+            
       <xs:element minOccurs="0" ref="tns:description"/>
+          
     </xs:sequence>
+        
     <xs:attribute name="customId" type="xs:boolean"/>
+        
     <xs:attribute name="id" type="xs:string">
       <xs:annotation>
-        <xs:documentation xml:lang="en"><![CDATA[
+        <xs:documentation xml:lang="en">
+          <![CDATA[
 Sets the id of this node.
-        ]]></xs:documentation>
+        ]]>
+        </xs:documentation>
       </xs:annotation>
     </xs:attribute>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="descriptionDefinition">
+        
     <xs:simpleContent>
+            
       <xs:extension base="xs:string">
+                
         <xs:attribute name="lang" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Language, such as en for english.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:simpleContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="aggregateDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:output">
+                
         <xs:sequence>
+                    
           <xs:element name="correlationExpression" type="tns:expressionSubElementDefinition"/>
+                    
           <xs:element minOccurs="0" name="completionPredicate" type="tns:expressionSubElementDefinition"/>
+                    
           <xs:element minOccurs="0" name="completionTimeoutExpression" type="tns:expressionSubElementDefinition"/>
+                    
           <xs:element minOccurs="0" name="completionSizeExpression" type="tns:expressionSubElementDefinition"/>
+                    
           <xs:element minOccurs="0" ref="tns:optimisticLockRetryPolicy"/>
+                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
+                        
             <xs:element ref="tns:aggregate"/>
+                        
             <xs:element ref="tns:bean"/>
+                        
             <xs:element ref="tns:doCatch"/>
+                        
             <xs:element ref="tns:when"/>
+                        
             <xs:element ref="tns:choice"/>
+                        
             <xs:element ref="tns:otherwise"/>
+                        
             <xs:element ref="tns:circuitBreaker"/>
+                        
             <xs:element ref="tns:claimCheck"/>
+                        
             <xs:element ref="tns:convertBodyTo"/>
+                        
             <xs:element ref="tns:delay"/>
+                        
             <xs:element ref="tns:dynamicRouter"/>
+                        
             <xs:element ref="tns:enrich"/>
+                        
             <xs:element ref="tns:filter"/>
+                        
             <xs:element ref="tns:doFinally"/>
+                        
             <xs:element ref="tns:idempotentConsumer"/>
+                        
             <xs:element ref="tns:inOnly"/>
+                        
             <xs:element ref="tns:inOut"/>
+                        
             <xs:element ref="tns:intercept"/>
+                        
             <xs:element ref="tns:interceptFrom"/>
+                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
+                        
             <xs:element ref="tns:loadBalance"/>
+                        
             <xs:element ref="tns:log"/>
+                        
             <xs:element ref="tns:loop"/>
+                        
             <xs:element ref="tns:marshal"/>
+                        
             <xs:element ref="tns:multicast"/>
+                        
             <xs:element ref="tns:onCompletion"/>
+                        
             <xs:element ref="tns:onException"/>
+                        
             <xs:element ref="tns:onFallback"/>
+                        
             <xs:element ref="tns:pipeline"/>
+                        
             <xs:element ref="tns:policy"/>
+                        
             <xs:element ref="tns:pollEnrich"/>
+                        
             <xs:element ref="tns:process"/>
+                        
             <xs:element ref="tns:recipientList"/>
+                        
             <xs:element ref="tns:removeHeader"/>
+                        
             <xs:element ref="tns:removeHeaders"/>
+                        
             <xs:element ref="tns:removeProperties"/>
+                        
             <xs:element ref="tns:removeProperty"/>
+                        
             <xs:element ref="tns:resequence"/>
+                        
             <xs:element ref="tns:rollback"/>
+                        
             <xs:element ref="tns:route"/>
+                        
             <xs:element ref="tns:routingSlip"/>
+                        
             <xs:element ref="tns:saga"/>
+                        
             <xs:element ref="tns:sample"/>
+                        
             <xs:element ref="tns:script"/>
+                        
             <xs:element ref="tns:setBody"/>
+                        
             <xs:element ref="tns:setExchangePattern"/>
+                        
             <xs:element ref="tns:setHeader"/>
+                        
             <xs:element ref="tns:setProperty"/>
+                        
             <xs:element ref="tns:sort"/>
+                        
             <xs:element ref="tns:split"/>
+                        
             <xs:element ref="tns:step"/>
+                        
             <xs:element ref="tns:stop"/>
+                        
             <xs:element ref="tns:threads"/>
+                        
             <xs:element ref="tns:throttle"/>
+                        
             <xs:element ref="tns:throwException"/>
+                        
             <xs:element ref="tns:to"/>
+                        
             <xs:element ref="tns:toD"/>
+                        
             <xs:element ref="tns:transacted"/>
+                        
             <xs:element ref="tns:transform"/>
+                        
             <xs:element ref="tns:doTry"/>
+                        
             <xs:element ref="tns:unmarshal"/>
+                        
             <xs:element ref="tns:validate"/>
+                        
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
+                        
             <xs:element ref="tns:wireTap"/>
+                        
             <xs:element ref="tns:serviceCall"/>
+                      
           </xs:choice>
+                  
         </xs:sequence>
+                
         <xs:attribute name="parallelProcessing" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 When aggregated are completed they are being send out of the aggregator. This
 option indicates whether or not Camel should use a thread pool with multiple
 threads for concurrency. If no custom thread pool has been specified then Camel
 creates a default pool with 10 concurrent threads. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="optimisticLocking" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Turns on using optimistic locking, which requires the aggregationRepository
 being used, is supporting this by implementing
 org.apache.camel.spi.OptimisticLockingAggregationRepository . Default value:
 false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="executorServiceRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 If using parallelProcessing you can specify a custom thread pool to be used. In
 fact also if you are not using parallelProcessing this custom thread pool is
 used to send out aggregated exchanges as well.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="timeoutCheckerExecutorServiceRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 If using either of the completionTimeout, completionTimeoutExpression, or
 completionInterval options a background thread is created to check for the
 completion for every aggregator. Set this option to provide a custom thread pool
 to be used rather than creating a new thread for every aggregator.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="aggregationRepositoryRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the custom aggregate repository to use. Will by default use
 org.apache.camel.processor.aggregate.MemoryAggregationRepository.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="strategyRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 A reference to lookup the AggregationStrategy in the Registry. Configuring an
 AggregationStrategy is required, and is used to merge the incoming Exchange with
 the existing already merged exchanges. At first call the oldExchange parameter
 is null. On subsequent invocations the oldExchange contains the merged exchanges
 and newExchange is of course the new incoming Exchange.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="strategyMethodName" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 This option can be used to explicit declare the method name to use, when using
 POJOs as the AggregationStrategy.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="strategyMethodAllowNull" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 If this option is false then the aggregate method is not used for the very first
 aggregation. If this option is true then null values is used as the oldExchange
 (at the very first aggregation), when using POJOs as the AggregationStrategy.
 Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="completionSize" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Number of messages aggregated before the aggregation is complete. This option
 can be set as either a fixed value or using an Expression which allows you to
 evaluate a size dynamically - will use Integer as result. If both are set Camel
 will fallback to use the fixed value if the Expression result was null or 0.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="completionInterval" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 A repeating period in millis by which the aggregator will complete all current
 aggregated exchanges. Camel has a background task which is triggered every
 period. You cannot use this option together with completionTimeout, only one of
 them can be used.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="completionTimeout" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Time in millis that an aggregated exchange should be inactive before its
 complete (timeout). This option can be set as either a fixed value or using an
 Expression which allows you to evaluate a timeout dynamically - will use Long as
@@ -3049,98 +4081,128 @@ option to configure how frequently to run the checker. The timeout is an
 approximation and there is no guarantee that the a timeout is triggered exactly
 after the timeout value. It is not recommended to use very low timeout values or
 checker intervals.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="completionTimeoutCheckerInterval" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Interval in millis that is used by the background task that checks for timeouts
 ( org.apache.camel.TimeoutMap ). By default the timeout checker runs every
 second. The timeout is an approximation and there is no guarantee that the a
 timeout is triggered exactly after the timeout value. It is not recommended to
 use very low timeout values or checker intervals. Default value: 1s
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="completionFromBatchConsumer" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Enables the batch completion mode where we aggregate from a
 org.apache.camel.BatchConsumer and aggregate the total number of exchanges the
 org.apache.camel.BatchConsumer has reported as total by checking the exchange
 property org.apache.camel.Exchange#BATCH_COMPLETE when its complete. This option
 cannot be used together with discardOnAggregationFailure. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="completionOnNewCorrelationGroup" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Enables completion on all previous groups when a new incoming correlation group.
 This can for example be used to complete groups with same correlation keys when
 they are in consecutive order. Notice when this is enabled then only 1
 correlation group can be in progress as when a new correlation group starts,
 then the previous groups is forced completed. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="eagerCheckCompletion" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Use eager completion checking which means that the completionPredicate will use
 the incoming Exchange. As opposed to without eager completion checking the
 completionPredicate will use the aggregated Exchange. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="ignoreInvalidCorrelationKeys" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 If a correlation key cannot be successfully evaluated it will be ignored by
 logging a DEBUG and then just ignore the incoming Exchange. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="closeCorrelationKeyOnCompletion" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Closes a correlation key when its complete. Any late received exchanges which
 has a correlation key that has been closed, it will be defined and a
 ClosedCorrelationKeyException is thrown.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="discardOnCompletionTimeout" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Discards the aggregated message on completion timeout. This means on timeout the
 aggregated message is dropped and not sent out of the aggregator. Default value:
 false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="discardOnAggregationFailure" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Discards the aggregated message when aggregation failed (an exception was thrown
 from AggregationStrategy . This means the partly aggregated message is dropped
 and not sent out of the aggregator. This option cannot be used together with
 completionFromBatchConsumer. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="forceCompletionOnStop" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Indicates to complete all current aggregated exchanges when the context is
 stopped. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="completeAllOnStop" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Indicates to wait to complete all current and partial (pending) aggregated
 exchanges when the context is stopped. This also means that we will wait for all
 pending exchanges which are stored in the aggregation repository to complete so
@@ -3149,141 +4211,214 @@ using the memory based aggregation repository that is memory based only, and do
 not store data on disk. When this option is enabled, then the aggregator is
 waiting to complete all those exchanges before its stopped, when stopping
 CamelContext or the route using it. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="aggregateControllerRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 To use a org.apache.camel.processor.aggregate.AggregateController to allow
 external sources to control this aggregator.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="expressionSubElementDefinition">
+        
     <xs:choice>
+            
       <xs:element ref="tns:expressionDefinition"/>
+            
       <xs:element ref="tns:constant"/>
+            
       <xs:element ref="tns:exchangeProperty"/>
+            
       <xs:element ref="tns:groovy"/>
+            
       <xs:element ref="tns:header"/>
+            
       <xs:element ref="tns:hl7terser"/>
+            
       <xs:element ref="tns:jsonpath"/>
+            
       <xs:element ref="tns:language"/>
+            
       <xs:element ref="tns:method"/>
+            
       <xs:element ref="tns:mvel"/>
+            
       <xs:element ref="tns:ognl"/>
+            
       <xs:element ref="tns:ref"/>
+            
       <xs:element ref="tns:simple"/>
+            
       <xs:element ref="tns:spel"/>
+            
       <xs:element ref="tns:tokenize"/>
+            
       <xs:element ref="tns:xtokenize"/>
+            
       <xs:element ref="tns:xpath"/>
+            
       <xs:element ref="tns:xquery"/>
+          
     </xs:choice>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="expression">
+        
     <xs:simpleContent>
+            
       <xs:extension base="xs:string">
+                
         <xs:attribute name="id" type="xs:ID">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the id of this node.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="trim" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether to trim the value to remove leading and trailing whitespaces and line
 breaks. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:simpleContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="optimisticLockRetryPolicyDefinition">
+        
     <xs:sequence/>
+        
     <xs:attribute name="maximumRetries" type="xs:string">
       <xs:annotation>
-        <xs:documentation xml:lang="en"><![CDATA[
+        <xs:documentation xml:lang="en">
+          <![CDATA[
 Sets the maximum number of retries.
-        ]]></xs:documentation>
+        ]]>
+        </xs:documentation>
       </xs:annotation>
     </xs:attribute>
+        
     <xs:attribute name="retryDelay" type="xs:string">
       <xs:annotation>
-        <xs:documentation xml:lang="en"><![CDATA[
+        <xs:documentation xml:lang="en">
+          <![CDATA[
 Sets the delay in millis between retries. Default value: 50ms
-        ]]></xs:documentation>
+        ]]>
+        </xs:documentation>
       </xs:annotation>
     </xs:attribute>
+        
     <xs:attribute name="maximumRetryDelay" type="xs:string">
       <xs:annotation>
-        <xs:documentation xml:lang="en"><![CDATA[
+        <xs:documentation xml:lang="en">
+          <![CDATA[
 Sets the upper value of retry in millis between retries, when using exponential
 or random backoff. Default value: 1s
-        ]]></xs:documentation>
+        ]]>
+        </xs:documentation>
       </xs:annotation>
     </xs:attribute>
+        
     <xs:attribute name="exponentialBackOff" type="xs:string">
       <xs:annotation>
-        <xs:documentation xml:lang="en"><![CDATA[
+        <xs:documentation xml:lang="en">
+          <![CDATA[
 Enable exponential backoff. Default value: true
-        ]]></xs:documentation>
+        ]]>
+        </xs:documentation>
       </xs:annotation>
     </xs:attribute>
+        
     <xs:attribute name="randomBackOff" type="xs:string">
       <xs:annotation>
-        <xs:documentation xml:lang="en"><![CDATA[
+        <xs:documentation xml:lang="en">
+          <![CDATA[
 Enables random backoff. Default value: false
-        ]]></xs:documentation>
+        ]]>
+        </xs:documentation>
       </xs:annotation>
     </xs:attribute>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="beanDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:noOutputDefinition">
+                
         <xs:sequence/>
+                
         <xs:attribute name="ref" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets a reference to a bean to use.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="method" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the method name on the bean to use.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="beanType" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the Class of the bean.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="cache" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Deprecated: Use singleton option instead. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="scope" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Scope of bean. When using singleton scope (default) the bean is created or
 looked up only once and reused for the lifetime of the endpoint. The bean should
 be thread-safe in case concurrent threads is calling the bean at the same time.
@@ -3297,729 +4432,1211 @@ this is delegated to the bean registry such as Spring or CDI (if in use), which
 depends on their configuration can act as either singleton or prototype scope.
 so when using delegate then this depends on the delegated registry. Default
 value: Singleton
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="noOutputDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:processorDefinition">
+                
         <xs:sequence/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="catchDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:output">
+                
         <xs:sequence>
+                    
           <xs:element maxOccurs="unbounded" minOccurs="0" name="exception" type="xs:string"/>
+                    
           <xs:element minOccurs="0" name="onWhen" type="tns:whenDefinition"/>
+                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
+                        
             <xs:element ref="tns:aggregate"/>
+                        
             <xs:element ref="tns:bean"/>
+                        
             <xs:element ref="tns:doCatch"/>
+                        
             <xs:element ref="tns:when"/>
+                        
             <xs:element ref="tns:choice"/>
+                        
             <xs:element ref="tns:otherwise"/>
+                        
             <xs:element ref="tns:circuitBreaker"/>
+                        
             <xs:element ref="tns:claimCheck"/>
+                        
             <xs:element ref="tns:convertBodyTo"/>
+                        
             <xs:element ref="tns:delay"/>
+                        
             <xs:element ref="tns:dynamicRouter"/>
+                        
             <xs:element ref="tns:enrich"/>
+                        
             <xs:element ref="tns:filter"/>
+                        
             <xs:element ref="tns:doFinally"/>
+                        
             <xs:element ref="tns:idempotentConsumer"/>
+                        
             <xs:element ref="tns:inOnly"/>
+                        
             <xs:element ref="tns:inOut"/>
+                        
             <xs:element ref="tns:intercept"/>
+                        
             <xs:element ref="tns:interceptFrom"/>
+                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
+                        
             <xs:element ref="tns:loadBalance"/>
+                        
             <xs:element ref="tns:log"/>
+                        
             <xs:element ref="tns:loop"/>
+                        
             <xs:element ref="tns:marshal"/>
+                        
             <xs:element ref="tns:multicast"/>
+                        
             <xs:element ref="tns:onCompletion"/>
+                        
             <xs:element ref="tns:onException"/>
+                        
             <xs:element ref="tns:onFallback"/>
+                        
             <xs:element ref="tns:pipeline"/>
+                        
             <xs:element ref="tns:policy"/>
+                        
             <xs:element ref="tns:pollEnrich"/>
+                        
             <xs:element ref="tns:process"/>
+                        
             <xs:element ref="tns:recipientList"/>
+                        
             <xs:element ref="tns:removeHeader"/>
+                        
             <xs:element ref="tns:removeHeaders"/>
+                        
             <xs:element ref="tns:removeProperties"/>
+                        
             <xs:element ref="tns:removeProperty"/>
+                        
             <xs:element ref="tns:resequence"/>
+                        
             <xs:element ref="tns:rollback"/>
+                        
             <xs:element ref="tns:route"/>
+                        
             <xs:element ref="tns:routingSlip"/>
+                        
             <xs:element ref="tns:saga"/>
+                        
             <xs:element ref="tns:sample"/>
+                        
             <xs:element ref="tns:script"/>
+                        
             <xs:element ref="tns:setBody"/>
+                        
             <xs:element ref="tns:setExchangePattern"/>
+                        
             <xs:element ref="tns:setHeader"/>
+                        
             <xs:element ref="tns:setProperty"/>
+                        
             <xs:element ref="tns:sort"/>
+                        
             <xs:element ref="tns:split"/>
+                        
             <xs:element ref="tns:step"/>
+                        
             <xs:element ref="tns:stop"/>
+                        
             <xs:element ref="tns:threads"/>
+                        
             <xs:element ref="tns:throttle"/>
+                        
             <xs:element ref="tns:throwException"/>
+                        
             <xs:element ref="tns:to"/>
+                        
             <xs:element ref="tns:toD"/>
+                        
             <xs:element ref="tns:transacted"/>
+                        
             <xs:element ref="tns:transform"/>
+                        
             <xs:element ref="tns:doTry"/>
+                        
             <xs:element ref="tns:unmarshal"/>
+                        
             <xs:element ref="tns:validate"/>
+                        
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
+                        
             <xs:element ref="tns:wireTap"/>
+                        
             <xs:element ref="tns:serviceCall"/>
+                      
           </xs:choice>
+                  
         </xs:sequence>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="whenDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:processorDefinition">
+                
         <xs:sequence>
+                    
           <xs:choice>
+                        
             <xs:element ref="tns:expressionDefinition"/>
+                        
             <xs:element ref="tns:constant"/>
+                        
             <xs:element ref="tns:exchangeProperty"/>
+                        
             <xs:element ref="tns:groovy"/>
+                        
             <xs:element ref="tns:header"/>
+                        
             <xs:element ref="tns:hl7terser"/>
+                        
             <xs:element ref="tns:jsonpath"/>
+                        
             <xs:element ref="tns:language"/>
+                        
             <xs:element ref="tns:method"/>
+                        
             <xs:element ref="tns:mvel"/>
+                        
             <xs:element ref="tns:ognl"/>
+                        
             <xs:element ref="tns:ref"/>
+                        
             <xs:element ref="tns:simple"/>
+                        
             <xs:element ref="tns:spel"/>
+                        
             <xs:element ref="tns:tokenize"/>
+                        
             <xs:element ref="tns:xtokenize"/>
+                        
             <xs:element ref="tns:xpath"/>
+                        
             <xs:element ref="tns:xquery"/>
+                      
           </xs:choice>
+                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
+                        
             <xs:element ref="tns:aggregate"/>
+                        
             <xs:element ref="tns:bean"/>
+                        
             <xs:element ref="tns:doCatch"/>
+                        
             <xs:element ref="tns:when"/>
+                        
             <xs:element ref="tns:choice"/>
+                        
             <xs:element ref="tns:otherwise"/>
+                        
             <xs:element ref="tns:circuitBreaker"/>
+                        
             <xs:element ref="tns:claimCheck"/>
+                        
             <xs:element ref="tns:convertBodyTo"/>
+                        
             <xs:element ref="tns:delay"/>
+                        
             <xs:element ref="tns:dynamicRouter"/>
+                        
             <xs:element ref="tns:enrich"/>
+                        
             <xs:element ref="tns:filter"/>
+                        
             <xs:element ref="tns:doFinally"/>
+                        
             <xs:element ref="tns:idempotentConsumer"/>
+                        
             <xs:element ref="tns:inOnly"/>
+                        
             <xs:element ref="tns:inOut"/>
+                        
             <xs:element ref="tns:intercept"/>
+                        
             <xs:element ref="tns:interceptFrom"/>
+                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
+                        
             <xs:element ref="tns:loadBalance"/>
+                        
             <xs:element ref="tns:log"/>
+                        
             <xs:element ref="tns:loop"/>
+                        
             <xs:element ref="tns:marshal"/>
+                        
             <xs:element ref="tns:multicast"/>
+                        
             <xs:element ref="tns:onCompletion"/>
+                        
             <xs:element ref="tns:onException"/>
+                        
             <xs:element ref="tns:onFallback"/>
+                        
             <xs:element ref="tns:pipeline"/>
+                        
             <xs:element ref="tns:policy"/>
+                        
             <xs:element ref="tns:pollEnrich"/>
+                        
             <xs:element ref="tns:process"/>
+                        
             <xs:element ref="tns:recipientList"/>
+                        
             <xs:element ref="tns:removeHeader"/>
+                        
             <xs:element ref="tns:removeHeaders"/>
+                        
             <xs:element ref="tns:removeProperties"/>
+                        
             <xs:element ref="tns:removeProperty"/>
+                        
             <xs:element ref="tns:resequence"/>
+                        
             <xs:element ref="tns:rollback"/>
+                        
             <xs:element ref="tns:route"/>
+                        
             <xs:element ref="tns:routingSlip"/>
+                        
             <xs:element ref="tns:saga"/>
+                        
             <xs:element ref="tns:sample"/>
+                        
             <xs:element ref="tns:script"/>
+                        
             <xs:element ref="tns:setBody"/>
+                        
             <xs:element ref="tns:setExchangePattern"/>
+                        
             <xs:element ref="tns:setHeader"/>
+                        
             <xs:element ref="tns:setProperty"/>
+                        
             <xs:element ref="tns:sort"/>
+                        
             <xs:element ref="tns:split"/>
+                        
             <xs:element ref="tns:step"/>
+                        
             <xs:element ref="tns:stop"/>
+                        
             <xs:element ref="tns:threads"/>
+                        
             <xs:element ref="tns:throttle"/>
+                        
             <xs:element ref="tns:throwException"/>
+                        
             <xs:element ref="tns:to"/>
+                        
             <xs:element ref="tns:toD"/>
+                        
             <xs:element ref="tns:transacted"/>
+                        
             <xs:element ref="tns:transform"/>
+                        
             <xs:element ref="tns:doTry"/>
+                        
             <xs:element ref="tns:unmarshal"/>
+                        
             <xs:element ref="tns:validate"/>
+                        
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
+                        
             <xs:element ref="tns:wireTap"/>
+                        
             <xs:element ref="tns:serviceCall"/>
+                      
           </xs:choice>
+                  
         </xs:sequence>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="choiceDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:processorDefinition">
+                
         <xs:sequence>
+                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
+                        
             <xs:element ref="tns:when"/>
+                        
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
+                      
           </xs:choice>
+                    
           <xs:element minOccurs="0" ref="tns:otherwise"/>
+                  
         </xs:sequence>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="otherwiseDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:output">
+                
         <xs:sequence>
+                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
+                        
             <xs:element ref="tns:aggregate"/>
+                        
             <xs:element ref="tns:bean"/>
+                        
             <xs:element ref="tns:doCatch"/>
+                        
             <xs:element ref="tns:when"/>
+                        
             <xs:element ref="tns:choice"/>
+                        
             <xs:element ref="tns:otherwise"/>
+                        
             <xs:element ref="tns:circuitBreaker"/>
+                        
             <xs:element ref="tns:claimCheck"/>
+                        
             <xs:element ref="tns:convertBodyTo"/>
+                        
             <xs:element ref="tns:delay"/>
+                        
             <xs:element ref="tns:dynamicRouter"/>
+                        
             <xs:element ref="tns:enrich"/>
+                        
             <xs:element ref="tns:filter"/>
+                        
             <xs:element ref="tns:doFinally"/>
+                        
             <xs:element ref="tns:idempotentConsumer"/>
+                        
             <xs:element ref="tns:inOnly"/>
+                        
             <xs:element ref="tns:inOut"/>
+                        
             <xs:element ref="tns:intercept"/>
+                        
             <xs:element ref="tns:interceptFrom"/>
+                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
+                        
             <xs:element ref="tns:loadBalance"/>
+                        
             <xs:element ref="tns:log"/>
+                        
             <xs:element ref="tns:loop"/>
+                        
             <xs:element ref="tns:marshal"/>
+                        
             <xs:element ref="tns:multicast"/>
+                        
             <xs:element ref="tns:onCompletion"/>
+                        
             <xs:element ref="tns:onException"/>
+                        
             <xs:element ref="tns:onFallback"/>
+                        
             <xs:element ref="tns:pipeline"/>
+                        
             <xs:element ref="tns:policy"/>
+                        
             <xs:element ref="tns:pollEnrich"/>
+                        
             <xs:element ref="tns:process"/>
+                        
             <xs:element ref="tns:recipientList"/>
+                        
             <xs:element ref="tns:removeHeader"/>
+                        
             <xs:element ref="tns:removeHeaders"/>
+                        
             <xs:element ref="tns:removeProperties"/>
+                        
             <xs:element ref="tns:removeProperty"/>
+                        
             <xs:element ref="tns:resequence"/>
+                        
             <xs:element ref="tns:rollback"/>
+                        
             <xs:element ref="tns:route"/>
+                        
             <xs:element ref="tns:routingSlip"/>
+                        
             <xs:element ref="tns:saga"/>
+                        
             <xs:element ref="tns:sample"/>
+                        
             <xs:element ref="tns:script"/>
+                        
             <xs:element ref="tns:setBody"/>
+                        
             <xs:element ref="tns:setExchangePattern"/>
+                        
             <xs:element ref="tns:setHeader"/>
+                        
             <xs:element ref="tns:setProperty"/>
+                        
             <xs:element ref="tns:sort"/>
+                        
             <xs:element ref="tns:split"/>
+                        
             <xs:element ref="tns:step"/>
+                        
             <xs:element ref="tns:stop"/>
+                        
             <xs:element ref="tns:threads"/>
+                        
             <xs:element ref="tns:throttle"/>
+                        
             <xs:element ref="tns:throwException"/>
+                        
             <xs:element ref="tns:to"/>
+                        
             <xs:element ref="tns:toD"/>
+                        
             <xs:element ref="tns:transacted"/>
+                        
             <xs:element ref="tns:transform"/>
+                        
             <xs:element ref="tns:doTry"/>
+                        
             <xs:element ref="tns:unmarshal"/>
+                        
             <xs:element ref="tns:validate"/>
+                        
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
+                        
             <xs:element ref="tns:wireTap"/>
+                        
             <xs:element ref="tns:serviceCall"/>
+                      
           </xs:choice>
+                  
         </xs:sequence>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="circuitBreakerDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:output">
+                
         <xs:sequence>
+                    
           <xs:element minOccurs="0" ref="tns:hystrixConfiguration"/>
+                    
           <xs:element minOccurs="0" ref="tns:resilience4jConfiguration"/>
+                    
           <xs:element minOccurs="0" ref="tns:faultToleranceConfiguration"/>
+                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
+                        
             <xs:element ref="tns:aggregate"/>
+                        
             <xs:element ref="tns:bean"/>
+                        
             <xs:element ref="tns:doCatch"/>
+                        
             <xs:element ref="tns:when"/>
+                        
             <xs:element ref="tns:choice"/>
+                        
             <xs:element ref="tns:otherwise"/>
+                        
             <xs:element ref="tns:circuitBreaker"/>
+                        
             <xs:element ref="tns:claimCheck"/>
+                        
             <xs:element ref="tns:convertBodyTo"/>
+                        
             <xs:element ref="tns:delay"/>
+                        
             <xs:element ref="tns:dynamicRouter"/>
+                        
             <xs:element ref="tns:enrich"/>
+                        
             <xs:element ref="tns:filter"/>
+                        
             <xs:element ref="tns:doFinally"/>
+                        
             <xs:element ref="tns:idempotentConsumer"/>
+                        
             <xs:element ref="tns:inOnly"/>
+                        
             <xs:element ref="tns:inOut"/>
+                        
             <xs:element ref="tns:intercept"/>
+                        
             <xs:element ref="tns:interceptFrom"/>
+                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
+                        
             <xs:element ref="tns:loadBalance"/>
+                        
             <xs:element ref="tns:log"/>
+                        
             <xs:element ref="tns:loop"/>
+                        
             <xs:element ref="tns:marshal"/>
+                        
             <xs:element ref="tns:multicast"/>
+                        
             <xs:element ref="tns:onCompletion"/>
+                        
             <xs:element ref="tns:onException"/>
+                        
             <xs:element ref="tns:onFallback"/>
+                        
             <xs:element ref="tns:pipeline"/>
+                        
             <xs:element ref="tns:policy"/>
+                        
             <xs:element ref="tns:pollEnrich"/>
+                        
             <xs:element ref="tns:process"/>
+                        
             <xs:element ref="tns:recipientList"/>
+                        
             <xs:element ref="tns:removeHeader"/>
+                        
             <xs:element ref="tns:removeHeaders"/>
+                        
             <xs:element ref="tns:removeProperties"/>
+                        
             <xs:element ref="tns:removeProperty"/>
+                        
             <xs:element ref="tns:resequence"/>
+                        
             <xs:element ref="tns:rollback"/>
+                        
             <xs:element ref="tns:route"/>
+                        
             <xs:element ref="tns:routingSlip"/>
+                        
             <xs:element ref="tns:saga"/>
+                        
             <xs:element ref="tns:sample"/>
+                        
             <xs:element ref="tns:script"/>
+                        
             <xs:element ref="tns:setBody"/>
+                        
             <xs:element ref="tns:setExchangePattern"/>
+                        
             <xs:element ref="tns:setHeader"/>
+                        
             <xs:element ref="tns:setProperty"/>
+                        
             <xs:element ref="tns:sort"/>
+                        
             <xs:element ref="tns:split"/>
+                        
             <xs:element ref="tns:step"/>
+                        
             <xs:element ref="tns:stop"/>
+                        
             <xs:element ref="tns:threads"/>
+                        
             <xs:element ref="tns:throttle"/>
+                        
             <xs:element ref="tns:throwException"/>
+                        
             <xs:element ref="tns:to"/>
+                        
             <xs:element ref="tns:toD"/>
+                        
             <xs:element ref="tns:transacted"/>
+                        
             <xs:element ref="tns:transform"/>
+                        
             <xs:element ref="tns:doTry"/>
+                        
             <xs:element ref="tns:unmarshal"/>
+                        
             <xs:element ref="tns:validate"/>
+                        
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
+                        
             <xs:element ref="tns:wireTap"/>
+                        
             <xs:element ref="tns:serviceCall"/>
+                      
           </xs:choice>
+                  
         </xs:sequence>
+                
         <xs:attribute name="configurationRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Refers to a circuit breaker configuration (such as hystrix, resillience4j, or
 microprofile-fault-tolerance) to use for configuring the circuit breaker EIP.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="hystrixConfigurationDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:hystrixConfigurationCommon">
+                
         <xs:sequence/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="hystrixConfigurationCommon">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence/>
+                
         <xs:attribute name="groupKey" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the group key to use. The default value is CamelHystrix. Default value:
 CamelHystrix
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="threadPoolKey" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the thread pool key to use. Will by default use the same value as groupKey
 has been configured to use. Default value: CamelHystrix
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="circuitBreakerEnabled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether to use a HystrixCircuitBreaker or not. If false no circuit-breaker logic
 will be used and all requests permitted. This is similar in effect to
 circuitBreakerForceClosed() except that continues tracking metrics and knowing
 whether it should be open/closed, this property results in not even
 instantiating a circuit-breaker. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="circuitBreakerErrorThresholdPercentage" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Error percentage threshold (as whole number such as 50) at which point the
 circuit breaker will trip open and reject requests. It will stay tripped for the
 duration defined in circuitBreakerSleepWindowInMilliseconds; The error
 percentage this is compared against comes from
 HystrixCommandMetrics.getHealthCounts(). Default value: 50
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="circuitBreakerForceClosed" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 If true the HystrixCircuitBreaker#allowRequest() will always return true to
 allow requests regardless of the error percentage from
 HystrixCommandMetrics.getHealthCounts(). The circuitBreakerForceOpen() property
 takes precedence so if it set to true this property does nothing. Default value:
 false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="circuitBreakerForceOpen" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 If true the HystrixCircuitBreaker.allowRequest() will always return false,
 causing the circuit to be open (tripped) and reject all requests. This property
 takes precedence over circuitBreakerForceClosed();. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="circuitBreakerRequestVolumeThreshold" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Minimum number of requests in the
 metricsRollingStatisticalWindowInMilliseconds() that must exist before the
 HystrixCircuitBreaker will trip. If below this number the circuit will not trip
 regardless of error percentage. Default value: 20
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="circuitBreakerSleepWindowInMilliseconds" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 The time in milliseconds after a HystrixCircuitBreaker trips open that it should
 wait before trying requests again. Default value: 5000
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="executionIsolationSemaphoreMaxConcurrentRequests" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Number of concurrent requests permitted to HystrixCommand.run(). Requests beyond
 the concurrent limit will be rejected. Applicable only when
 executionIsolationStrategy == SEMAPHORE. Default value: 20
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="executionIsolationStrategy" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 What isolation strategy HystrixCommand.run() will be executed with. If THREAD
 then it will be executed on a separate thread and concurrent requests limited by
 the number of threads in the thread-pool. If SEMAPHORE then it will be executed
 on the calling thread and concurrent requests limited by the semaphore count.
 Default value: THREAD
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="executionIsolationThreadInterruptOnTimeout" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether the execution thread should attempt an interrupt (using Future#cancel )
 when a thread times out. Applicable only when executionIsolationStrategy() ==
 THREAD. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="executionTimeoutInMilliseconds" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Time in milliseconds at which point the command will timeout and halt execution.
 If executionIsolationThreadInterruptOnTimeout == true and the command is
 thread-isolated, the executing thread will be interrupted. If the command is
 semaphore-isolated and a HystrixObservableCommand, that command will get
 unsubscribed. Default value: 1000
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="executionTimeoutEnabled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether the timeout mechanism is enabled for this command. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="fallbackIsolationSemaphoreMaxConcurrentRequests" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Number of concurrent requests permitted to HystrixCommand.getFallback().
 Requests beyond the concurrent limit will fail-fast and not attempt retrieving a
 fallback. Default value: 10
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="fallbackEnabled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether HystrixCommand.getFallback() should be attempted when failure occurs.
 Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="metricsHealthSnapshotIntervalInMilliseconds" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Time in milliseconds to wait between allowing health snapshots to be taken that
 calculate success and error percentages and affect
 HystrixCircuitBreaker.isOpen() status. On high-volume circuits the continual
 calculation of error percentage can become CPU intensive thus this controls how
 often it is calculated. Default value: 500
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="metricsRollingPercentileBucketSize" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Maximum number of values stored in each bucket of the rolling percentile. This
 is passed into HystrixRollingPercentile inside HystrixCommandMetrics. Default
 value: 10
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="metricsRollingPercentileEnabled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether percentile metrics should be captured using HystrixRollingPercentile
 inside HystrixCommandMetrics. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="metricsRollingPercentileWindowInMilliseconds" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Duration of percentile rolling window in milliseconds. This is passed into
 HystrixRollingPercentile inside HystrixCommandMetrics. Default value: 10000
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="metricsRollingPercentileWindowBuckets" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Number of buckets the rolling percentile window is broken into. This is passed
 into HystrixRollingPercentile inside HystrixCommandMetrics. Default value: 6
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="metricsRollingStatisticalWindowInMilliseconds" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 This property sets the duration of the statistical rolling window, in
 milliseconds. This is how long metrics are kept for the thread pool. The window
 is divided into buckets and rolls by those increments. Default value: 10000
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="metricsRollingStatisticalWindowBuckets" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Number of buckets the rolling statistical window is broken into. This is passed
 into HystrixRollingNumber inside HystrixCommandMetrics. Default value: 10
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="requestLogEnabled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether HystrixCommand execution and events should be logged to
 HystrixRequestLog. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="corePoolSize" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Core thread-pool size that gets passed to
 java.util.concurrent.ThreadPoolExecutor#setCorePoolSize(int). Default value: 10
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="maximumSize" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Maximum thread-pool size that gets passed to
 ThreadPoolExecutor#setMaximumPoolSize(int) . This is the maximum amount of
 concurrency that can be supported without starting to reject HystrixCommands.
 Please note that this setting only takes effect if you also set
 allowMaximumSizeToDivergeFromCoreSize. Default value: 10
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="keepAliveTime" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Keep-alive time in minutes that gets passed to
 ThreadPoolExecutor#setKeepAliveTime(long,TimeUnit). Default value: 1
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="maxQueueSize" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Max queue size that gets passed to BlockingQueue in
 HystrixConcurrencyStrategy.getBlockingQueue(int) This should only affect the
 instantiation of a threadpool - it is not eliglible to change a queue size on
 the fly. For that, use queueSizeRejectionThreshold(). Default value: -1
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="queueSizeRejectionThreshold" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Queue size rejection threshold is an artificial max size at which rejections
 will occur even if maxQueueSize has not been reached. This is done because the
 maxQueueSize of a BlockingQueue can not be dynamically changed and we want to
 support dynamically changing the queue size that affects rejections. This is
 used by HystrixCommand when queuing a thread for execution. Default value: 5
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="threadPoolRollingNumberStatisticalWindowInMilliseconds" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Duration of statistical rolling window in milliseconds. This is passed into
 HystrixRollingNumber inside each HystrixThreadPoolMetrics instance. Default
 value: 10000
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="threadPoolRollingNumberStatisticalWindowBuckets" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Number of buckets the rolling statistical window is broken into. This is passed
 into HystrixRollingNumber inside each HystrixThreadPoolMetrics instance. Default
 value: 10
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="allowMaximumSizeToDivergeFromCoreSize" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Allows the configuration for maximumSize to take effect. That value can then be
 equal to, or higher, than coreSize. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="resilience4JConfigurationDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:resilience4JConfigurationCommon">
+                
         <xs:sequence/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="resilience4JConfigurationCommon">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence>
+                    
           <xs:element minOccurs="0" name="bulkheadEnabled" type="xs:string"/>
+                    
           <xs:element minOccurs="0" name="bulkheadMaxConcurrentCalls" type="xs:string"/>
+                    
           <xs:element minOccurs="0" name="bulkheadMaxWaitDuration" type="xs:string"/>
+                    
           <xs:element minOccurs="0" name="timeoutEnabled" type="xs:string"/>
+                    
           <xs:element minOccurs="0" name="timeoutExecutorServiceRef" type="xs:string"/>
+                    
           <xs:element minOccurs="0" name="timeoutDuration" type="xs:string"/>
+                    
           <xs:element minOccurs="0" name="timeoutCancelRunningFuture" type="xs:string"/>
+                  
         </xs:sequence>
+                
         <xs:attribute name="circuitBreakerRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Refers to an existing io.github.resilience4j.circuitbreaker.CircuitBreaker
 instance to lookup and use from the registry. When using this, then any other
 circuit breaker options are not in use.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="configRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Refers to an existing io.github.resilience4j.circuitbreaker.CircuitBreakerConfig
 instance to lookup and use from the registry.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="failureRateThreshold" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Configures the failure rate threshold in percentage. If the failure rate is
 equal or greater than the threshold the CircuitBreaker transitions to open and
 starts short-circuiting calls. The threshold must be greater than 0 and not
 greater than 100. Default value is 50 percentage. Default value: 50
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="permittedNumberOfCallsInHalfOpenState" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Configures the number of permitted calls when the CircuitBreaker is half open.
 The size must be greater than 0. Default size is 10. Default value: 10
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="slidingWindowSize" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Configures the size of the sliding window which is used to record the outcome of
 calls when the CircuitBreaker is closed. slidingWindowSize configures the size
 of the sliding window. Sliding window can either be count-based or time-based.
@@ -4031,63 +5648,81 @@ greater than 0. If the slidingWindowType is COUNT_BASED, the
 minimumNumberOfCalls cannot be greater than slidingWindowSize . If the
 slidingWindowType is TIME_BASED, you can pick whatever you want. Default
 slidingWindowSize is 100. Default value: 100
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="slidingWindowType" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Configures the type of the sliding window which is used to record the outcome of
 calls when the CircuitBreaker is closed. Sliding window can either be
 count-based or time-based. If slidingWindowType is COUNT_BASED, the last
 slidingWindowSize calls are recorded and aggregated. If slidingWindowType is
 TIME_BASED, the calls of the last slidingWindowSize seconds are recorded and
 aggregated. Default slidingWindowType is COUNT_BASED. Default value: COUNT_BASED
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="minimumNumberOfCalls" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Configures configures the minimum number of calls which are required (per
 sliding window period) before the CircuitBreaker can calculate the error rate.
 For example, if minimumNumberOfCalls is 10, then at least 10 calls must be
 recorded, before the failure rate can be calculated. If only 9 calls have been
 recorded the CircuitBreaker will not transition to open even if all 9 calls have
 failed. Default minimumNumberOfCalls is 100. Default value: 100
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="writableStackTraceEnabled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Enables writable stack traces. When set to false, Exception.getStackTrace
 returns a zero length array. This may be used to reduce log spam when the
 circuit breaker is open as the cause of the exceptions is already known (the
 circuit breaker is short-circuiting calls). Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="waitDurationInOpenState" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Configures the wait duration (in seconds) which specifies how long the
 CircuitBreaker should stay open, before it switches to half open. Default value
 is 60 seconds. Default value: 60
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="automaticTransitionFromOpenToHalfOpenEnabled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Enables automatic transition from OPEN to HALF_OPEN state once the
 waitDurationInOpenState has passed. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="slowCallRateThreshold" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Configures a threshold in percentage. The CircuitBreaker considers a call as
 slow when the call duration is greater than slowCallDurationThreshold(Duration.
 When the percentage of slow calls is equal or greater the threshold, the
@@ -4095,171 +5730,240 @@ CircuitBreaker transitions to open and starts short-circuiting calls. The
 threshold must be greater than 0 and not greater than 100. Default value is 100
 percentage which means that all recorded calls must be slower than
 slowCallDurationThreshold. Default value: 100
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="slowCallDurationThreshold" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Configures the duration threshold (seconds) above which calls are considered as
 slow and increase the slow calls percentage. Default value is 60 seconds.
 Default value: 60
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="faultToleranceConfigurationDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:faultToleranceConfigurationCommon">
+                
         <xs:sequence/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="faultToleranceConfigurationCommon">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence/>
+                
         <xs:attribute name="circuitBreakerRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Refers to an existing
 io.smallrye.faulttolerance.core.circuit.breaker.CircuitBreaker instance to
 lookup and use from the registry. When using this, then any other circuit
 breaker options are not in use.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="delay" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Control how long the circuit breaker stays open. The value are in seconds and
 the default is 5 seconds. Default value: 5s
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="successThreshold" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Controls the number of trial calls which are allowed when the circuit breaker is
 half-open. Default value: 1
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="requestVolumeThreshold" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Controls the size of the rolling window used when the circuit breaker is closed.
 Default value: 20
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="failureRatio" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Configures the failure rate threshold in percentage. If the failure rate is
 equal or greater than the threshold the CircuitBreaker transitions to open and
 starts short-circuiting calls. The threshold must be greater than 0 and not
 greater than 100. Default value is 50 percentage. Default value: 50
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="timeoutEnabled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether timeout is enabled or not on the circuit breaker. Default is false.
 Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="timeoutDuration" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Configures the thread execution timeout. Default value is 1 second. Default
 value: 1s
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="timeoutPoolSize" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Configures the pool size of the thread pool when timeout is enabled. Default
 value is 10. Default value: 10
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="timeoutScheduledExecutorServiceRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 References to a custom thread pool to use when timeout is enabled.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="bulkheadEnabled" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether bulkhead is enabled or not on the circuit breaker. Default is false.
 Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="bulkheadMaxConcurrentCalls" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Configures the max amount of concurrent calls the bulkhead will support. Default
 value: 10
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="bulkheadWaitingTaskQueue" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Configures the task queue size for holding waiting tasks to be processed by the
 bulkhead. Default value: 10
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="bulkheadExecutorServiceRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 References to a custom thread pool to use when bulkhead is enabled.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="claimCheckDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:noOutputDefinition">
+                
         <xs:sequence/>
+                
         <xs:attribute name="operation" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 The claim check operation to use. The following operations is supported: Get -
 Gets (does not remove) the claim check by the given key. GetAndRemove - Gets and
 remove the claim check by the given key. Set - Sets a new (will override if key
 already exists) claim check with the given key. Push - Sets a new claim check on
 the stack (does not use key). Pop - Gets the latest claim check from the stack
 (does not use key).
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="key" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 To use a specific key for claim check id (for dynamic keys use simple language
 syntax as the key).
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="filter" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Specified a filter to control what data gets merging data back from the claim
 check repository. The following syntax is supported: body - to aggregate the
 message body attachments - to aggregate all the message attachments headers - to
@@ -4275,180 +5979,285 @@ the default mode) - - to exclude (exclude takes precedence over include) -- - to
 remove (remove takes precedence) For example to exclude a header name foo, and
 remove all headers starting with bar -header:foo,--headers:bar Note you cannot
 have both include and exclude header:pattern at the same time.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="strategyRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 To use a custom AggregationStrategy instead of the default implementation.
 Notice you cannot use both custom aggregation strategy and configure data at the
 same time.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="strategyMethodName" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 This option can be used to explicit declare the method name to use, when using
 POJOs as the AggregationStrategy.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType final="extension restriction" name="constants">
+        
     <xs:sequence/>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="contextScanDefinition">
+        
     <xs:sequence>
+            
       <xs:element maxOccurs="unbounded" minOccurs="0" name="excludes" type="xs:string"/>
+            
       <xs:element maxOccurs="unbounded" minOccurs="0" name="includes" type="xs:string"/>
+          
     </xs:sequence>
+        
     <xs:attribute name="includeNonSingletons" type="xs:string">
       <xs:annotation>
-        <xs:documentation xml:lang="en"><![CDATA[
+        <xs:documentation xml:lang="en">
+          <![CDATA[
 Whether to include non-singleton beans (prototypes) By default only singleton
 beans is included in the context scan. Default value: false
-        ]]></xs:documentation>
+        ]]>
+        </xs:documentation>
       </xs:annotation>
     </xs:attribute>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="convertBodyDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:noOutputDefinition">
+                
         <xs:sequence/>
+                
         <xs:attribute name="type" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 The java type to convert to.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="charset" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 To use a specific charset when converting.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="dataFormat">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence/>
+                
         <xs:attribute name="contentTypeHeader" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether the data format should set the Content-Type header with the type from
 the data format if the data format is capable of doing so. For example
 application/xml for data formats marshalling to XML, or application/json for
 data formats marshalling to JSON etc. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="delayDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:processorDefinition">
+                
         <xs:choice>
+                    
           <xs:element ref="tns:expressionDefinition"/>
+                    
           <xs:element ref="tns:constant"/>
+                    
           <xs:element ref="tns:exchangeProperty"/>
+                    
           <xs:element ref="tns:groovy"/>
+                    
           <xs:element ref="tns:header"/>
+                    
           <xs:element ref="tns:hl7terser"/>
+                    
           <xs:element ref="tns:jsonpath"/>
+                    
           <xs:element ref="tns:language"/>
+                    
           <xs:element ref="tns:method"/>
+                    
           <xs:element ref="tns:mvel"/>
+                    
           <xs:element ref="tns:ognl"/>
+                    
           <xs:element ref="tns:ref"/>
+                    
           <xs:element ref="tns:simple"/>
+                    
           <xs:element ref="tns:spel"/>
+                    
           <xs:element ref="tns:tokenize"/>
+                    
           <xs:element ref="tns:xtokenize"/>
+                    
           <xs:element ref="tns:xpath"/>
+                    
           <xs:element ref="tns:xquery"/>
+                  
         </xs:choice>
+                
         <xs:attribute name="executorServiceRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Refers to a custom Thread Pool if asyncDelay has been enabled.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="asyncDelayed" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Enables asynchronous delay which means the thread will not block while delaying.
 Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="callerRunsWhenRejected" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether or not the caller should run the task when it was rejected by the thread
 pool. Is by default true. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="dynamicRouterDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:processorDefinition">
+                
         <xs:choice>
+                    
           <xs:element ref="tns:expressionDefinition"/>
+                    
           <xs:element ref="tns:constant"/>
+                    
           <xs:element ref="tns:exchangeProperty"/>
+                    
           <xs:element ref="tns:groovy"/>
+                    
           <xs:element ref="tns:header"/>
+                    
           <xs:element ref="tns:hl7terser"/>
+                    
           <xs:element ref="tns:jsonpath"/>
+                    
           <xs:element ref="tns:language"/>
+                    
           <xs:element ref="tns:method"/>
+                    
           <xs:element ref="tns:mvel"/>
+                    
           <xs:element ref="tns:ognl"/>
+                    
           <xs:element ref="tns:ref"/>
+                    
           <xs:element ref="tns:simple"/>
+                    
           <xs:element ref="tns:spel"/>
+                    
           <xs:element ref="tns:tokenize"/>
+                    
           <xs:element ref="tns:xtokenize"/>
+                    
           <xs:element ref="tns:xpath"/>
+                    
           <xs:element ref="tns:xquery"/>
+                  
         </xs:choice>
+                
         <xs:attribute name="uriDelimiter" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the uri delimiter to use. Default value: ,
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="ignoreInvalidEndpoints" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Ignore the invalidate endpoint exception when try to create a producer with that
 endpoint.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="cacheSize" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the maximum size used by the org.apache.camel.spi.ProducerCache which is
 used to cache and reuse producers when using this dynamic router, when uris are
 reused. Beware that when using dynamic endpoints then it affects how well the
@@ -4463,87 +6272,130 @@ size can be set accordingly or rely on the default size (1000). If there is a
 mix of unique and used before dynamic endpoints, then setting a reasonable cache
 size can help reduce memory usage to avoid storing too many non frequent used
 producers.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="enrichDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:processorDefinition">
+                
         <xs:choice>
+                    
           <xs:element ref="tns:expressionDefinition"/>
+                    
           <xs:element ref="tns:constant"/>
+                    
           <xs:element ref="tns:exchangeProperty"/>
+                    
           <xs:element ref="tns:groovy"/>
+                    
           <xs:element ref="tns:header"/>
+                    
           <xs:element ref="tns:hl7terser"/>
+                    
           <xs:element ref="tns:jsonpath"/>
+                    
           <xs:element ref="tns:language"/>
+                    
           <xs:element ref="tns:method"/>
+                    
           <xs:element ref="tns:mvel"/>
+                    
           <xs:element ref="tns:ognl"/>
+                    
           <xs:element ref="tns:ref"/>
+                    
           <xs:element ref="tns:simple"/>
+                    
           <xs:element ref="tns:spel"/>
+                    
           <xs:element ref="tns:tokenize"/>
+                    
           <xs:element ref="tns:xtokenize"/>
+                    
           <xs:element ref="tns:xpath"/>
+                    
           <xs:element ref="tns:xquery"/>
+                  
         </xs:choice>
+                
         <xs:attribute name="strategyRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Refers to an AggregationStrategy to be used to merge the reply from the external
 service, into a single outgoing message. By default Camel will use the reply
 from the external service as outgoing message.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="strategyMethodName" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 This option can be used to explicit declare the method name to use, when using
 POJOs as the AggregationStrategy.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="strategyMethodAllowNull" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 If this option is false then the aggregate method is not used if there was no
 data to enrich. If this option is true then null values is used as the
 oldExchange (when no data to enrich), when using POJOs as the
 AggregationStrategy.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="aggregateOnException" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 If this option is false then the aggregate method is not used if there was an
 exception thrown while trying to retrieve the data to enrich from the resource.
 Setting this option to true allows end users to control what to do if there was
 an exception in the aggregate method. For example to suppress the exception or
 set a custom message body etc. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="shareUnitOfWork" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Shares the org.apache.camel.spi.UnitOfWork with the parent and the resource
 exchange. Enrich will by default not share unit of work between the parent
 exchange and the resource exchange. This means the resource exchange has its own
 individual unit of work. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="cacheSize" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the maximum size used by the org.apache.camel.spi.ProducerCache which is
 used to cache and reuse producer when uris are reused. Beware that when using
 dynamic endpoints then it affects how well the cache can be utilized. If each
@@ -4557,342 +6409,637 @@ and endpoints and therefore the cache size can be set accordingly or rely on the
 default size (1000). If there is a mix of unique and used before dynamic
 endpoints, then setting a reasonable cache size can help reduce memory usage to
 avoid storing too many non frequent used producers.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="ignoreInvalidEndpoint" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Ignore the invalidate endpoint exception when try to create a producer with that
 endpoint. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="filterDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:processorDefinition">
+                
         <xs:sequence>
+                    
           <xs:choice>
+                        
             <xs:element ref="tns:expressionDefinition"/>
+                        
             <xs:element ref="tns:constant"/>
+                        
             <xs:element ref="tns:exchangeProperty"/>
+                        
             <xs:element ref="tns:groovy"/>
+                        
             <xs:element ref="tns:header"/>
+                        
             <xs:element ref="tns:hl7terser"/>
+                        
             <xs:element ref="tns:jsonpath"/>
+                        
             <xs:element ref="tns:language"/>
+                        
             <xs:element ref="tns:method"/>
+                        
             <xs:element ref="tns:mvel"/>
+                        
             <xs:element ref="tns:ognl"/>
+                        
             <xs:element ref="tns:ref"/>
+                        
             <xs:element ref="tns:simple"/>
+                        
             <xs:element ref="tns:spel"/>
+                        
             <xs:element ref="tns:tokenize"/>
+                        
             <xs:element ref="tns:xtokenize"/>
+                        
             <xs:element ref="tns:xpath"/>
+                        
             <xs:element ref="tns:xquery"/>
+                      
           </xs:choice>
+                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
+                        
             <xs:element ref="tns:aggregate"/>
+                        
             <xs:element ref="tns:bean"/>
+                        
             <xs:element ref="tns:doCatch"/>
+                        
             <xs:element ref="tns:when"/>
+                        
             <xs:element ref="tns:choice"/>
+                        
             <xs:element ref="tns:otherwise"/>
+                        
             <xs:element ref="tns:circuitBreaker"/>
+                        
             <xs:element ref="tns:claimCheck"/>
+                        
             <xs:element ref="tns:convertBodyTo"/>
+                        
             <xs:element ref="tns:delay"/>
+                        
             <xs:element ref="tns:dynamicRouter"/>
+                        
             <xs:element ref="tns:enrich"/>
+                        
             <xs:element ref="tns:filter"/>
+                        
             <xs:element ref="tns:doFinally"/>
+                        
             <xs:element ref="tns:idempotentConsumer"/>
+                        
             <xs:element ref="tns:inOnly"/>
+                        
             <xs:element ref="tns:inOut"/>
+                        
             <xs:element ref="tns:intercept"/>
+                        
             <xs:element ref="tns:interceptFrom"/>
+                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
+                        
             <xs:element ref="tns:loadBalance"/>
+                        
             <xs:element ref="tns:log"/>
+                        
             <xs:element ref="tns:loop"/>
+                        
             <xs:element ref="tns:marshal"/>
+                        
             <xs:element ref="tns:multicast"/>
+                        
             <xs:element ref="tns:onCompletion"/>
+                        
             <xs:element ref="tns:onException"/>
+                        
             <xs:element ref="tns:onFallback"/>
+                        
             <xs:element ref="tns:pipeline"/>
+                        
             <xs:element ref="tns:policy"/>
+                        
             <xs:element ref="tns:pollEnrich"/>
+                        
             <xs:element ref="tns:process"/>
+                        
             <xs:element ref="tns:recipientList"/>
+                        
             <xs:element ref="tns:removeHeader"/>
+                        
             <xs:element ref="tns:removeHeaders"/>
+                        
             <xs:element ref="tns:removeProperties"/>
+                        
             <xs:element ref="tns:removeProperty"/>
+                        
             <xs:element ref="tns:resequence"/>
+                        
             <xs:element ref="tns:rollback"/>
+                        
             <xs:element ref="tns:route"/>
+                        
             <xs:element ref="tns:routingSlip"/>
+                        
             <xs:element ref="tns:saga"/>
+                        
             <xs:element ref="tns:sample"/>
+                        
             <xs:element ref="tns:script"/>
+                        
             <xs:element ref="tns:setBody"/>
+                        
             <xs:element ref="tns:setExchangePattern"/>
+                        
             <xs:element ref="tns:setHeader"/>
+                        
             <xs:element ref="tns:setProperty"/>
+                        
             <xs:element ref="tns:sort"/>
+                        
             <xs:element ref="tns:split"/>
+                        
             <xs:element ref="tns:step"/>
+                        
             <xs:element ref="tns:stop"/>
+                        
             <xs:element ref="tns:threads"/>
+                        
             <xs:element ref="tns:throttle"/>
+                        
             <xs:element ref="tns:throwException"/>
+                        
             <xs:element ref="tns:to"/>
+                        
             <xs:element ref="tns:toD"/>
+                        
             <xs:element ref="tns:transacted"/>
+                        
             <xs:element ref="tns:transform"/>
+                        
             <xs:element ref="tns:doTry"/>
+                        
             <xs:element ref="tns:unmarshal"/>
+                        
             <xs:element ref="tns:validate"/>
+                        
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
+                        
             <xs:element ref="tns:wireTap"/>
+                        
             <xs:element ref="tns:serviceCall"/>
+                      
           </xs:choice>
+                  
         </xs:sequence>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="finallyDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:output">
+                
         <xs:sequence>
+                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
+                        
             <xs:element ref="tns:aggregate"/>
+                        
             <xs:element ref="tns:bean"/>
+                        
             <xs:element ref="tns:doCatch"/>
+                        
             <xs:element ref="tns:when"/>
+                        
             <xs:element ref="tns:choice"/>
+                        
             <xs:element ref="tns:otherwise"/>
+                        
             <xs:element ref="tns:circuitBreaker"/>
+                        
             <xs:element ref="tns:claimCheck"/>
+                        
             <xs:element ref="tns:convertBodyTo"/>
+                        
             <xs:element ref="tns:delay"/>
+                        
             <xs:element ref="tns:dynamicRouter"/>
+                        
             <xs:element ref="tns:enrich"/>
+                        
             <xs:element ref="tns:filter"/>
+                        
             <xs:element ref="tns:doFinally"/>
+                        
             <xs:element ref="tns:idempotentConsumer"/>
+                        
             <xs:element ref="tns:inOnly"/>
+                        
             <xs:element ref="tns:inOut"/>
+                        
             <xs:element ref="tns:intercept"/>
+                        
             <xs:element ref="tns:interceptFrom"/>
+                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
+                        
             <xs:element ref="tns:loadBalance"/>
+                        
             <xs:element ref="tns:log"/>
+                        
             <xs:element ref="tns:loop"/>
+                        
             <xs:element ref="tns:marshal"/>
+                        
             <xs:element ref="tns:multicast"/>
+                        
             <xs:element ref="tns:onCompletion"/>
+                        
             <xs:element ref="tns:onException"/>
+                        
             <xs:element ref="tns:onFallback"/>
+                        
             <xs:element ref="tns:pipeline"/>
+                        
             <xs:element ref="tns:policy"/>
+                        
             <xs:element ref="tns:pollEnrich"/>
+                        
             <xs:element ref="tns:process"/>
+                        
             <xs:element ref="tns:recipientList"/>
+                        
             <xs:element ref="tns:removeHeader"/>
+                        
             <xs:element ref="tns:removeHeaders"/>
+                        
             <xs:element ref="tns:removeProperties"/>
+                        
             <xs:element ref="tns:removeProperty"/>
+                        
             <xs:element ref="tns:resequence"/>
+                        
             <xs:element ref="tns:rollback"/>
+                        
             <xs:element ref="tns:route"/>
+                        
             <xs:element ref="tns:routingSlip"/>
+                        
             <xs:element ref="tns:saga"/>
+                        
             <xs:element ref="tns:sample"/>
+                        
             <xs:element ref="tns:script"/>
+                        
             <xs:element ref="tns:setBody"/>
+                        
             <xs:element ref="tns:setExchangePattern"/>
+                        
             <xs:element ref="tns:setHeader"/>
+                        
             <xs:element ref="tns:setProperty"/>
+                        
             <xs:element ref="tns:sort"/>
+                        
             <xs:element ref="tns:split"/>
+                        
             <xs:element ref="tns:step"/>
+                        
             <xs:element ref="tns:stop"/>
+                        
             <xs:element ref="tns:threads"/>
+                        
             <xs:element ref="tns:throttle"/>
+                        
             <xs:element ref="tns:throwException"/>
+                        
             <xs:element ref="tns:to"/>
+                        
             <xs:element ref="tns:toD"/>
+                        
             <xs:element ref="tns:transacted"/>
+                        
             <xs:element ref="tns:transform"/>
+                        
             <xs:element ref="tns:doTry"/>
+                        
             <xs:element ref="tns:unmarshal"/>
+                        
             <xs:element ref="tns:validate"/>
+                        
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
+                        
             <xs:element ref="tns:wireTap"/>
+                        
             <xs:element ref="tns:serviceCall"/>
+                      
           </xs:choice>
+                  
         </xs:sequence>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="fromDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:optionalIdentifiedDefinition">
+                
         <xs:sequence/>
+                
         <xs:attribute name="uri" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the URI of the endpoint to use.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="globalOptionDefinition">
+        
     <xs:sequence/>
+        
     <xs:attribute name="key" type="xs:string" use="required">
       <xs:annotation>
-        <xs:documentation xml:lang="en"><![CDATA[
+        <xs:documentation xml:lang="en">
+          <![CDATA[
 Global option key.
-        ]]></xs:documentation>
+        ]]>
+        </xs:documentation>
       </xs:annotation>
     </xs:attribute>
+        
     <xs:attribute name="value" type="xs:string" use="required">
       <xs:annotation>
-        <xs:documentation xml:lang="en"><![CDATA[
+        <xs:documentation xml:lang="en">
+          <![CDATA[
 Global option value.
-        ]]></xs:documentation>
+        ]]>
+        </xs:documentation>
       </xs:annotation>
     </xs:attribute>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="globalOptionsDefinition">
+        
     <xs:sequence>
+            
       <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:globalOption"/>
+          
     </xs:sequence>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="idempotentConsumerDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:processorDefinition">
+                
         <xs:sequence>
+                    
           <xs:choice>
+                        
             <xs:element ref="tns:expressionDefinition"/>
+                        
             <xs:element ref="tns:constant"/>
+                        
             <xs:element ref="tns:exchangeProperty"/>
+                        
             <xs:element ref="tns:groovy"/>
+                        
             <xs:element ref="tns:header"/>
+                        
             <xs:element ref="tns:hl7terser"/>
+                        
             <xs:element ref="tns:jsonpath"/>
+                        
             <xs:element ref="tns:language"/>
+                        
             <xs:element ref="tns:method"/>
+                        
             <xs:element ref="tns:mvel"/>
+                        
             <xs:element ref="tns:ognl"/>
+                        
             <xs:element ref="tns:ref"/>
+                        
             <xs:element ref="tns:simple"/>
+                        
             <xs:element ref="tns:spel"/>
+                        
             <xs:element ref="tns:tokenize"/>
+                        
             <xs:element ref="tns:xtokenize"/>
+                        
             <xs:element ref="tns:xpath"/>
+                        
             <xs:element ref="tns:xquery"/>
+                      
           </xs:choice>
+                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
+                        
             <xs:element ref="tns:aggregate"/>
+                        
             <xs:element ref="tns:bean"/>
+                        
             <xs:element ref="tns:doCatch"/>
+                        
             <xs:element ref="tns:when"/>
+                        
             <xs:element ref="tns:choice"/>
+                        
             <xs:element ref="tns:otherwise"/>
+                        
             <xs:element ref="tns:circuitBreaker"/>
+                        
             <xs:element ref="tns:claimCheck"/>
+                        
             <xs:element ref="tns:convertBodyTo"/>
+                        
             <xs:element ref="tns:delay"/>
+                        
             <xs:element ref="tns:dynamicRouter"/>
+                        
             <xs:element ref="tns:enrich"/>
+                        
             <xs:element ref="tns:filter"/>
+                        
             <xs:element ref="tns:doFinally"/>
+                        
             <xs:element ref="tns:idempotentConsumer"/>
+                        
             <xs:element ref="tns:inOnly"/>
+                        
             <xs:element ref="tns:inOut"/>
+                        
             <xs:element ref="tns:intercept"/>
+                        
             <xs:element ref="tns:interceptFrom"/>
+                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
+                        
             <xs:element ref="tns:loadBalance"/>
+                        
             <xs:element ref="tns:log"/>
+                        
             <xs:element ref="tns:loop"/>
+                        
             <xs:element ref="tns:marshal"/>
+                        
             <xs:element ref="tns:multicast"/>
+                        
             <xs:element ref="tns:onCompletion"/>
+                        
             <xs:element ref="tns:onException"/>
+                        
             <xs:element ref="tns:onFallback"/>
+                        
             <xs:element ref="tns:pipeline"/>
+                        
             <xs:element ref="tns:policy"/>
+                        
             <xs:element ref="tns:pollEnrich"/>
+                        
             <xs:element ref="tns:process"/>
+                        
             <xs:element ref="tns:recipientList"/>
+                        
             <xs:element ref="tns:removeHeader"/>
+                        
             <xs:element ref="tns:removeHeaders"/>
+                        
             <xs:element ref="tns:removeProperties"/>
+                        
             <xs:element ref="tns:removeProperty"/>
+                        
             <xs:element ref="tns:resequence"/>
+                        
             <xs:element ref="tns:rollback"/>
+                        
             <xs:element ref="tns:route"/>
+                        
             <xs:element ref="tns:routingSlip"/>
+                        
             <xs:element ref="tns:saga"/>
+                        
             <xs:element ref="tns:sample"/>
+                        
             <xs:element ref="tns:script"/>
+                        
             <xs:element ref="tns:setBody"/>
+                        
             <xs:element ref="tns:setExchangePattern"/>
+                        
             <xs:element ref="tns:setHeader"/>
+                        
             <xs:element ref="tns:setProperty"/>
+                        
             <xs:element ref="tns:sort"/>
+                        
             <xs:element ref="tns:split"/>
+                        
             <xs:element ref="tns:step"/>
+                        
             <xs:element ref="tns:stop"/>
+                        
             <xs:element ref="tns:threads"/>
+                        
             <xs:element ref="tns:throttle"/>
+                        
             <xs:element ref="tns:throwException"/>
+                        
             <xs:element ref="tns:to"/>
+                        
             <xs:element ref="tns:toD"/>
+                        
             <xs:element ref="tns:transacted"/>
+                        
             <xs:element ref="tns:transform"/>
+                        
             <xs:element ref="tns:doTry"/>
+                        
             <xs:element ref="tns:unmarshal"/>
+                        
             <xs:element ref="tns:validate"/>
+                        
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
+                        
             <xs:element ref="tns:wireTap"/>
+                        
             <xs:element ref="tns:serviceCall"/>
+                      
           </xs:choice>
+                  
         </xs:sequence>
+                
         <xs:attribute name="messageIdRepositoryRef" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the reference name of the message id repository.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="eager" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether to eagerly add the key to the idempotent repository or wait until
 the exchange is complete. Eager is default enabled. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="completionEager" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether to complete the idempotent consumer eager or when the exchange is
 done. If this option is true to complete eager, then the idempotent consumer
 will trigger its completion when the exchange reached the end of the block of
@@ -4903,369 +7050,668 @@ will complete when the exchange is done being routed. So if the exchange is
 continued routed after the block ends, then whatever happens there also affect
 the state. For example if the exchange failed due to an exception, then the
 state of the idempotent consumer will be a rollback.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="skipDuplicate" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether to skip duplicates or not. The default behavior is to skip
 duplicates. A duplicate message would have the Exchange property
 org.apache.camel.Exchange#DUPLICATE_MESSAGE set to a Boolean#TRUE value. A none
 duplicate message will not have this property set. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="removeOnFailure" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets whether to remove or keep the key on failure. The default behavior is to
 remove the key on failure. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="inOnlyDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:sendDefinition">
+                
         <xs:sequence/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType abstract="true" name="sendDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:noOutputDefinition">
+                
         <xs:sequence/>
+                
         <xs:attribute name="uri" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the uri of the endpoint to send to.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="inOutDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:sendDefinition">
+                
         <xs:sequence/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="inputTypeDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:optionalIdentifiedDefinition">
+                
         <xs:sequence/>
+                
         <xs:attribute name="urn" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Set input type URN.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="validate" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Set if validation is required for this input type. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="interceptDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:output">
+                
         <xs:sequence>
+                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
+                        
             <xs:element ref="tns:aggregate"/>
+                        
             <xs:element ref="tns:bean"/>
+                        
             <xs:element ref="tns:doCatch"/>
+                        
             <xs:element ref="tns:when"/>
+                        
             <xs:element ref="tns:choice"/>
+                        
             <xs:element ref="tns:otherwise"/>
+                        
             <xs:element ref="tns:circuitBreaker"/>
+                        
             <xs:element ref="tns:claimCheck"/>
+                        
             <xs:element ref="tns:convertBodyTo"/>
+                        
             <xs:element ref="tns:delay"/>
+                        
             <xs:element ref="tns:dynamicRouter"/>
+                        
             <xs:element ref="tns:enrich"/>
+                        
             <xs:element ref="tns:filter"/>
+                        
             <xs:element ref="tns:doFinally"/>
+                        
             <xs:element ref="tns:idempotentConsumer"/>
+                        
             <xs:element ref="tns:inOnly"/>
+                        
             <xs:element ref="tns:inOut"/>
+                        
             <xs:element ref="tns:intercept"/>
+                        
             <xs:element ref="tns:interceptFrom"/>
+                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
+                        
             <xs:element ref="tns:loadBalance"/>
+                        
             <xs:element ref="tns:log"/>
+                        
             <xs:element ref="tns:loop"/>
+                        
             <xs:element ref="tns:marshal"/>
+                        
             <xs:element ref="tns:multicast"/>
+                        
             <xs:element ref="tns:onCompletion"/>
+                        
             <xs:element ref="tns:onException"/>
+                        
             <xs:element ref="tns:onFallback"/>
+                        
             <xs:element ref="tns:pipeline"/>
+                        
             <xs:element ref="tns:policy"/>
+                        
             <xs:element ref="tns:pollEnrich"/>
+                        
             <xs:element ref="tns:process"/>
+                        
             <xs:element ref="tns:recipientList"/>
+                        
             <xs:element ref="tns:removeHeader"/>
+                        
             <xs:element ref="tns:removeHeaders"/>
+                        
             <xs:element ref="tns:removeProperties"/>
+                        
             <xs:element ref="tns:removeProperty"/>
+                        
             <xs:element ref="tns:resequence"/>
+                        
             <xs:element ref="tns:rollback"/>
+                        
             <xs:element ref="tns:route"/>
+                        
             <xs:element ref="tns:routingSlip"/>
+                        
             <xs:element ref="tns:saga"/>
+                        
             <xs:element ref="tns:sample"/>
+                        
             <xs:element ref="tns:script"/>
+                        
             <xs:element ref="tns:setBody"/>
+                        
             <xs:element ref="tns:setExchangePattern"/>
+                        
             <xs:element ref="tns:setHeader"/>
+                        
             <xs:element ref="tns:setProperty"/>
+                        
             <xs:element ref="tns:sort"/>
+                        
             <xs:element ref="tns:split"/>
+                        
             <xs:element ref="tns:step"/>
+                        
             <xs:element ref="tns:stop"/>
+                        
             <xs:element ref="tns:threads"/>
+                        
             <xs:element ref="tns:throttle"/>
+                        
             <xs:element ref="tns:throwException"/>
+                        
             <xs:element ref="tns:to"/>
+                        
             <xs:element ref="tns:toD"/>
+                        
             <xs:element ref="tns:transacted"/>
+                        
             <xs:element ref="tns:transform"/>
+                        
             <xs:element ref="tns:doTry"/>
+                        
             <xs:element ref="tns:unmarshal"/>
+                        
             <xs:element ref="tns:validate"/>
+                        
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
+                        
             <xs:element ref="tns:wireTap"/>
+                        
             <xs:element ref="tns:serviceCall"/>
+                      
           </xs:choice>
+                  
         </xs:sequence>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="interceptFromDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:interceptDefinition">
+                
         <xs:sequence/>
+                
         <xs:attribute name="uri" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Intercept incoming messages from the uri or uri pattern. If this option is not
 configured, then all incoming messages is intercepted.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="interceptSendToEndpointDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:output">
+                
         <xs:sequence>
+                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
+                        
             <xs:element ref="tns:aggregate"/>
+                        
             <xs:element ref="tns:bean"/>
+                        
             <xs:element ref="tns:doCatch"/>
+                        
             <xs:element ref="tns:when"/>
+                        
             <xs:element ref="tns:choice"/>
+                        
             <xs:element ref="tns:otherwise"/>
+                        
             <xs:element ref="tns:circuitBreaker"/>
+                        
             <xs:element ref="tns:claimCheck"/>
+                        
             <xs:element ref="tns:convertBodyTo"/>
+                        
             <xs:element ref="tns:delay"/>
+                        
             <xs:element ref="tns:dynamicRouter"/>
+                        
             <xs:element ref="tns:enrich"/>
+                        
             <xs:element ref="tns:filter"/>
+                        
             <xs:element ref="tns:doFinally"/>
+                        
             <xs:element ref="tns:idempotentConsumer"/>
+                        
             <xs:element ref="tns:inOnly"/>
+                        
             <xs:element ref="tns:inOut"/>
+                        
             <xs:element ref="tns:intercept"/>
+                        
             <xs:element ref="tns:interceptFrom"/>
+                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
+                        
             <xs:element ref="tns:loadBalance"/>
+                        
             <xs:element ref="tns:log"/>
+                        
             <xs:element ref="tns:loop"/>
+                        
             <xs:element ref="tns:marshal"/>
+                        
             <xs:element ref="tns:multicast"/>
+                        
             <xs:element ref="tns:onCompletion"/>
+                        
             <xs:element ref="tns:onException"/>
+                        
             <xs:element ref="tns:onFallback"/>
+                        
             <xs:element ref="tns:pipeline"/>
+                        
             <xs:element ref="tns:policy"/>
+                        
             <xs:element ref="tns:pollEnrich"/>
+                        
             <xs:element ref="tns:process"/>
+                        
             <xs:element ref="tns:recipientList"/>
+                        
             <xs:element ref="tns:removeHeader"/>
+                        
             <xs:element ref="tns:removeHeaders"/>
+                        
             <xs:element ref="tns:removeProperties"/>
+                        
             <xs:element ref="tns:removeProperty"/>
+                        
             <xs:element ref="tns:resequence"/>
+                        
             <xs:element ref="tns:rollback"/>
+                        
             <xs:element ref="tns:route"/>
+                        
             <xs:element ref="tns:routingSlip"/>
+                        
             <xs:element ref="tns:saga"/>
+                        
             <xs:element ref="tns:sample"/>
+                        
             <xs:element ref="tns:script"/>
+                        
             <xs:element ref="tns:setBody"/>
+                        
             <xs:element ref="tns:setExchangePattern"/>
+                        
             <xs:element ref="tns:setHeader"/>
+                        
             <xs:element ref="tns:setProperty"/>
+                        
             <xs:element ref="tns:sort"/>
+                        
             <xs:element ref="tns:split"/>
+                        
             <xs:element ref="tns:step"/>
+                        
             <xs:element ref="tns:stop"/>
+                        
             <xs:element ref="tns:threads"/>
+                        
             <xs:element ref="tns:throttle"/>
+                        
             <xs:element ref="tns:throwException"/>
+                        
             <xs:element ref="tns:to"/>
+                        
             <xs:element ref="tns:toD"/>
+                        
             <xs:element ref="tns:transacted"/>
+                        
             <xs:element ref="tns:transform"/>
+                        
             <xs:element ref="tns:doTry"/>
+                        
             <xs:element ref="tns:unmarshal"/>
+                        
             <xs:element ref="tns:validate"/>
+                        
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
+                        
             <xs:element ref="tns:wireTap"/>
+                        
             <xs:element ref="tns:serviceCall"/>
+                      
           </xs:choice>
+                  
         </xs:sequence>
+                
         <xs:attribute name="uri" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Intercept sending to the uri or uri pattern.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="skipSendToOriginalEndpoint" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 If set to true then the message is not sent to the original endpoint. By default
 (false) the message is both intercepted and then sent to the original endpoint.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="afterUri" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 After sending to the endpoint then send the message to this uri which allows to
 process its result.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="loadBalanceDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:output">
+                
         <xs:sequence>
+                    
           <xs:choice minOccurs="0">
+                        
             <xs:element ref="tns:failover"/>
+                        
             <xs:element ref="tns:random"/>
+                        
             <xs:element ref="tns:customLoadBalancer"/>
+                        
             <xs:element ref="tns:roundRobin"/>
+                        
             <xs:element ref="tns:sticky"/>
+                        
             <xs:element ref="tns:topic"/>
+                        
             <xs:element ref="tns:weighted"/>
+                      
           </xs:choice>
+                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
+                        
             <xs:element ref="tns:aggregate"/>
+                        
             <xs:element ref="tns:bean"/>
+                        
             <xs:element ref="tns:doCatch"/>
+                        
             <xs:element ref="tns:when"/>
+                        
             <xs:element ref="tns:choice"/>
+                        
             <xs:element ref="tns:otherwise"/>
+                        
             <xs:element ref="tns:circuitBreaker"/>
+                        
             <xs:element ref="tns:claimCheck"/>
+                        
             <xs:element ref="tns:convertBodyTo"/>
+                        
             <xs:element ref="tns:delay"/>
+                        
             <xs:element ref="tns:dynamicRouter"/>
+                        
             <xs:element ref="tns:enrich"/>
+                        
             <xs:element ref="tns:filter"/>
+                        
             <xs:element ref="tns:doFinally"/>
+                        
             <xs:element ref="tns:idempotentConsumer"/>
+                        
             <xs:element ref="tns:inOnly"/>
+                        
             <xs:element ref="tns:inOut"/>
+                        
             <xs:element ref="tns:intercept"/>
+                        
             <xs:element ref="tns:interceptFrom"/>
+                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
+                        
             <xs:element ref="tns:loadBalance"/>
+                        
             <xs:element ref="tns:log"/>
+                        
             <xs:element ref="tns:loop"/>
+                        
             <xs:element ref="tns:marshal"/>
+                        
             <xs:element ref="tns:multicast"/>
+                        
             <xs:element ref="tns:onCompletion"/>
+                        
             <xs:element ref="tns:onException"/>
+                        
             <xs:element ref="tns:onFallback"/>
+                        
             <xs:element ref="tns:pipeline"/>
+                        
             <xs:element ref="tns:policy"/>
+                        
             <xs:element ref="tns:pollEnrich"/>
+                        
             <xs:element ref="tns:process"/>
+                        
             <xs:element ref="tns:recipientList"/>
+                        
             <xs:element ref="tns:removeHeader"/>
+                        
             <xs:element ref="tns:removeHeaders"/>
+                        
             <xs:element ref="tns:removeProperties"/>
+                        
             <xs:element ref="tns:removeProperty"/>
+                        
             <xs:element ref="tns:resequence"/>
+                        
             <xs:element ref="tns:rollback"/>
+                        
             <xs:element ref="tns:route"/>
+                        
             <xs:element ref="tns:routingSlip"/>
+                        
             <xs:element ref="tns:saga"/>
+                        
             <xs:element ref="tns:sample"/>
+                        
             <xs:element ref="tns:script"/>
+                        
             <xs:element ref="tns:setBody"/>
+                        
             <xs:element ref="tns:setExchangePattern"/>
+                        
             <xs:element ref="tns:setHeader"/>
+                        
             <xs:element ref="tns:setProperty"/>
+                        
             <xs:element ref="tns:sort"/>
+                        
             <xs:element ref="tns:split"/>
+                        
             <xs:element ref="tns:step"/>
+                        
             <xs:element ref="tns:stop"/>
+                        
             <xs:element ref="tns:threads"/>
+                        
             <xs:element ref="tns:throttle"/>
+                        
             <xs:element ref="tns:throwException"/>
+                        
             <xs:element ref="tns:to"/>
+                        
             <xs:element ref="tns:toD"/>
+                        
             <xs:element ref="tns:transacted"/>
+                        
             <xs:element ref="tns:transform"/>
+                        
             <xs:element ref="tns:doTry"/>
+                        
             <xs:element ref="tns:unmarshal"/>
+                        
             <xs:element ref="tns:validate"/>
+                        
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
+                        
             <xs:element ref="tns:wireTap"/>
+                        
             <xs:element ref="tns:serviceCall"/>
+                      
           </xs:choice>
+                  
         </xs:sequence>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="failoverLoadBalancerDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:loadBalancer">
+                
         <xs:sequence>
+                    
           <xs:element maxOccurs="unbounded" minOccurs="0" name="exception" type="xs:string"/>
+                  
         </xs:sequence>
+                
         <xs:attribute name="roundRobin" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether or not the failover load balancer should operate in round robin mode or
 not. If not, then it will always start from the first endpoint when a new
 message is to be processed. In other words it restart from the top for every
@@ -5274,12 +7720,15 @@ the next endpoint in a round robin fashion. You can also enable sticky mode
 together with round robin, if so then it will pick the last known good endpoint
 to use when starting the load balancing (instead of using the next when
 starting).
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="sticky" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether or not the failover load balancer should operate in sticky mode or not.
 If not, then it will always start from the first endpoint when a new message is
 to be processed. In other words it restart from the top for every message. If
@@ -5287,1034 +7736,1581 @@ sticky is enabled, then it keeps state and will continue with the last known
 good endpoint. You can also enable sticky mode together with round robin, if so
 then it will pick the last known good endpoint to use when starting the load
 balancing (instead of using the next when starting).
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="maximumFailoverAttempts" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 A value to indicate after X failover attempts we should exhaust (give up). Use
 -1 to indicate never give up and continuously try to failover. Use 0 to never
 failover. And use e.g. 3 to failover at most 3 times before giving up. his
 option can be used whether or not roundRobin is enabled or not. Default value:
 -1
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="loadBalancer">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:identifiedType">
+                
         <xs:sequence/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="randomLoadBalancerDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:loadBalancer">
+                
         <xs:sequence/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="customLoadBalancerDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:loadBalancer">
+                
         <xs:sequence/>
+                
         <xs:attribute name="ref" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Refers to the custom load balancer to lookup from the registry.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="roundRobinLoadBalancerDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:loadBalancer">
+                
         <xs:sequence/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="stickyLoadBalancerDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:loadBalancer">
+                
         <xs:sequence>
+                    
           <xs:element name="correlationExpression" type="tns:expressionSubElementDefinition"/>
+                  
         </xs:sequence>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="topicLoadBalancerDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:loadBalancer">
+                
         <xs:sequence/>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="weightedLoadBalancerDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:loadBalancer">
+                
         <xs:sequence/>
+                
         <xs:attribute name="roundRobin" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 To enable round robin mode. By default the weighted distribution mode is used.
 The default value is false.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="distributionRatio" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 The distribution ratio is a delimited String consisting on integer weights
 separated by delimiters for example 2,3,5. The distributionRatio must match the
 number of endpoints and/or processors specified in the load balancer list.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="distributionRatioDelimiter" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Delimiter used to specify the distribution ratio. The default value is ,.
 Default value: ,
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="logDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:noOutputDefinition">
+                
         <xs:sequence/>
+                
         <xs:attribute name="message" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the log message (uses simple language).
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="loggingLevel" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the logging level. The default value is INFO. Default value: INFO
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="logName" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Sets the name of the logger.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="marker" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 To use slf4j marker.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="loggerRef" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 To refer to a custom logger instance to lookup from the registry.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="loopDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:processorDefinition">
+                
         <xs:sequence>
+                    
           <xs:choice>
+                        
             <xs:element ref="tns:expressionDefinition"/>
+                        
             <xs:element ref="tns:constant"/>
+                        
             <xs:element ref="tns:exchangeProperty"/>
+                        
             <xs:element ref="tns:groovy"/>
+                        
             <xs:element ref="tns:header"/>
+                        
             <xs:element ref="tns:hl7terser"/>
+                        
             <xs:element ref="tns:jsonpath"/>
+                        
             <xs:element ref="tns:language"/>
+                        
             <xs:element ref="tns:method"/>
+                        
             <xs:element ref="tns:mvel"/>
+                        
             <xs:element ref="tns:ognl"/>
+                        
             <xs:element ref="tns:ref"/>
+                        
             <xs:element ref="tns:simple"/>
+                        
             <xs:element ref="tns:spel"/>
+                        
             <xs:element ref="tns:tokenize"/>
+                        
             <xs:element ref="tns:xtokenize"/>
+                        
             <xs:element ref="tns:xpath"/>
+                        
             <xs:element ref="tns:xquery"/>
+                      
           </xs:choice>
+                    
           <xs:choice maxOccurs="unbounded" minOccurs="0">
+                        
             <xs:element ref="tns:aggregate"/>
+                        
             <xs:element ref="tns:bean"/>
+                        
             <xs:element ref="tns:doCatch"/>
+                        
             <xs:element ref="tns:when"/>
+                        
             <xs:element ref="tns:choice"/>
+                        
             <xs:element ref="tns:otherwise"/>
+                        
             <xs:element ref="tns:circuitBreaker"/>
+                        
             <xs:element ref="tns:claimCheck"/>
+                        
             <xs:element ref="tns:convertBodyTo"/>
+                        
             <xs:element ref="tns:delay"/>
+                        
             <xs:element ref="tns:dynamicRouter"/>
+                        
             <xs:element ref="tns:enrich"/>
+                        
             <xs:element ref="tns:filter"/>
+                        
             <xs:element ref="tns:doFinally"/>
+                        
             <xs:element ref="tns:idempotentConsumer"/>
+                        
             <xs:element ref="tns:inOnly"/>
+                        
             <xs:element ref="tns:inOut"/>
+                        
             <xs:element ref="tns:intercept"/>
+                        
             <xs:element ref="tns:interceptFrom"/>
+                        
             <xs:element ref="tns:interceptSendToEndpoint"/>
+                        
             <xs:element ref="tns:loadBalance"/>
+                        
             <xs:element ref="tns:log"/>
+                        
             <xs:element ref="tns:loop"/>
+                        
             <xs:element ref="tns:marshal"/>
+                        
             <xs:element ref="tns:multicast"/>
+                        
             <xs:element ref="tns:onCompletion"/>
+                        
             <xs:element ref="tns:onException"/>
+                        
             <xs:element ref="tns:onFallback"/>
+                        
             <xs:element ref="tns:pipeline"/>
+                        
             <xs:element ref="tns:policy"/>
+                        
             <xs:element ref="tns:pollEnrich"/>
+                        
             <xs:element ref="tns:process"/>
+                        
             <xs:element ref="tns:recipientList"/>
+                        
             <xs:element ref="tns:removeHeader"/>
+                        
             <xs:element ref="tns:removeHeaders"/>
+                        
             <xs:element ref="tns:removeProperties"/>
+                        
             <xs:element ref="tns:removeProperty"/>
+                        
             <xs:element ref="tns:resequence"/>
+                        
             <xs:element ref="tns:rollback"/>
+                        
             <xs:element ref="tns:route"/>
+                        
             <xs:element ref="tns:routingSlip"/>
+                        
             <xs:element ref="tns:saga"/>
+                        
             <xs:element ref="tns:sample"/>
+                        
             <xs:element ref="tns:script"/>
+                        
             <xs:element ref="tns:setBody"/>
+                        
             <xs:element ref="tns:setExchangePattern"/>
+                        
             <xs:element ref="tns:setHeader"/>
+                        
             <xs:element ref="tns:setProperty"/>
+                        
             <xs:element ref="tns:sort"/>
+                        
             <xs:element ref="tns:split"/>
+                        
             <xs:element ref="tns:step"/>
+                        
             <xs:element ref="tns:stop"/>
+                        
             <xs:element ref="tns:threads"/>
+                        
             <xs:element ref="tns:throttle"/>
+                        
             <xs:element ref="tns:throwException"/>
+                        
             <xs:element ref="tns:to"/>
+                        
             <xs:element ref="tns:toD"/>
+                        
             <xs:element ref="tns:transacted"/>
+                        
             <xs:element ref="tns:transform"/>
+                        
             <xs:element ref="tns:doTry"/>
+                        
             <xs:element ref="tns:unmarshal"/>
+                        
             <xs:element ref="tns:validate"/>
+                        
             <xs:element ref="tns:whenSkipSendToEndpoint"/>
+                        
             <xs:element ref="tns:wireTap"/>
+                        
             <xs:element ref="tns:serviceCall"/>
+                      
           </xs:choice>
+                  
         </xs:sequence>
+                
         <xs:attribute name="copy" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 If the copy attribute is true, a copy of the input Exchange is used for each
 iteration. That means each iteration will start from a copy of the same message.
 By default loop will loop the same exchange all over, so each iteration may have
 different message content. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="doWhile" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Enables the while loop that loops until the predicate evaluates to false or
 null. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="marshalDefinition">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:noOutputDefinition">
+                
         <xs:sequence>
+                    
           <xs:choice minOccurs="0">
+                        
             <xs:element ref="tns:any23"/>
+                        
             <xs:element ref="tns:asn1"/>
+                        
             <xs:element ref="tns:avro"/>
+                        
             <xs:element ref="tns:barcode"/>
+                        
             <xs:element ref="tns:base64"/>
+                        
             <xs:element ref="tns:beanio"/>
+                        
             <xs:element ref="tns:bindy"/>
+                        
             <xs:element ref="tns:cbor"/>
+                        
             <xs:element ref="tns:crypto"/>
+                        
             <xs:element ref="tns:csv"/>
+                        
             <xs:element name="custom" type="tns:customDataFormat"/>
+                        
             <xs:element ref="tns:fhirJson"/>
+                        
             <xs:element ref="tns:fhirXml"/>
+                        
             <xs:element ref="tns:flatpack"/>
+                        
             <xs:element ref="tns:grok"/>
+                        
             <xs:element name="gzip" type="tns:gzipDataFormat"/>
+                        
             <xs:element ref="tns:hl7"/>
+                        
             <xs:element ref="tns:ical"/>
+                        
             <xs:element ref="tns:jacksonxml"/>
+                        
             <xs:element ref="tns:jaxb"/>
+                        
             <xs:element ref="tns:json"/>
+                        
             <xs:element ref="tns:jsonApi"/>
+                        
             <xs:element ref="tns:lzf"/>
+                        
             <xs:element name="mimeMultipart" type="tns:mimeMultipartDataFormat"/>
+                        
             <xs:element ref="tns:protobuf"/>
+                        
             <xs:element ref="tns:rss"/>
+                        
             <xs:element ref="tns:secureXML"/>
+                        
             <xs:element ref="tns:soapjaxb"/>
+                        
             <xs:element ref="tns:syslog"/>
+                        
             <xs:element ref="tns:tarfile"/>
+                        
             <xs:element ref="tns:thrift"/>
+                        
             <xs:element ref="tns:tidyMarkup"/>
+                        
             <xs:element ref="tns:univocity-csv"/>
+                        
             <xs:element ref="tns:univocity-fixed"/>
+                        
             <xs:element ref="tns:univocity-tsv"/>
+                        
             <xs:element ref="tns:xmlrpc"/>
+                        
             <xs:element ref="tns:xstream"/>
+                        
             <xs:element ref="tns:pgp"/>
+                        
             <xs:element ref="tns:yaml"/>
+                        
             <xs:element name="zip" type="tns:zipDeflaterDataFormat"/>
+                        
             <xs:element ref="tns:zipfile"/>
+                      
           </xs:choice>
+                  
         </xs:sequence>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="any23DataFormat">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:dataFormat">
+                
         <xs:sequence>
+                    
           <xs:element maxOccurs="unbounded" minOccurs="0" name="configuration" type="tns:propertyDefinition"/>
+                    
           <xs:element maxOccurs="unbounded" minOccurs="0" name="extractors" type="xs:string"/>
+                  
         </xs:sequence>
+                
         <xs:attribute name="outputFormat" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 What RDF syntax to unmarshal as, can be: NTRIPLES, TURTLE, NQUADS, RDFXML,
 JSONLD, RDFJSON, RDF4JMODEL. It is by default: RDF4JMODEL. Default value:
 RDF4JMODEL
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="baseURI" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 The URI to use as base for building RDF entities if only relative paths are
 provided.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="asn1DataFormat">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:dataFormat">
+                
         <xs:sequence/>
+                
         <xs:attribute name="usingIterator" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 If the asn1 file has more then one entry, the setting this option to true,
 allows to work with the splitter EIP, to split the data using an iterator in a
 streaming mode. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="clazzName" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Name of class to use when unmarshalling.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="avroDataFormat">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:dataFormat">
+                
         <xs:sequence/>
+                
         <xs:attribute name="instanceClassName" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Class name to use for marshal and unmarshalling.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="barcodeDataFormat">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:dataFormat">
+                
         <xs:sequence/>
+                
         <xs:attribute name="width" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Width of the barcode.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="height" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Height of the barcode.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="imageType" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Image type of the barcode such as png.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="barcodeFormat" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Barcode format such as QR-Code.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="base64DataFormat">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:dataFormat">
+                
         <xs:sequence/>
+                
         <xs:attribute name="lineLength" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 To specific a maximum line length for the encoded data. By default 76 is used.
 Default value: 76
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="lineSeparator" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 The line separators to use. Uses new line characters (CRLF) by default.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="urlSafe" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Instead of emitting '' and '/' we emit '-' and '_' respectively. urlSafe is only
 applied to encode operations. Decoding seamlessly handles both modes. Is by
 default false. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="beanioDataFormat">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:dataFormat">
+                
         <xs:sequence/>
+                
         <xs:attribute name="mapping" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 The BeanIO mapping file. Is by default loaded from the classpath. You can prefix
 with file:, http:, or classpath: to denote from where to load the mapping file.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="streamName" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 The name of the stream to use.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="ignoreUnidentifiedRecords" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether to ignore unidentified records. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="ignoreUnexpectedRecords" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether to ignore unexpected records. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="ignoreInvalidRecords" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether to ignore invalid records. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="encoding" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 The charset to use. Is by default the JVM platform default charset.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="beanReaderErrorHandlerType" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 To use a custom org.apache.camel.dataformat.beanio.BeanIOErrorHandler as error
 handler while parsing. Configure the fully qualified class name of the error
 handler. Notice the options ignoreUnidentifiedRecords, ignoreUnexpectedRecords,
 and ignoreInvalidRecords may not be in use when you use a custom error handler.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="unmarshalSingleObject" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 This options controls whether to unmarshal as a list of objects or as a single
 object only. The former is the default mode, and the latter is only intended in
 special use-cases where beanio maps the Camel message to a single POJO bean.
 Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="bindyDataFormat">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:dataFormat">
+                
         <xs:sequence/>
+                
         <xs:attribute name="type" type="xs:string" use="required">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether to use Csv, Fixed, or KeyValue.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="classType" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Name of model class to use.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="locale" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 To configure a default locale to use, such as us for united states. To use the
 JVM platform default locale then use the name default.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="unwrapSingleInstance" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 When unmarshalling should a single instance be unwrapped and returned instead of
 wrapped in a java.util.List. Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="allowEmptyStream" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether to allow empty streams in the unmarshal process. If true, no exception
 will be thrown when a body without records is provided. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+              
       </xs:extension>
+          
     </xs:complexContent>
+      
   </xs:complexType>
-
+    
   <xs:complexType name="cborDataFormat">
+        
     <xs:complexContent>
+            
       <xs:extension base="tns:dataFormat">
+                
         <xs:sequence/>
+                
         <xs:attribute name="objectMapper" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Lookup and use the existing CBOR ObjectMapper with the given id when using
 Jackson.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="useDefaultObjectMapper" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Whether to lookup and use default Jackson CBOR ObjectMapper from the registry.
 Default value: true
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="unmarshalTypeName" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Class name of the java type to use when unmarshalling.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="collectionTypeName" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 Refers to a custom collection type to lookup in the registry to use. This option
 should rarely be used, but allows to use different collection types than
 java.util.Collection based as default.
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="useList" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 To unmarshal to a List of Map or a List of Pojo. Default value: false
-            ]]></xs:documentation>
+            ]]>
+            </xs:documentation>
           </xs:annotation>
         </xs:attribute>
+                
         <xs:attribute name="allowUnmarshallType" type="xs:string">
           <xs:annotation>
-            <xs:documentation xml:lang="en"><![CDATA[
+            <xs:documentation xml:lang="en">
+              <![CDATA[
 If enabled then Jackson CBOR is allowed to attempt to use the
 CamelCBORUnmarshalType header during the unmarshalling. This should only be
 enabled when desired to be used. Default value: false
-            ]]></xs:documentation>
... 14410 lines suppressed ...


[camel] 06/11: camel-cxf - Rest consumer should create server in doStart and not in constructor.

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

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

commit 28e2f0d5e8c10506e8daafd7bda21ce64acd155a
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Aug 22 21:00:31 2020 +0200

    camel-cxf - Rest consumer should create server in doStart and not in constructor.
---
 .../main/java/org/apache/camel/component/cxf/jaxrs/CxfRsConsumer.java    | 1 -
 1 file changed, 1 deletion(-)

diff --git a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsConsumer.java b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsConsumer.java
index e599964..627bb0e 100644
--- a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsConsumer.java
+++ b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsConsumer.java
@@ -37,7 +37,6 @@ public class CxfRsConsumer extends DefaultConsumer implements Suspendable {
 
     public CxfRsConsumer(CxfRsEndpoint endpoint, Processor processor) {
         super(endpoint, processor);
-        server = createServer();
     }
 
     protected Server createServer() {