Regen
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-db2.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-db2.json
index d74c09a..c1c0f04 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-db2.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-db2.json
@@ -82,16 +82,22 @@
     "snapshotIncludeCollectionList": { "index": 56, "kind": "property", "displayName": "Snapshot Include Collection List", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
     "snapshotLockTimeoutMs": { "index": 57, "kind": "property", "displayName": "Snapshot Lock Timeout Ms", "group": "db2", "label": "consumer,db2", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
     "snapshotMode": { "index": 58, "kind": "property", "displayName": "Snapshot Mode", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Options include: 'initial' (the default) to specify the connector should run a snapshot only when no offsets are available for the logical server name; 'schema_only' to specify the connector should run a snapshot of the schema when no offsets are available for the logical server name." },
-    "snapshotSelectStatementOverrides": { "index": 59, "kind": "property", "displayName": "Snapshot Select Statement Overrides", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
-    "snapshotTablesOrderByRowCount": { "index": 60, "kind": "property", "displayName": "Snapshot Tables Order By Row Count", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
-    "sourceinfoStructMaker": { "index": 61, "kind": "property", "displayName": "Sourceinfo Struct Maker", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.db2.Db2SourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
-    "tableExcludeList": { "index": 62, "kind": "property", "displayName": "Table Exclude List", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
-    "tableIgnoreBuiltin": { "index": 63, "kind": "property", "displayName": "Table Ignore Builtin", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
-    "tableIncludeList": { "index": 64, "kind": "property", "displayName": "Table Include List", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
-    "timePrecisionMode": { "index": 65, "kind": "property", "displayName": "Time Precision Mode", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
-    "tombstonesOnDelete": { "index": 66, "kind": "property", "displayName": "Tombstones On Delete", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
-    "topicNamingStrategy": { "index": 67, "kind": "property", "displayName": "Topic Naming Strategy", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
-    "topicPrefix": { "index": 68, "kind": "property", "displayName": "Topic Prefix", "group": "db2", "label": "consumer,db2", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
+    "snapshotModeConfigurationBasedSnapshotData": { "index": 59, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot Data", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not." },
+    "snapshotModeConfigurationBasedSnapshotOnDataError": { "index": 60, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot On Data Error", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotOnSchemaError": { "index": 61, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot On Schema Error", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotSchema": { "index": 62, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot Schema", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not." },
+    "snapshotModeConfigurationBasedStartStream": { "index": 63, "kind": "property", "displayName": "Snapshot Mode Configuration Based Start Stream", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot." },
+    "snapshotModeCustomName": { "index": 64, "kind": "property", "displayName": "Snapshot Mode Custom Name", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot." },
+    "snapshotSelectStatementOverrides": { "index": 65, "kind": "property", "displayName": "Snapshot Select Statement Overrides", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
+    "snapshotTablesOrderByRowCount": { "index": 66, "kind": "property", "displayName": "Snapshot Tables Order By Row Count", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
+    "sourceinfoStructMaker": { "index": 67, "kind": "property", "displayName": "Sourceinfo Struct Maker", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.db2.Db2SourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
+    "tableExcludeList": { "index": 68, "kind": "property", "displayName": "Table Exclude List", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
+    "tableIgnoreBuiltin": { "index": 69, "kind": "property", "displayName": "Table Ignore Builtin", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
+    "tableIncludeList": { "index": 70, "kind": "property", "displayName": "Table Include List", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
+    "timePrecisionMode": { "index": 71, "kind": "property", "displayName": "Time Precision Mode", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
+    "tombstonesOnDelete": { "index": 72, "kind": "property", "displayName": "Tombstones On Delete", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
+    "topicNamingStrategy": { "index": 73, "kind": "property", "displayName": "Topic Naming Strategy", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
+    "topicPrefix": { "index": 74, "kind": "property", "displayName": "Topic Prefix", "group": "db2", "label": "consumer,db2", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
   },
   "headers": {
     "CamelDebeziumSourceMetadata": { "index": 0, "kind": "header", "displayName": "", "group": "consumer", "label": "", "required": false, "javaType": "Map<String, Object>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The metadata about the source event, for example table name, database name, log position, etc, please refer to the Debezium documentation for more info.", "constantName": "org.apache.camel.component.debezium.DebeziumConstants#HEADER_SOURCE_METADATA" },
@@ -163,15 +169,21 @@
     "snapshotIncludeCollectionList": { "index": 57, "kind": "parameter", "displayName": "Snapshot Include Collection List", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
     "snapshotLockTimeoutMs": { "index": 58, "kind": "parameter", "displayName": "Snapshot Lock Timeout Ms", "group": "db2", "label": "consumer,db2", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
     "snapshotMode": { "index": 59, "kind": "parameter", "displayName": "Snapshot Mode", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Options include: 'initial' (the default) to specify the connector should run a snapshot only when no offsets are available for the logical server name; 'schema_only' to specify the connector should run a snapshot of the schema when no offsets are available for the logical server name." },
-    "snapshotSelectStatementOverrides": { "index": 60, "kind": "parameter", "displayName": "Snapshot Select Statement Overrides", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
-    "snapshotTablesOrderByRowCount": { "index": 61, "kind": "parameter", "displayName": "Snapshot Tables Order By Row Count", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
-    "sourceinfoStructMaker": { "index": 62, "kind": "parameter", "displayName": "Sourceinfo Struct Maker", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.db2.Db2SourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
-    "tableExcludeList": { "index": 63, "kind": "parameter", "displayName": "Table Exclude List", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
-    "tableIgnoreBuiltin": { "index": 64, "kind": "parameter", "displayName": "Table Ignore Builtin", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
-    "tableIncludeList": { "index": 65, "kind": "parameter", "displayName": "Table Include List", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
-    "timePrecisionMode": { "index": 66, "kind": "parameter", "displayName": "Time Precision Mode", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
-    "tombstonesOnDelete": { "index": 67, "kind": "parameter", "displayName": "Tombstones On Delete", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
-    "topicNamingStrategy": { "index": 68, "kind": "parameter", "displayName": "Topic Naming Strategy", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
-    "topicPrefix": { "index": 69, "kind": "parameter", "displayName": "Topic Prefix", "group": "db2", "label": "consumer,db2", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
+    "snapshotModeConfigurationBasedSnapshotData": { "index": 60, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot Data", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not." },
+    "snapshotModeConfigurationBasedSnapshotOnDataError": { "index": 61, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot On Data Error", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotOnSchemaError": { "index": 62, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot On Schema Error", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotSchema": { "index": 63, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot Schema", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not." },
+    "snapshotModeConfigurationBasedStartStream": { "index": 64, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Start Stream", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot." },
+    "snapshotModeCustomName": { "index": 65, "kind": "parameter", "displayName": "Snapshot Mode Custom Name", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot." },
+    "snapshotSelectStatementOverrides": { "index": 66, "kind": "parameter", "displayName": "Snapshot Select Statement Overrides", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
+    "snapshotTablesOrderByRowCount": { "index": 67, "kind": "parameter", "displayName": "Snapshot Tables Order By Row Count", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
+    "sourceinfoStructMaker": { "index": 68, "kind": "parameter", "displayName": "Sourceinfo Struct Maker", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.db2.Db2SourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
+    "tableExcludeList": { "index": 69, "kind": "parameter", "displayName": "Table Exclude List", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
+    "tableIgnoreBuiltin": { "index": 70, "kind": "parameter", "displayName": "Table Ignore Builtin", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
+    "tableIncludeList": { "index": 71, "kind": "parameter", "displayName": "Table Include List", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
+    "timePrecisionMode": { "index": 72, "kind": "parameter", "displayName": "Time Precision Mode", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
+    "tombstonesOnDelete": { "index": 73, "kind": "parameter", "displayName": "Tombstones On Delete", "group": "db2", "label": "consumer,db2", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
+    "topicNamingStrategy": { "index": 74, "kind": "parameter", "displayName": "Topic Naming Strategy", "group": "db2", "label": "consumer,db2", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
+    "topicPrefix": { "index": 75, "kind": "parameter", "displayName": "Topic Prefix", "group": "db2", "label": "consumer,db2", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.Db2ConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
   }
 }
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-mongodb.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-mongodb.json
index a4532b0..27d34a2 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-mongodb.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-mongodb.json
@@ -56,40 +56,45 @@
     "maxQueueSize": { "index": 30, "kind": "property", "displayName": "Max Queue Size", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 8192, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue for change events read from the database log but not yet recorded or forwarded. Defaults to 8192, and should always be larger than the maximum batch size." },
     "maxQueueSizeInBytes": { "index": 31, "kind": "property", "displayName": "Max Queue Size In Bytes", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue in bytes for change events read from the database log but not yet recorded or forwarded. Defaults to 0. Mean the feature is not enabled" },
     "mongodbAuthsource": { "index": 32, "kind": "property", "displayName": "Mongodb Authsource", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "admin", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Database containing user credentials." },
-    "mongodbConnectionMode": { "index": 33, "kind": "property", "displayName": "Mongodb Connection Mode", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "sharded", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The method used to connect to MongoDB cluster. Options include: 'replica_set' to individually connect to each replica set \/ shard 'sharded' (the default) to connect via single connection obtained from connection string" },
-    "mongodbConnectionString": { "index": 34, "kind": "property", "displayName": "Mongodb Connection String", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Database connection string." },
-    "mongodbConnectTimeoutMs": { "index": 35, "kind": "property", "displayName": "Mongodb Connect Timeout Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The connection timeout, given in milliseconds. Defaults to 10 seconds (10,000 ms)." },
-    "mongodbHeartbeatFrequencyMs": { "index": 36, "kind": "property", "displayName": "Mongodb Heartbeat Frequency Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The frequency that the cluster monitor attempts to reach each server. Defaults to 10 seconds (10,000 ms)." },
-    "mongodbPassword": { "index": 37, "kind": "property", "displayName": "Mongodb Password", "group": "mongodb", "label": "consumer,mongodb", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Password to be used when connecting to MongoDB, if necessary." },
-    "mongodbPollIntervalMs": { "index": 38, "kind": "property", "displayName": "Mongodb Poll Interval Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "30s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new, removed, or changed replica sets, given in milliseconds. Defaults to 30 seconds (30,000 ms)." },
-    "mongodbServerSelectionTimeoutMs": { "index": 39, "kind": "property", "displayName": "Mongodb Server Selection Timeout Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "30s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The server selection timeout, given in milliseconds. Defaults to 10 seconds (10,000 ms)." },
-    "mongodbSocketTimeoutMs": { "index": 40, "kind": "property", "displayName": "Mongodb Socket Timeout Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The socket timeout, given in milliseconds. Defaults to 0 ms." },
-    "mongodbSslEnabled": { "index": 41, "kind": "property", "displayName": "Mongodb Ssl Enabled", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Should connector use SSL to connect to MongoDB instances" },
-    "mongodbSslInvalidHostnameAllowed": { "index": 42, "kind": "property", "displayName": "Mongodb Ssl Invalid Hostname Allowed", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether invalid host names are allowed when using SSL. If true the connection will not prevent man-in-the-middle attacks" },
-    "mongodbUser": { "index": 43, "kind": "property", "displayName": "Mongodb User", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Database user for connecting to MongoDB, if necessary." },
-    "notificationEnabledChannels": { "index": 44, "kind": "property", "displayName": "Notification Enabled Channels", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of notification channels names that are enabled." },
-    "notificationSinkTopicName": { "index": 45, "kind": "property", "displayName": "Notification Sink Topic Name", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the topic for the notifications. This is required in case 'sink' is in the list of enabled channels" },
-    "pollIntervalMs": { "index": 46, "kind": "property", "displayName": "Poll Interval Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "500ms", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait for new change events to appear after receiving no events, given in milliseconds. Defaults to 500 ms." },
-    "postProcessors": { "index": 47, "kind": "property", "displayName": "Post Processors", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of post processors. The processors are defined using '.type' config option and configured using options ''" },
-    "provideTransactionMetadata": { "index": 48, "kind": "property", "displayName": "Provide Transaction Metadata", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Enables transaction metadata extraction together with event counting" },
-    "queryFetchSize": { "index": 49, "kind": "property", "displayName": "Query Fetch Size", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while streaming. A value of '0' uses the default JDBC fetch size." },
-    "retriableRestartConnectorWaitMs": { "index": 50, "kind": "property", "displayName": "Retriable Restart Connector Wait Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait before restarting connector after retriable exception occurs. Defaults to 10000ms." },
-    "schemaHistoryInternalFileFilename": { "index": 51, "kind": "property", "displayName": "Schema History Internal File Filename", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The path to the file that will be used to record the database schema history" },
-    "schemaNameAdjustmentMode": { "index": 52, "kind": "property", "displayName": "Schema Name Adjustment Mode", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how schema names should be adjusted for compatibility with the message converter used by the connector, including: 'avro' replaces the characters that cannot be used in the Avro type name with underscore; 'avro_unicode' replaces the underscore or characters that cannot be used in the Avro type name with corresponding unicode like _uxxxx. Note: _ is an escape sequence like backslash in Java;'none' does not apply any adjustment (default)" },
-    "signalDataCollection": { "index": 53, "kind": "property", "displayName": "Signal Data Collection", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the data collection that is used to send signals\/commands to Debezium. Signaling is disabled when not set." },
-    "signalEnabledChannels": { "index": 54, "kind": "property", "displayName": "Signal Enabled Channels", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "source", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of channels names that are enabled. Source channel is enabled by default" },
-    "signalPollIntervalMs": { "index": 55, "kind": "property", "displayName": "Signal Poll Interval Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new signals in registered channels, given in milliseconds. Defaults to 5 seconds." },
-    "skippedOperations": { "index": 56, "kind": "property", "displayName": "Skipped Operations", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "t", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The comma-separated list of operations to skip during streaming, defined as: 'c' for inserts\/create; 'u' for updates; 'd' for deletes, 't' for truncates, and 'none' to indicate nothing skipped. By default, only truncate operations will be skipped." },
-    "snapshotCollectionFilterOverrides": { "index": 57, "kind": "property", "displayName": "Snapshot Collection Filter Overrides", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of ., for which the initial snapshot may be a subset of data present in the data source. The subset would be defined by mongodb filter query specified as value for property snapshot.collection.filter.override.." },
-    "snapshotDelayMs": { "index": 58, "kind": "property", "displayName": "Snapshot Delay Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
-    "snapshotFetchSize": { "index": 59, "kind": "property", "displayName": "Snapshot Fetch Size", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
-    "snapshotIncludeCollectionList": { "index": 60, "kind": "property", "displayName": "Snapshot Include Collection List", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
-    "snapshotMaxThreads": { "index": 61, "kind": "property", "displayName": "Snapshot Max Threads", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
-    "snapshotMode": { "index": 62, "kind": "property", "displayName": "Snapshot Mode", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the oplog. 'never': The connector does not run a snapshot. Upon first startup, the connector immediately begins reading from the beginning of the oplog." },
-    "sourceinfoStructMaker": { "index": 63, "kind": "property", "displayName": "Sourceinfo Struct Maker", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.mongodb.MongoDbSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
-    "tombstonesOnDelete": { "index": 64, "kind": "property", "displayName": "Tombstones On Delete", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
-    "topicNamingStrategy": { "index": 65, "kind": "property", "displayName": "Topic Naming Strategy", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
-    "topicPrefix": { "index": 66, "kind": "property", "displayName": "Topic Prefix", "group": "mongodb", "label": "consumer,mongodb", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
+    "mongodbConnectionString": { "index": 33, "kind": "property", "displayName": "Mongodb Connection String", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Database connection string." },
+    "mongodbConnectTimeoutMs": { "index": 34, "kind": "property", "displayName": "Mongodb Connect Timeout Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The connection timeout, given in milliseconds. Defaults to 10 seconds (10,000 ms)." },
+    "mongodbHeartbeatFrequencyMs": { "index": 35, "kind": "property", "displayName": "Mongodb Heartbeat Frequency Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The frequency that the cluster monitor attempts to reach each server. Defaults to 10 seconds (10,000 ms)." },
+    "mongodbPassword": { "index": 36, "kind": "property", "displayName": "Mongodb Password", "group": "mongodb", "label": "consumer,mongodb", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Password to be used when connecting to MongoDB, if necessary." },
+    "mongodbPollIntervalMs": { "index": 37, "kind": "property", "displayName": "Mongodb Poll Interval Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "30s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new, removed, or changed replica sets, given in milliseconds. Defaults to 30 seconds (30,000 ms)." },
+    "mongodbServerSelectionTimeoutMs": { "index": 38, "kind": "property", "displayName": "Mongodb Server Selection Timeout Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "30s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The server selection timeout, given in milliseconds. Defaults to 10 seconds (10,000 ms)." },
+    "mongodbSocketTimeoutMs": { "index": 39, "kind": "property", "displayName": "Mongodb Socket Timeout Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The socket timeout, given in milliseconds. Defaults to 0 ms." },
+    "mongodbSslEnabled": { "index": 40, "kind": "property", "displayName": "Mongodb Ssl Enabled", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Should connector use SSL to connect to MongoDB instances" },
+    "mongodbSslInvalidHostnameAllowed": { "index": 41, "kind": "property", "displayName": "Mongodb Ssl Invalid Hostname Allowed", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether invalid host names are allowed when using SSL. If true the connection will not prevent man-in-the-middle attacks" },
+    "mongodbUser": { "index": 42, "kind": "property", "displayName": "Mongodb User", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Database user for connecting to MongoDB, if necessary." },
+    "notificationEnabledChannels": { "index": 43, "kind": "property", "displayName": "Notification Enabled Channels", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of notification channels names that are enabled." },
+    "notificationSinkTopicName": { "index": 44, "kind": "property", "displayName": "Notification Sink Topic Name", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the topic for the notifications. This is required in case 'sink' is in the list of enabled channels" },
+    "pollIntervalMs": { "index": 45, "kind": "property", "displayName": "Poll Interval Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "500ms", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait for new change events to appear after receiving no events, given in milliseconds. Defaults to 500 ms." },
+    "postProcessors": { "index": 46, "kind": "property", "displayName": "Post Processors", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of post processors. The processors are defined using '.type' config option and configured using options ''" },
+    "provideTransactionMetadata": { "index": 47, "kind": "property", "displayName": "Provide Transaction Metadata", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Enables transaction metadata extraction together with event counting" },
+    "queryFetchSize": { "index": 48, "kind": "property", "displayName": "Query Fetch Size", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while streaming. A value of '0' uses the default JDBC fetch size." },
+    "retriableRestartConnectorWaitMs": { "index": 49, "kind": "property", "displayName": "Retriable Restart Connector Wait Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait before restarting connector after retriable exception occurs. Defaults to 10000ms." },
+    "schemaHistoryInternalFileFilename": { "index": 50, "kind": "property", "displayName": "Schema History Internal File Filename", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The path to the file that will be used to record the database schema history" },
+    "schemaNameAdjustmentMode": { "index": 51, "kind": "property", "displayName": "Schema Name Adjustment Mode", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how schema names should be adjusted for compatibility with the message converter used by the connector, including: 'avro' replaces the characters that cannot be used in the Avro type name with underscore; 'avro_unicode' replaces the underscore or characters that cannot be used in the Avro type name with corresponding unicode like _uxxxx. Note: _ is an escape sequence like backslash in Java;'none' does not apply any adjustment (default)" },
+    "signalDataCollection": { "index": 52, "kind": "property", "displayName": "Signal Data Collection", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the data collection that is used to send signals\/commands to Debezium. Signaling is disabled when not set." },
+    "signalEnabledChannels": { "index": 53, "kind": "property", "displayName": "Signal Enabled Channels", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "source", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of channels names that are enabled. Source channel is enabled by default" },
+    "signalPollIntervalMs": { "index": 54, "kind": "property", "displayName": "Signal Poll Interval Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new signals in registered channels, given in milliseconds. Defaults to 5 seconds." },
+    "skippedOperations": { "index": 55, "kind": "property", "displayName": "Skipped Operations", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "t", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The comma-separated list of operations to skip during streaming, defined as: 'c' for inserts\/create; 'u' for updates; 'd' for deletes, 't' for truncates, and 'none' to indicate nothing skipped. By default, only truncate operations will be skipped." },
+    "snapshotCollectionFilterOverrides": { "index": 56, "kind": "property", "displayName": "Snapshot Collection Filter Overrides", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of ., for which the initial snapshot may be a subset of data present in the data source. The subset would be defined by mongodb filter query specified as value for property snapshot.collection.filter.override.." },
+    "snapshotDelayMs": { "index": 57, "kind": "property", "displayName": "Snapshot Delay Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
+    "snapshotFetchSize": { "index": 58, "kind": "property", "displayName": "Snapshot Fetch Size", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
+    "snapshotIncludeCollectionList": { "index": 59, "kind": "property", "displayName": "Snapshot Include Collection List", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
+    "snapshotMaxThreads": { "index": 60, "kind": "property", "displayName": "Snapshot Max Threads", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
+    "snapshotMode": { "index": 61, "kind": "property", "displayName": "Snapshot Mode", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the oplog. 'never': The connector does not run a snapshot. Upon first startup, the connector immediately begins reading from the beginning of the oplog." },
+    "snapshotModeConfigurationBasedSnapshotData": { "index": 62, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot Data", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not." },
+    "snapshotModeConfigurationBasedSnapshotOnDataError": { "index": 63, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot On Data Error", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotOnSchemaError": { "index": 64, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot On Schema Error", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotSchema": { "index": 65, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot Schema", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not." },
+    "snapshotModeConfigurationBasedStartStream": { "index": 66, "kind": "property", "displayName": "Snapshot Mode Configuration Based Start Stream", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot." },
+    "snapshotModeCustomName": { "index": 67, "kind": "property", "displayName": "Snapshot Mode Custom Name", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot." },
+    "sourceinfoStructMaker": { "index": 68, "kind": "property", "displayName": "Sourceinfo Struct Maker", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.mongodb.MongoDbSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
+    "tombstonesOnDelete": { "index": 69, "kind": "property", "displayName": "Tombstones On Delete", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
+    "topicNamingStrategy": { "index": 70, "kind": "property", "displayName": "Topic Naming Strategy", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
+    "topicPrefix": { "index": 71, "kind": "property", "displayName": "Topic Prefix", "group": "mongodb", "label": "consumer,mongodb", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
   },
   "headers": {
     "CamelDebeziumSourceMetadata": { "index": 0, "kind": "header", "displayName": "", "group": "consumer", "label": "", "required": false, "javaType": "Map<String, Object>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The metadata about the source event, for example table name, database name, log position, etc, please refer to the Debezium documentation for more info.", "constantName": "org.apache.camel.component.debezium.DebeziumConstants#HEADER_SOURCE_METADATA" },
@@ -135,39 +140,44 @@
     "maxQueueSize": { "index": 31, "kind": "parameter", "displayName": "Max Queue Size", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 8192, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue for change events read from the database log but not yet recorded or forwarded. Defaults to 8192, and should always be larger than the maximum batch size." },
     "maxQueueSizeInBytes": { "index": 32, "kind": "parameter", "displayName": "Max Queue Size In Bytes", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue in bytes for change events read from the database log but not yet recorded or forwarded. Defaults to 0. Mean the feature is not enabled" },
     "mongodbAuthsource": { "index": 33, "kind": "parameter", "displayName": "Mongodb Authsource", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "admin", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Database containing user credentials." },
-    "mongodbConnectionMode": { "index": 34, "kind": "parameter", "displayName": "Mongodb Connection Mode", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "sharded", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The method used to connect to MongoDB cluster. Options include: 'replica_set' to individually connect to each replica set \/ shard 'sharded' (the default) to connect via single connection obtained from connection string" },
-    "mongodbConnectionString": { "index": 35, "kind": "parameter", "displayName": "Mongodb Connection String", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Database connection string." },
-    "mongodbConnectTimeoutMs": { "index": 36, "kind": "parameter", "displayName": "Mongodb Connect Timeout Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The connection timeout, given in milliseconds. Defaults to 10 seconds (10,000 ms)." },
-    "mongodbHeartbeatFrequencyMs": { "index": 37, "kind": "parameter", "displayName": "Mongodb Heartbeat Frequency Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The frequency that the cluster monitor attempts to reach each server. Defaults to 10 seconds (10,000 ms)." },
-    "mongodbPassword": { "index": 38, "kind": "parameter", "displayName": "Mongodb Password", "group": "mongodb", "label": "consumer,mongodb", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Password to be used when connecting to MongoDB, if necessary." },
-    "mongodbPollIntervalMs": { "index": 39, "kind": "parameter", "displayName": "Mongodb Poll Interval Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "30s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new, removed, or changed replica sets, given in milliseconds. Defaults to 30 seconds (30,000 ms)." },
-    "mongodbServerSelectionTimeoutMs": { "index": 40, "kind": "parameter", "displayName": "Mongodb Server Selection Timeout Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "30s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The server selection timeout, given in milliseconds. Defaults to 10 seconds (10,000 ms)." },
-    "mongodbSocketTimeoutMs": { "index": 41, "kind": "parameter", "displayName": "Mongodb Socket Timeout Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The socket timeout, given in milliseconds. Defaults to 0 ms." },
-    "mongodbSslEnabled": { "index": 42, "kind": "parameter", "displayName": "Mongodb Ssl Enabled", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Should connector use SSL to connect to MongoDB instances" },
-    "mongodbSslInvalidHostnameAllowed": { "index": 43, "kind": "parameter", "displayName": "Mongodb Ssl Invalid Hostname Allowed", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether invalid host names are allowed when using SSL. If true the connection will not prevent man-in-the-middle attacks" },
-    "mongodbUser": { "index": 44, "kind": "parameter", "displayName": "Mongodb User", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Database user for connecting to MongoDB, if necessary." },
-    "notificationEnabledChannels": { "index": 45, "kind": "parameter", "displayName": "Notification Enabled Channels", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of notification channels names that are enabled." },
-    "notificationSinkTopicName": { "index": 46, "kind": "parameter", "displayName": "Notification Sink Topic Name", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the topic for the notifications. This is required in case 'sink' is in the list of enabled channels" },
-    "pollIntervalMs": { "index": 47, "kind": "parameter", "displayName": "Poll Interval Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "500ms", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait for new change events to appear after receiving no events, given in milliseconds. Defaults to 500 ms." },
-    "postProcessors": { "index": 48, "kind": "parameter", "displayName": "Post Processors", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of post processors. The processors are defined using '.type' config option and configured using options ''" },
-    "provideTransactionMetadata": { "index": 49, "kind": "parameter", "displayName": "Provide Transaction Metadata", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Enables transaction metadata extraction together with event counting" },
-    "queryFetchSize": { "index": 50, "kind": "parameter", "displayName": "Query Fetch Size", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while streaming. A value of '0' uses the default JDBC fetch size." },
-    "retriableRestartConnectorWaitMs": { "index": 51, "kind": "parameter", "displayName": "Retriable Restart Connector Wait Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait before restarting connector after retriable exception occurs. Defaults to 10000ms." },
-    "schemaHistoryInternalFileFilename": { "index": 52, "kind": "parameter", "displayName": "Schema History Internal File Filename", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The path to the file that will be used to record the database schema history" },
-    "schemaNameAdjustmentMode": { "index": 53, "kind": "parameter", "displayName": "Schema Name Adjustment Mode", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how schema names should be adjusted for compatibility with the message converter used by the connector, including: 'avro' replaces the characters that cannot be used in the Avro type name with underscore; 'avro_unicode' replaces the underscore or characters that cannot be used in the Avro type name with corresponding unicode like _uxxxx. Note: _ is an escape sequence like backslash in Java;'none' does not apply any adjustment (default)" },
-    "signalDataCollection": { "index": 54, "kind": "parameter", "displayName": "Signal Data Collection", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the data collection that is used to send signals\/commands to Debezium. Signaling is disabled when not set." },
-    "signalEnabledChannels": { "index": 55, "kind": "parameter", "displayName": "Signal Enabled Channels", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "source", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of channels names that are enabled. Source channel is enabled by default" },
-    "signalPollIntervalMs": { "index": 56, "kind": "parameter", "displayName": "Signal Poll Interval Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new signals in registered channels, given in milliseconds. Defaults to 5 seconds." },
-    "skippedOperations": { "index": 57, "kind": "parameter", "displayName": "Skipped Operations", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "t", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The comma-separated list of operations to skip during streaming, defined as: 'c' for inserts\/create; 'u' for updates; 'd' for deletes, 't' for truncates, and 'none' to indicate nothing skipped. By default, only truncate operations will be skipped." },
-    "snapshotCollectionFilterOverrides": { "index": 58, "kind": "parameter", "displayName": "Snapshot Collection Filter Overrides", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of ., for which the initial snapshot may be a subset of data present in the data source. The subset would be defined by mongodb filter query specified as value for property snapshot.collection.filter.override.." },
-    "snapshotDelayMs": { "index": 59, "kind": "parameter", "displayName": "Snapshot Delay Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
-    "snapshotFetchSize": { "index": 60, "kind": "parameter", "displayName": "Snapshot Fetch Size", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
-    "snapshotIncludeCollectionList": { "index": 61, "kind": "parameter", "displayName": "Snapshot Include Collection List", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
-    "snapshotMaxThreads": { "index": 62, "kind": "parameter", "displayName": "Snapshot Max Threads", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
-    "snapshotMode": { "index": 63, "kind": "parameter", "displayName": "Snapshot Mode", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the oplog. 'never': The connector does not run a snapshot. Upon first startup, the connector immediately begins reading from the beginning of the oplog." },
-    "sourceinfoStructMaker": { "index": 64, "kind": "parameter", "displayName": "Sourceinfo Struct Maker", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.mongodb.MongoDbSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
-    "tombstonesOnDelete": { "index": 65, "kind": "parameter", "displayName": "Tombstones On Delete", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
-    "topicNamingStrategy": { "index": 66, "kind": "parameter", "displayName": "Topic Naming Strategy", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
-    "topicPrefix": { "index": 67, "kind": "parameter", "displayName": "Topic Prefix", "group": "mongodb", "label": "consumer,mongodb", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
+    "mongodbConnectionString": { "index": 34, "kind": "parameter", "displayName": "Mongodb Connection String", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Database connection string." },
+    "mongodbConnectTimeoutMs": { "index": 35, "kind": "parameter", "displayName": "Mongodb Connect Timeout Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The connection timeout, given in milliseconds. Defaults to 10 seconds (10,000 ms)." },
+    "mongodbHeartbeatFrequencyMs": { "index": 36, "kind": "parameter", "displayName": "Mongodb Heartbeat Frequency Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The frequency that the cluster monitor attempts to reach each server. Defaults to 10 seconds (10,000 ms)." },
+    "mongodbPassword": { "index": 37, "kind": "parameter", "displayName": "Mongodb Password", "group": "mongodb", "label": "consumer,mongodb", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Password to be used when connecting to MongoDB, if necessary." },
+    "mongodbPollIntervalMs": { "index": 38, "kind": "parameter", "displayName": "Mongodb Poll Interval Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "30s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new, removed, or changed replica sets, given in milliseconds. Defaults to 30 seconds (30,000 ms)." },
+    "mongodbServerSelectionTimeoutMs": { "index": 39, "kind": "parameter", "displayName": "Mongodb Server Selection Timeout Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "30s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The server selection timeout, given in milliseconds. Defaults to 10 seconds (10,000 ms)." },
+    "mongodbSocketTimeoutMs": { "index": 40, "kind": "parameter", "displayName": "Mongodb Socket Timeout Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The socket timeout, given in milliseconds. Defaults to 0 ms." },
+    "mongodbSslEnabled": { "index": 41, "kind": "parameter", "displayName": "Mongodb Ssl Enabled", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Should connector use SSL to connect to MongoDB instances" },
+    "mongodbSslInvalidHostnameAllowed": { "index": 42, "kind": "parameter", "displayName": "Mongodb Ssl Invalid Hostname Allowed", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether invalid host names are allowed when using SSL. If true the connection will not prevent man-in-the-middle attacks" },
+    "mongodbUser": { "index": 43, "kind": "parameter", "displayName": "Mongodb User", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Database user for connecting to MongoDB, if necessary." },
+    "notificationEnabledChannels": { "index": 44, "kind": "parameter", "displayName": "Notification Enabled Channels", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of notification channels names that are enabled." },
+    "notificationSinkTopicName": { "index": 45, "kind": "parameter", "displayName": "Notification Sink Topic Name", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the topic for the notifications. This is required in case 'sink' is in the list of enabled channels" },
+    "pollIntervalMs": { "index": 46, "kind": "parameter", "displayName": "Poll Interval Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "500ms", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait for new change events to appear after receiving no events, given in milliseconds. Defaults to 500 ms." },
+    "postProcessors": { "index": 47, "kind": "parameter", "displayName": "Post Processors", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of post processors. The processors are defined using '.type' config option and configured using options ''" },
+    "provideTransactionMetadata": { "index": 48, "kind": "parameter", "displayName": "Provide Transaction Metadata", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Enables transaction metadata extraction together with event counting" },
+    "queryFetchSize": { "index": 49, "kind": "parameter", "displayName": "Query Fetch Size", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while streaming. A value of '0' uses the default JDBC fetch size." },
+    "retriableRestartConnectorWaitMs": { "index": 50, "kind": "parameter", "displayName": "Retriable Restart Connector Wait Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait before restarting connector after retriable exception occurs. Defaults to 10000ms." },
+    "schemaHistoryInternalFileFilename": { "index": 51, "kind": "parameter", "displayName": "Schema History Internal File Filename", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The path to the file that will be used to record the database schema history" },
+    "schemaNameAdjustmentMode": { "index": 52, "kind": "parameter", "displayName": "Schema Name Adjustment Mode", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how schema names should be adjusted for compatibility with the message converter used by the connector, including: 'avro' replaces the characters that cannot be used in the Avro type name with underscore; 'avro_unicode' replaces the underscore or characters that cannot be used in the Avro type name with corresponding unicode like _uxxxx. Note: _ is an escape sequence like backslash in Java;'none' does not apply any adjustment (default)" },
+    "signalDataCollection": { "index": 53, "kind": "parameter", "displayName": "Signal Data Collection", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the data collection that is used to send signals\/commands to Debezium. Signaling is disabled when not set." },
+    "signalEnabledChannels": { "index": 54, "kind": "parameter", "displayName": "Signal Enabled Channels", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "source", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of channels names that are enabled. Source channel is enabled by default" },
+    "signalPollIntervalMs": { "index": 55, "kind": "parameter", "displayName": "Signal Poll Interval Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5s", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new signals in registered channels, given in milliseconds. Defaults to 5 seconds." },
+    "skippedOperations": { "index": 56, "kind": "parameter", "displayName": "Skipped Operations", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "t", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The comma-separated list of operations to skip during streaming, defined as: 'c' for inserts\/create; 'u' for updates; 'd' for deletes, 't' for truncates, and 'none' to indicate nothing skipped. By default, only truncate operations will be skipped." },
+    "snapshotCollectionFilterOverrides": { "index": 57, "kind": "parameter", "displayName": "Snapshot Collection Filter Overrides", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of ., for which the initial snapshot may be a subset of data present in the data source. The subset would be defined by mongodb filter query specified as value for property snapshot.collection.filter.override.." },
+    "snapshotDelayMs": { "index": 58, "kind": "parameter", "displayName": "Snapshot Delay Ms", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
+    "snapshotFetchSize": { "index": 59, "kind": "parameter", "displayName": "Snapshot Fetch Size", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
+    "snapshotIncludeCollectionList": { "index": 60, "kind": "parameter", "displayName": "Snapshot Include Collection List", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
+    "snapshotMaxThreads": { "index": 61, "kind": "parameter", "displayName": "Snapshot Max Threads", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
+    "snapshotMode": { "index": 62, "kind": "parameter", "displayName": "Snapshot Mode", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the oplog. 'never': The connector does not run a snapshot. Upon first startup, the connector immediately begins reading from the beginning of the oplog." },
+    "snapshotModeConfigurationBasedSnapshotData": { "index": 63, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot Data", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not." },
+    "snapshotModeConfigurationBasedSnapshotOnDataError": { "index": 64, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot On Data Error", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotOnSchemaError": { "index": 65, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot On Schema Error", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotSchema": { "index": 66, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot Schema", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not." },
+    "snapshotModeConfigurationBasedStartStream": { "index": 67, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Start Stream", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot." },
+    "snapshotModeCustomName": { "index": 68, "kind": "parameter", "displayName": "Snapshot Mode Custom Name", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot." },
+    "sourceinfoStructMaker": { "index": 69, "kind": "parameter", "displayName": "Sourceinfo Struct Maker", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.mongodb.MongoDbSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
+    "tombstonesOnDelete": { "index": 70, "kind": "parameter", "displayName": "Tombstones On Delete", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
+    "topicNamingStrategy": { "index": 71, "kind": "parameter", "displayName": "Topic Naming Strategy", "group": "mongodb", "label": "consumer,mongodb", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
+    "topicPrefix": { "index": 72, "kind": "parameter", "displayName": "Topic Prefix", "group": "mongodb", "label": "consumer,mongodb", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MongoDbConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
   }
 }
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-mysql.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-mysql.json
index 2b1d7d2..a628d55 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-mysql.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-mysql.json
@@ -112,17 +112,25 @@
     "snapshotLockTimeoutMs": { "index": 86, "kind": "property", "displayName": "Snapshot Lock Timeout Ms", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
     "snapshotMaxThreads": { "index": 87, "kind": "property", "displayName": "Snapshot Max Threads", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
     "snapshotMode": { "index": 88, "kind": "property", "displayName": "Snapshot Mode", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'when_needed': On startup, the connector runs a snapshot if one is needed.; 'schema_only': If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures only the schema (table structures), but not any table data. After the snapshot completes, the connector begins to stream changes from the binlog.; 'schema_only_recovery': The connector performs a snapshot that captures only the database schema history. The connector then transitions back to streaming. Use this setting to restore a corrupted or lost database schema history topic. Do not use if the database schema was modified after the connector stopped.; 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the binlog.; 'initial_only': The connector performs a snapshot as it does for the 'initial' option, but after the connector completes the snapshot, it stops, and does not stream changes from the binlog.; 'never': The connector does not run a snapshot. Upon first startup, the connector immediately begins reading from the beginning of the binlog. The 'never' mode should be used with care, and only when the binlog is known to contain all history." },
-    "snapshotNewTables": { "index": 89, "kind": "property", "displayName": "Snapshot New Tables", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "off", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "BETA FEATURE: On connector restart, the connector will check if there have been any new tables added to the configuration, and snapshot them. There is presently only two options: 'off': Default behavior. Do not snapshot new tables. 'parallel': The snapshot of the new tables will occur in parallel to the continued binlog reading of the old tables. When the snapshot completes, an independent binlog reader will begin reading the events for the new tables until it catches up to present time. At this point, both old and new binlog readers will be momentarily halted and new binlog reader will start that will read the binlog for all configured tables. The parallel binlog reader will have a configured server id of 10000 the primary binlog reader's server id." },
-    "snapshotSelectStatementOverrides": { "index": 90, "kind": "property", "displayName": "Snapshot Select Statement Overrides", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
-    "snapshotTablesOrderByRowCount": { "index": 91, "kind": "property", "displayName": "Snapshot Tables Order By Row Count", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
-    "sourceinfoStructMaker": { "index": 92, "kind": "property", "displayName": "Sourceinfo Struct Maker", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.mysql.MySqlSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
-    "tableExcludeList": { "index": 93, "kind": "property", "displayName": "Table Exclude List", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
-    "tableIgnoreBuiltin": { "index": 94, "kind": "property", "displayName": "Table Ignore Builtin", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
-    "tableIncludeList": { "index": 95, "kind": "property", "displayName": "Table Include List", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
-    "timePrecisionMode": { "index": 96, "kind": "property", "displayName": "Time Precision Mode", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive_time_microseconds", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date and timestamps can be represented with different kinds of precisions, including: 'adaptive_time_microseconds': the precision of date and timestamp values is based the database column's precision; but time fields always use microseconds precision; 'connect': always represents time, date and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
-    "tombstonesOnDelete": { "index": 97, "kind": "property", "displayName": "Tombstones On Delete", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
-    "topicNamingStrategy": { "index": 98, "kind": "property", "displayName": "Topic Naming Strategy", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
-    "topicPrefix": { "index": 99, "kind": "property", "displayName": "Topic Prefix", "group": "mysql", "label": "consumer,mysql", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
+    "snapshotModeConfigurationBasedSnapshotData": { "index": 89, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot Data", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not." },
+    "snapshotModeConfigurationBasedSnapshotOnDataError": { "index": 90, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot On Data Error", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotOnSchemaError": { "index": 91, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot On Schema Error", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotSchema": { "index": 92, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot Schema", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not." },
+    "snapshotModeConfigurationBasedStartStream": { "index": 93, "kind": "property", "displayName": "Snapshot Mode Configuration Based Start Stream", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot." },
+    "snapshotModeCustomName": { "index": 94, "kind": "property", "displayName": "Snapshot Mode Custom Name", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot." },
+    "snapshotNewTables": { "index": 95, "kind": "property", "displayName": "Snapshot New Tables", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "off", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "BETA FEATURE: On connector restart, the connector will check if there have been any new tables added to the configuration, and snapshot them. There is presently only two options: 'off': Default behavior. Do not snapshot new tables. 'parallel': The snapshot of the new tables will occur in parallel to the continued binlog reading of the old tables. When the snapshot completes, an independent binlog reader will begin reading the events for the new tables until it catches up to present time. At this point, both old and new binlog readers will be momentarily halted and new binlog reader will start that will read the binlog for all configured tables. The parallel binlog reader will have a configured server id of 10000 the primary binlog reader's server id." },
+    "snapshotQueryMode": { "index": 96, "kind": "property", "displayName": "Snapshot Query Mode", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "select_all", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls query used during the snapshot" },
+    "snapshotQueryModeCustomName": { "index": 97, "kind": "property", "displayName": "Snapshot Query Mode Custom Name", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.query.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'SnapshotterQuery' interface and is called to determine how to build queries during snapshot." },
+    "snapshotSelectStatementOverrides": { "index": 98, "kind": "property", "displayName": "Snapshot Select Statement Overrides", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
+    "snapshotTablesOrderByRowCount": { "index": 99, "kind": "property", "displayName": "Snapshot Tables Order By Row Count", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
+    "sourceinfoStructMaker": { "index": 100, "kind": "property", "displayName": "Sourceinfo Struct Maker", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.mysql.MySqlSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
+    "tableExcludeList": { "index": 101, "kind": "property", "displayName": "Table Exclude List", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
+    "tableIgnoreBuiltin": { "index": 102, "kind": "property", "displayName": "Table Ignore Builtin", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
+    "tableIncludeList": { "index": 103, "kind": "property", "displayName": "Table Include List", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
+    "timePrecisionMode": { "index": 104, "kind": "property", "displayName": "Time Precision Mode", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive_time_microseconds", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date and timestamps can be represented with different kinds of precisions, including: 'adaptive_time_microseconds': the precision of date and timestamp values is based the database column's precision; but time fields always use microseconds precision; 'connect': always represents time, date and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
+    "tombstonesOnDelete": { "index": 105, "kind": "property", "displayName": "Tombstones On Delete", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
+    "topicNamingStrategy": { "index": 106, "kind": "property", "displayName": "Topic Naming Strategy", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
+    "topicPrefix": { "index": 107, "kind": "property", "displayName": "Topic Prefix", "group": "mysql", "label": "consumer,mysql", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
   },
   "headers": {
     "CamelDebeziumSourceMetadata": { "index": 0, "kind": "header", "displayName": "", "group": "consumer", "label": "", "required": false, "javaType": "Map<String, Object>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The metadata about the source event, for example table name, database name, log position, etc, please refer to the Debezium documentation for more info.", "constantName": "org.apache.camel.component.debezium.DebeziumConstants#HEADER_SOURCE_METADATA" },
@@ -224,16 +232,24 @@
     "snapshotLockTimeoutMs": { "index": 87, "kind": "parameter", "displayName": "Snapshot Lock Timeout Ms", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
     "snapshotMaxThreads": { "index": 88, "kind": "parameter", "displayName": "Snapshot Max Threads", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
     "snapshotMode": { "index": 89, "kind": "parameter", "displayName": "Snapshot Mode", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'when_needed': On startup, the connector runs a snapshot if one is needed.; 'schema_only': If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures only the schema (table structures), but not any table data. After the snapshot completes, the connector begins to stream changes from the binlog.; 'schema_only_recovery': The connector performs a snapshot that captures only the database schema history. The connector then transitions back to streaming. Use this setting to restore a corrupted or lost database schema history topic. Do not use if the database schema was modified after the connector stopped.; 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the binlog.; 'initial_only': The connector performs a snapshot as it does for the 'initial' option, but after the connector completes the snapshot, it stops, and does not stream changes from the binlog.; 'never': The connector does not run a snapshot. Upon first startup, the connector immediately begins reading from the beginning of the binlog. The 'never' mode should be used with care, and only when the binlog is known to contain all history." },
-    "snapshotNewTables": { "index": 90, "kind": "parameter", "displayName": "Snapshot New Tables", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "off", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "BETA FEATURE: On connector restart, the connector will check if there have been any new tables added to the configuration, and snapshot them. There is presently only two options: 'off': Default behavior. Do not snapshot new tables. 'parallel': The snapshot of the new tables will occur in parallel to the continued binlog reading of the old tables. When the snapshot completes, an independent binlog reader will begin reading the events for the new tables until it catches up to present time. At this point, both old and new binlog readers will be momentarily halted and new binlog reader will start that will read the binlog for all configured tables. The parallel binlog reader will have a configured server id of 10000 the primary binlog reader's server id." },
-    "snapshotSelectStatementOverrides": { "index": 91, "kind": "parameter", "displayName": "Snapshot Select Statement Overrides", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
-    "snapshotTablesOrderByRowCount": { "index": 92, "kind": "parameter", "displayName": "Snapshot Tables Order By Row Count", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
-    "sourceinfoStructMaker": { "index": 93, "kind": "parameter", "displayName": "Sourceinfo Struct Maker", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.mysql.MySqlSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
-    "tableExcludeList": { "index": 94, "kind": "parameter", "displayName": "Table Exclude List", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
-    "tableIgnoreBuiltin": { "index": 95, "kind": "parameter", "displayName": "Table Ignore Builtin", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
-    "tableIncludeList": { "index": 96, "kind": "parameter", "displayName": "Table Include List", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
-    "timePrecisionMode": { "index": 97, "kind": "parameter", "displayName": "Time Precision Mode", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive_time_microseconds", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date and timestamps can be represented with different kinds of precisions, including: 'adaptive_time_microseconds': the precision of date and timestamp values is based the database column's precision; but time fields always use microseconds precision; 'connect': always represents time, date and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
-    "tombstonesOnDelete": { "index": 98, "kind": "parameter", "displayName": "Tombstones On Delete", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
-    "topicNamingStrategy": { "index": 99, "kind": "parameter", "displayName": "Topic Naming Strategy", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
-    "topicPrefix": { "index": 100, "kind": "parameter", "displayName": "Topic Prefix", "group": "mysql", "label": "consumer,mysql", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
+    "snapshotModeConfigurationBasedSnapshotData": { "index": 90, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot Data", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not." },
+    "snapshotModeConfigurationBasedSnapshotOnDataError": { "index": 91, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot On Data Error", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotOnSchemaError": { "index": 92, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot On Schema Error", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotSchema": { "index": 93, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot Schema", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not." },
+    "snapshotModeConfigurationBasedStartStream": { "index": 94, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Start Stream", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot." },
+    "snapshotModeCustomName": { "index": 95, "kind": "parameter", "displayName": "Snapshot Mode Custom Name", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot." },
+    "snapshotNewTables": { "index": 96, "kind": "parameter", "displayName": "Snapshot New Tables", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "off", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "BETA FEATURE: On connector restart, the connector will check if there have been any new tables added to the configuration, and snapshot them. There is presently only two options: 'off': Default behavior. Do not snapshot new tables. 'parallel': The snapshot of the new tables will occur in parallel to the continued binlog reading of the old tables. When the snapshot completes, an independent binlog reader will begin reading the events for the new tables until it catches up to present time. At this point, both old and new binlog readers will be momentarily halted and new binlog reader will start that will read the binlog for all configured tables. The parallel binlog reader will have a configured server id of 10000 the primary binlog reader's server id." },
+    "snapshotQueryMode": { "index": 97, "kind": "parameter", "displayName": "Snapshot Query Mode", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "select_all", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls query used during the snapshot" },
+    "snapshotQueryModeCustomName": { "index": 98, "kind": "parameter", "displayName": "Snapshot Query Mode Custom Name", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.query.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'SnapshotterQuery' interface and is called to determine how to build queries during snapshot." },
+    "snapshotSelectStatementOverrides": { "index": 99, "kind": "parameter", "displayName": "Snapshot Select Statement Overrides", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
+    "snapshotTablesOrderByRowCount": { "index": 100, "kind": "parameter", "displayName": "Snapshot Tables Order By Row Count", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
+    "sourceinfoStructMaker": { "index": 101, "kind": "parameter", "displayName": "Sourceinfo Struct Maker", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.mysql.MySqlSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
+    "tableExcludeList": { "index": 102, "kind": "parameter", "displayName": "Table Exclude List", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
+    "tableIgnoreBuiltin": { "index": 103, "kind": "parameter", "displayName": "Table Ignore Builtin", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
+    "tableIncludeList": { "index": 104, "kind": "parameter", "displayName": "Table Include List", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
+    "timePrecisionMode": { "index": 105, "kind": "parameter", "displayName": "Time Precision Mode", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive_time_microseconds", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date and timestamps can be represented with different kinds of precisions, including: 'adaptive_time_microseconds': the precision of date and timestamp values is based the database column's precision; but time fields always use microseconds precision; 'connect': always represents time, date and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
+    "tombstonesOnDelete": { "index": 106, "kind": "parameter", "displayName": "Tombstones On Delete", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
+    "topicNamingStrategy": { "index": 107, "kind": "parameter", "displayName": "Topic Naming Strategy", "group": "mysql", "label": "consumer,mysql", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
+    "topicPrefix": { "index": 108, "kind": "parameter", "displayName": "Topic Prefix", "group": "mysql", "label": "consumer,mysql", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.MySqlConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
   }
 }
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-oracle.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-oracle.json
index 9369188..da95d62 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-oracle.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-oracle.json
@@ -37,35 +37,35 @@
     "offsetStorageReplicationFactor": { "index": 11, "kind": "property", "displayName": "Offset Storage Replication Factor", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Replication factor used when creating the offset storage topic. Required when offset.storage is set to the KafkaOffsetBackingStore" },
     "offsetStorageTopic": { "index": 12, "kind": "property", "displayName": "Offset Storage Topic", "group": "consumer", "label": "consumer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the Kafka topic where offsets are to be stored. Required when offset.storage is set to the KafkaOffsetBackingStore." },
     "autowiredEnabled": { "index": 13, "kind": "property", "displayName": "Autowired Enabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which then gets configured on the component. This can be used for automatic configuring JDBC data sources, JMS connection factories, AWS Clients, etc." },
-    "binaryHandlingMode": { "index": 14, "kind": "property", "displayName": "Binary Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "bytes", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how binary (blob, binary, etc.) columns should be represented in change events, including: 'bytes' represents binary data as byte array (default); 'base64' represents binary data as base64-encoded string; 'base64-url-safe' represents binary data as base64-url-safe-encoded string; 'hex' represents binary data as hex-encoded (base16) string" },
-    "columnExcludeList": { "index": 15, "kind": "property", "displayName": "Column Exclude List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Regular expressions matching columns to exclude from change events" },
-    "columnIncludeList": { "index": 16, "kind": "property", "displayName": "Column Include List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Regular expressions matching columns to include in change events" },
-    "columnPropagateSourceType": { "index": 17, "kind": "property", "displayName": "Column Propagate Source Type", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions matching fully-qualified names of columns that adds the columns original type and original length as parameters to the corresponding field schemas in the emitted change records." },
-    "converters": { "index": 18, "kind": "property", "displayName": "Converters", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of custom converters that would be used instead of default ones. The converters are defined using '.type' config option and configured using options '.'" },
-    "customMetricTags": { "index": 19, "kind": "property", "displayName": "Custom Metric Tags", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The custom metric tags will accept key-value pairs to customize the MBean object name which should be appended the end of regular name, each key would represent a tag for the MBean object name, and the corresponding value would be the value of that tag the key is. For example: k1=v1,k2=v2" },
-    "databaseConnectionAdapter": { "index": 20, "kind": "property", "displayName": "Database Connection Adapter", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "LogMiner", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The adapter to use when capturing changes from the database. Options include: 'logminer': (the default) to capture changes using native Oracle LogMiner; 'xstream' to capture changes using Oracle XStreams" },
-    "databaseDbname": { "index": 21, "kind": "property", "displayName": "Database Dbname", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the database from which the connector should capture changes" },
-    "databaseHostname": { "index": 22, "kind": "property", "displayName": "Database Hostname", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Resolvable hostname or IP address of the database server." },
-    "databaseOutServerName": { "index": 23, "kind": "property", "displayName": "Database Out Server Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Name of the XStream Out server to connect to." },
-    "databasePassword": { "index": 24, "kind": "property", "displayName": "Database Password", "group": "oracle", "label": "consumer,oracle", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Password of the database user to be used when connecting to the database." },
-    "databasePdbName": { "index": 25, "kind": "property", "displayName": "Database Pdb Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Name of the pluggable database when working with a multi-tenant set-up. The CDB name must be given via database.dbname in this case." },
-    "databasePort": { "index": 26, "kind": "property", "displayName": "Database Port", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1528, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Port of the database server." },
-    "databaseUrl": { "index": 27, "kind": "property", "displayName": "Database Url", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Complete JDBC URL as an alternative to specifying hostname, port and database provided as a way to support alternative connection scenarios." },
-    "databaseUser": { "index": 28, "kind": "property", "displayName": "Database User", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Name of the database user to be used when connecting to the database." },
-    "datatypePropagateSourceType": { "index": 29, "kind": "property", "displayName": "Datatype Propagate Source Type", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions matching the database-specific data type names that adds the data type's original type and original length as parameters to the corresponding field schemas in the emitted change records." },
-    "decimalHandlingMode": { "index": 30, "kind": "property", "displayName": "Decimal Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "precise", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how DECIMAL and NUMERIC columns should be represented in change events, including: 'precise' (the default) uses java.math.BigDecimal to represent values, which are encoded in the change events using a binary representation and Kafka Connect's 'org.apache.kafka.connect.data.Decimal' type; 'string' uses string to represent values; 'double' represents values using Java's 'double', which may not offer the precision but will be far easier to use in consumers." },
-    "errorsMaxRetries": { "index": 31, "kind": "property", "displayName": "Errors Max Retries", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of retries on connection errors before failing (-1 = no limit, 0 = disabled, 0 = num of retries)." },
-    "eventProcessingFailureHandlingMode": { "index": 32, "kind": "property", "displayName": "Event Processing Failure Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "fail", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how failures during processing of events (i.e. when encountering a corrupted event) should be handled, including: 'fail' (the default) an exception indicating the problematic event and its position is raised, causing the connector to be stopped; 'warn' the problematic event and its position will be logged and the event will be skipped; 'ignore' the problematic event will be skipped." },
-    "heartbeatActionQuery": { "index": 33, "kind": "property", "displayName": "Heartbeat Action Query", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The query executed with every heartbeat." },
-    "heartbeatIntervalMs": { "index": 34, "kind": "property", "displayName": "Heartbeat Interval Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Length of an interval in milli-seconds in in which the connector periodically sends heartbeat messages to a heartbeat topic. Use 0 to disable heartbeat messages. Disabled by default." },
-    "heartbeatTopicsPrefix": { "index": 35, "kind": "property", "displayName": "Heartbeat Topics Prefix", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium-heartbeat", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The prefix that is used to name heartbeat topics.Defaults to __debezium-heartbeat." },
-    "includeSchemaChanges": { "index": 36, "kind": "property", "displayName": "Include Schema Changes", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector should publish changes in the database schema to a Kafka topic with the same name as the database server ID. Each schema change will be recorded using a key that contains the database name and whose value include logical description of the new schema and optionally the DDL statement(s). The default is 'true'. This is independent of how the connector internally records database schema history." },
-    "includeSchemaComments": { "index": 37, "kind": "property", "displayName": "Include Schema Comments", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector parse table and column's comment to metadata object. Note: Enable this option will bring the implications on memory usage. The number and size of ColumnImpl objects is what largely impacts how much memory is consumed by the Debezium connectors, and adding a String to each of them can potentially be quite heavy. The default is 'false'." },
-    "incrementalSnapshotWatermarkingStrategy": { "index": 38, "kind": "property", "displayName": "Incremental Snapshot Watermarking Strategy", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "INSERT_INSERT", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the strategy used for watermarking during an incremental snapshot: 'insert_insert' both open and close signal is written into signal data collection (default); 'insert_delete' only open signal is written on signal data collection, the close will delete the relative open signal;" },
-    "intervalHandlingMode": { "index": 39, "kind": "property", "displayName": "Interval Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "numeric", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how INTERVAL columns should be represented in change events, including: 'string' represents values as an exact ISO formatted string; 'numeric' (default) represents values using the inexact conversion into microseconds" },
-    "lobEnabled": { "index": 40, "kind": "property", "displayName": "Lob Enabled", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When set to 'false', the default, LOB fields will not be captured nor emitted. When set to 'true', the connector will capture LOB fields and emit changes for those fields like any other column type." },
-    "logMiningArchiveDestinationName": { "index": 41, "kind": "property", "displayName": "Log Mining Archive Destination Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Sets the specific archive log destination as the source for reading archive logs.When not set, the connector will automatically select the first LOCAL and VALID destination." },
-    "logMiningArchiveLogHours": { "index": 42, "kind": "property", "displayName": "Log Mining Archive Log Hours", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The number of hours in the past from SYSDATE to mine archive logs. Using 0 mines all available archive logs" },
+    "archiveDestinationName": { "index": 14, "kind": "property", "displayName": "Archive Destination Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Sets the specific archive log destination as the source for reading archive logs.When not set, the connector will automatically select the first LOCAL and VALID destination." },
+    "archiveLogHours": { "index": 15, "kind": "property", "displayName": "Archive Log Hours", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The number of hours in the past from SYSDATE to mine archive logs. Using 0 mines all available archive logs" },
+    "binaryHandlingMode": { "index": 16, "kind": "property", "displayName": "Binary Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "bytes", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how binary (blob, binary, etc.) columns should be represented in change events, including: 'bytes' represents binary data as byte array (default); 'base64' represents binary data as base64-encoded string; 'base64-url-safe' represents binary data as base64-url-safe-encoded string; 'hex' represents binary data as hex-encoded (base16) string" },
+    "columnExcludeList": { "index": 17, "kind": "property", "displayName": "Column Exclude List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Regular expressions matching columns to exclude from change events" },
+    "columnIncludeList": { "index": 18, "kind": "property", "displayName": "Column Include List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Regular expressions matching columns to include in change events" },
+    "columnPropagateSourceType": { "index": 19, "kind": "property", "displayName": "Column Propagate Source Type", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions matching fully-qualified names of columns that adds the columns original type and original length as parameters to the corresponding field schemas in the emitted change records." },
+    "converters": { "index": 20, "kind": "property", "displayName": "Converters", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of custom converters that would be used instead of default ones. The converters are defined using '.type' config option and configured using options '.'" },
+    "customMetricTags": { "index": 21, "kind": "property", "displayName": "Custom Metric Tags", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The custom metric tags will accept key-value pairs to customize the MBean object name which should be appended the end of regular name, each key would represent a tag for the MBean object name, and the corresponding value would be the value of that tag the key is. For example: k1=v1,k2=v2" },
+    "databaseConnectionAdapter": { "index": 22, "kind": "property", "displayName": "Database Connection Adapter", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "LogMiner", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The adapter to use when capturing changes from the database. Options include: 'logminer': (the default) to capture changes using native Oracle LogMiner; 'xstream' to capture changes using Oracle XStreams" },
+    "databaseDbname": { "index": 23, "kind": "property", "displayName": "Database Dbname", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the database from which the connector should capture changes" },
+    "databaseHostname": { "index": 24, "kind": "property", "displayName": "Database Hostname", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Resolvable hostname or IP address of the database server." },
+    "databaseOutServerName": { "index": 25, "kind": "property", "displayName": "Database Out Server Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Name of the XStream Out server to connect to." },
+    "databasePassword": { "index": 26, "kind": "property", "displayName": "Database Password", "group": "oracle", "label": "consumer,oracle", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Password of the database user to be used when connecting to the database." },
+    "databasePdbName": { "index": 27, "kind": "property", "displayName": "Database Pdb Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Name of the pluggable database when working with a multi-tenant set-up. The CDB name must be given via database.dbname in this case." },
+    "databasePort": { "index": 28, "kind": "property", "displayName": "Database Port", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1528, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Port of the database server." },
+    "databaseUrl": { "index": 29, "kind": "property", "displayName": "Database Url", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Complete JDBC URL as an alternative to specifying hostname, port and database provided as a way to support alternative connection scenarios." },
+    "databaseUser": { "index": 30, "kind": "property", "displayName": "Database User", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Name of the database user to be used when connecting to the database." },
+    "datatypePropagateSourceType": { "index": 31, "kind": "property", "displayName": "Datatype Propagate Source Type", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions matching the database-specific data type names that adds the data type's original type and original length as parameters to the corresponding field schemas in the emitted change records." },
+    "decimalHandlingMode": { "index": 32, "kind": "property", "displayName": "Decimal Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "precise", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how DECIMAL and NUMERIC columns should be represented in change events, including: 'precise' (the default) uses java.math.BigDecimal to represent values, which are encoded in the change events using a binary representation and Kafka Connect's 'org.apache.kafka.connect.data.Decimal' type; 'string' uses string to represent values; 'double' represents values using Java's 'double', which may not offer the precision but will be far easier to use in consumers." },
+    "errorsMaxRetries": { "index": 33, "kind": "property", "displayName": "Errors Max Retries", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of retries on connection errors before failing (-1 = no limit, 0 = disabled, 0 = num of retries)." },
+    "eventProcessingFailureHandlingMode": { "index": 34, "kind": "property", "displayName": "Event Processing Failure Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "fail", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how failures during processing of events (i.e. when encountering a corrupted event) should be handled, including: 'fail' (the default) an exception indicating the problematic event and its position is raised, causing the connector to be stopped; 'warn' the problematic event and its position will be logged and the event will be skipped; 'ignore' the problematic event will be skipped." },
+    "heartbeatActionQuery": { "index": 35, "kind": "property", "displayName": "Heartbeat Action Query", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The query executed with every heartbeat." },
+    "heartbeatIntervalMs": { "index": 36, "kind": "property", "displayName": "Heartbeat Interval Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Length of an interval in milli-seconds in in which the connector periodically sends heartbeat messages to a heartbeat topic. Use 0 to disable heartbeat messages. Disabled by default." },
+    "heartbeatTopicsPrefix": { "index": 37, "kind": "property", "displayName": "Heartbeat Topics Prefix", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium-heartbeat", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The prefix that is used to name heartbeat topics.Defaults to __debezium-heartbeat." },
+    "includeSchemaChanges": { "index": 38, "kind": "property", "displayName": "Include Schema Changes", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector should publish changes in the database schema to a Kafka topic with the same name as the database server ID. Each schema change will be recorded using a key that contains the database name and whose value include logical description of the new schema and optionally the DDL statement(s). The default is 'true'. This is independent of how the connector internally records database schema history." },
+    "includeSchemaComments": { "index": 39, "kind": "property", "displayName": "Include Schema Comments", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector parse table and column's comment to metadata object. Note: Enable this option will bring the implications on memory usage. The number and size of ColumnImpl objects is what largely impacts how much memory is consumed by the Debezium connectors, and adding a String to each of them can potentially be quite heavy. The default is 'false'." },
+    "incrementalSnapshotWatermarkingStrategy": { "index": 40, "kind": "property", "displayName": "Incremental Snapshot Watermarking Strategy", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "INSERT_INSERT", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the strategy used for watermarking during an incremental snapshot: 'insert_insert' both open and close signal is written into signal data collection (default); 'insert_delete' only open signal is written on signal data collection, the close will delete the relative open signal;" },
+    "intervalHandlingMode": { "index": 41, "kind": "property", "displayName": "Interval Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "numeric", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how INTERVAL columns should be represented in change events, including: 'string' represents values as an exact ISO formatted string; 'numeric' (default) represents values using the inexact conversion into microseconds" },
+    "lobEnabled": { "index": 42, "kind": "property", "displayName": "Lob Enabled", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When set to 'false', the default, LOB fields will not be captured nor emitted. When set to 'true', the connector will capture LOB fields and emit changes for those fields like any other column type." },
     "logMiningArchiveLogOnlyMode": { "index": 43, "kind": "property", "displayName": "Log Mining Archive Log Only Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When set to 'false', the default, the connector will mine both archive log and redo logs to emit change events. When set to 'true', the connector will only mine archive logs. There are circumstances where its advantageous to only mine archive logs and accept latency in event emission due to frequent revolving redo logs." },
     "logMiningArchiveLogOnlyScnPollIntervalMs": { "index": 44, "kind": "property", "displayName": "Log Mining Archive Log Only Scn Poll Interval Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The interval in milliseconds to wait between polls checking to see if the SCN is in the archive logs." },
     "logMiningBatchSizeDefault": { "index": 45, "kind": "property", "displayName": "Log Mining Batch Size Default", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 20000, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The starting SCN interval size that the connector will use for reading data from redo\/archive logs." },
@@ -80,62 +80,70 @@
     "logMiningBufferTransactionEventsThreshold": { "index": 54, "kind": "property", "displayName": "Log Mining Buffer Transaction Events Threshold", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The number of events a transaction can include before the transaction is discarded. This is useful for managing buffer memory and\/or space when dealing with very large transactions. Defaults to 0, meaning that no threshold is applied and transactions can have unlimited events." },
     "logMiningBufferType": { "index": 55, "kind": "property", "displayName": "Log Mining Buffer Type", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "memory", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The buffer type controls how the connector manages buffering transaction data. memory - Uses the JVM process' heap to buffer all transaction data. infinispan_embedded - This option uses an embedded Infinispan cache to buffer transaction data and persist it to disk. infinispan_remote - This option uses a remote Infinispan cluster to buffer transaction data and persist it to disk." },
     "logMiningFlushTableName": { "index": 56, "kind": "property", "displayName": "Log Mining Flush Table Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "LOG_MINING_FLUSH", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the flush table used by the connector, defaults to LOG_MINING_FLUSH." },
-    "logMiningQueryFilterMode": { "index": 57, "kind": "property", "displayName": "Log Mining Query Filter Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specifies how the filter configuration is applied to the LogMiner database query. none - The query does not apply any schema or table filters, all filtering is at runtime by the connector. in - The query uses SQL in-clause expressions to specify the schema or table filters. regex - The query uses Oracle REGEXP_LIKE expressions to specify the schema or table filters." },
-    "logMiningRestartConnection": { "index": 58, "kind": "property", "displayName": "Log Mining Restart Connection", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Debezium opens a database connection and keeps that connection open throughout the entire streaming phase. In some situations, this can lead to excessive SGA memory usage. By setting this option to 'true' (the default is 'false'), the connector will close and re-open a database connection after every detected log switch or if the log.mining.session.max.ms has been reached." },
-    "logMiningScnGapDetectionGapSizeMin": { "index": 59, "kind": "property", "displayName": "Log Mining Scn Gap Detection Gap Size Min", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1000000, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Used for SCN gap detection, if the difference between current SCN and previous end SCN is bigger than this value, and the time difference of current SCN and previous end SCN is smaller than log.mining.scn.gap.detection.time.interval.max.ms, consider it a SCN gap." },
-    "logMiningScnGapDetectionTimeIntervalMaxMs": { "index": 60, "kind": "property", "displayName": "Log Mining Scn Gap Detection Time Interval Max Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "20s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Used for SCN gap detection, if the difference between current SCN and previous end SCN is bigger than log.mining.scn.gap.detection.gap.size.min, and the time difference of current SCN and previous end SCN is smaller than this value, consider it a SCN gap." },
-    "logMiningSessionMaxMs": { "index": 61, "kind": "property", "displayName": "Log Mining Session Max Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of milliseconds that a LogMiner session lives for before being restarted. Defaults to 0 (indefinite until a log switch occurs)" },
-    "logMiningSleepTimeDefaultMs": { "index": 62, "kind": "property", "displayName": "Log Mining Sleep Time Default Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The amount of time that the connector will sleep after reading data from redo\/archive logs and before starting reading data again. Value is in milliseconds." },
-    "logMiningSleepTimeIncrementMs": { "index": 63, "kind": "property", "displayName": "Log Mining Sleep Time Increment Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "200ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum amount of time that the connector will use to tune the optimal sleep time when reading data from LogMiner. Value is in milliseconds." },
-    "logMiningSleepTimeMaxMs": { "index": 64, "kind": "property", "displayName": "Log Mining Sleep Time Max Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "3s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum amount of time that the connector will sleep after reading data from redo\/archive logs and before starting reading data again. Value is in milliseconds." },
-    "logMiningSleepTimeMinMs": { "index": 65, "kind": "property", "displayName": "Log Mining Sleep Time Min Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The minimum amount of time that the connector will sleep after reading data from redo\/archive logs and before starting reading data again. Value is in milliseconds." },
-    "logMiningStrategy": { "index": 66, "kind": "property", "displayName": "Log Mining Strategy", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "redo_log_catalog", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "There are strategies: Online catalog with faster mining but no captured DDL. Another - with data dictionary loaded into REDO LOG files" },
-    "logMiningTransactionRetentionMs": { "index": 67, "kind": "property", "displayName": "Log Mining Transaction Retention Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Duration in milliseconds to keep long running transactions in transaction buffer between log mining sessions. By default, all transactions are retained." },
-    "logMiningUsernameExcludeList": { "index": 68, "kind": "property", "displayName": "Log Mining Username Exclude List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Comma separated list of usernames to exclude from LogMiner query." },
-    "logMiningUsernameIncludeList": { "index": 69, "kind": "property", "displayName": "Log Mining Username Include List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Comma separated list of usernames to include from LogMiner query." },
-    "maxBatchSize": { "index": 70, "kind": "property", "displayName": "Max Batch Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 2048, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of each batch of source records. Defaults to 2048." },
-    "maxQueueSize": { "index": 71, "kind": "property", "displayName": "Max Queue Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 8192, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue for change events read from the database log but not yet recorded or forwarded. Defaults to 8192, and should always be larger than the maximum batch size." },
-    "maxQueueSizeInBytes": { "index": 72, "kind": "property", "displayName": "Max Queue Size In Bytes", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue in bytes for change events read from the database log but not yet recorded or forwarded. Defaults to 0. Mean the feature is not enabled" },
-    "messageKeyColumns": { "index": 73, "kind": "property", "displayName": "Message Key Columns", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A semicolon-separated list of expressions that match fully-qualified tables and column(s) to be used as message key. Each expression must match the pattern ':', where the table names could be defined as (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connector, and the key columns are a comma-separated list of columns representing the custom key. For any table without an explicit key configuration the table's primary key column(s) will be used as message key. Example: dbserver1.inventory.orderlines:orderId,orderLineId;dbserver1.inventory.orders:id" },
-    "notificationEnabledChannels": { "index": 74, "kind": "property", "displayName": "Notification Enabled Channels", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of notification channels names that are enabled." },
-    "notificationSinkTopicName": { "index": 75, "kind": "property", "displayName": "Notification Sink Topic Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the topic for the notifications. This is required in case 'sink' is in the list of enabled channels" },
-    "openlogreplicatorHost": { "index": 76, "kind": "property", "displayName": "Openlogreplicator Host", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The hostname of the OpenLogReplicator network service" },
-    "openlogreplicatorPort": { "index": 77, "kind": "property", "displayName": "Openlogreplicator Port", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The port of the OpenLogReplicator network service" },
-    "openlogreplicatorSource": { "index": 78, "kind": "property", "displayName": "Openlogreplicator Source", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The configured logical source name in the OpenLogReplicator configuration that is to stream changes" },
-    "pollIntervalMs": { "index": 79, "kind": "property", "displayName": "Poll Interval Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "500ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait for new change events to appear after receiving no events, given in milliseconds. Defaults to 500 ms." },
-    "postProcessors": { "index": 80, "kind": "property", "displayName": "Post Processors", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of post processors. The processors are defined using '.type' config option and configured using options ''" },
-    "provideTransactionMetadata": { "index": 81, "kind": "property", "displayName": "Provide Transaction Metadata", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Enables transaction metadata extraction together with event counting" },
-    "queryFetchSize": { "index": 82, "kind": "property", "displayName": "Query Fetch Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 10000, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while streaming. A value of '0' uses the default JDBC fetch size, defaults to '2000'." },
-    "racNodes": { "index": 83, "kind": "property", "displayName": "Rac Nodes", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of RAC node hostnames or ip addresses" },
-    "retriableRestartConnectorWaitMs": { "index": 84, "kind": "property", "displayName": "Retriable Restart Connector Wait Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait before restarting connector after retriable exception occurs. Defaults to 10000ms." },
-    "schemaHistoryInternal": { "index": 85, "kind": "property", "displayName": "Schema History Internal", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.storage.kafka.history.KafkaSchemaHistory", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SchemaHistory class that should be used to store and recover database schema changes. The configuration properties for the history are prefixed with the 'schema.history.internal.' string." },
-    "schemaHistoryInternalFileFilename": { "index": 86, "kind": "property", "displayName": "Schema History Internal File Filename", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The path to the file that will be used to record the database schema history" },
-    "schemaHistoryInternalSkipUnparseableDdl": { "index": 87, "kind": "property", "displayName": "Schema History Internal Skip Unparseable Ddl", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the action Debezium will take when it meets a DDL statement in binlog, that it cannot parse.By default the connector will stop operating but by changing the setting it can ignore the statements which it cannot parse. If skipping is enabled then Debezium can miss metadata changes." },
-    "schemaHistoryInternalStoreOnlyCapturedDatabasesDdl": { "index": 88, "kind": "property", "displayName": "Schema History Internal Store Only Captured Databases Ddl", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (true) only DDL that manipulates a table from captured schema\/database will be stored. If set to false, then Debezium will store all incoming DDL statements." },
-    "schemaHistoryInternalStoreOnlyCapturedTablesDdl": { "index": 89, "kind": "property", "displayName": "Schema History Internal Store Only Captured Tables Ddl", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (false) Debezium will store all incoming DDL statements. If set to true, then only DDL that manipulates a captured table will be stored." },
-    "schemaNameAdjustmentMode": { "index": 90, "kind": "property", "displayName": "Schema Name Adjustment Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how schema names should be adjusted for compatibility with the message converter used by the connector, including: 'avro' replaces the characters that cannot be used in the Avro type name with underscore; 'avro_unicode' replaces the underscore or characters that cannot be used in the Avro type name with corresponding unicode like _uxxxx. Note: _ is an escape sequence like backslash in Java;'none' does not apply any adjustment (default)" },
-    "signalDataCollection": { "index": 91, "kind": "property", "displayName": "Signal Data Collection", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the data collection that is used to send signals\/commands to Debezium. Signaling is disabled when not set." },
-    "signalEnabledChannels": { "index": 92, "kind": "property", "displayName": "Signal Enabled Channels", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "source", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of channels names that are enabled. Source channel is enabled by default" },
-    "signalPollIntervalMs": { "index": 93, "kind": "property", "displayName": "Signal Poll Interval Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new signals in registered channels, given in milliseconds. Defaults to 5 seconds." },
-    "skippedOperations": { "index": 94, "kind": "property", "displayName": "Skipped Operations", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "t", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The comma-separated list of operations to skip during streaming, defined as: 'c' for inserts\/create; 'u' for updates; 'd' for deletes, 't' for truncates, and 'none' to indicate nothing skipped. By default, only truncate operations will be skipped." },
-    "snapshotDelayMs": { "index": 95, "kind": "property", "displayName": "Snapshot Delay Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
-    "snapshotEnhancePredicateScn": { "index": 96, "kind": "property", "displayName": "Snapshot Enhance Predicate Scn", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A token to replace on snapshot predicate template" },
-    "snapshotFetchSize": { "index": 97, "kind": "property", "displayName": "Snapshot Fetch Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
-    "snapshotIncludeCollectionList": { "index": 98, "kind": "property", "displayName": "Snapshot Include Collection List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
-    "snapshotLockingMode": { "index": 99, "kind": "property", "displayName": "Snapshot Locking Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "shared", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls how the connector holds locks on tables while performing the schema snapshot. The default is 'shared', which means the connector will hold a table lock that prevents exclusive table access for just the initial portion of the snapshot while the database schemas and other metadata are being read. The remaining work in a snapshot involves selecting all rows from each table, and this is done using a flashback query that requires no locks. However, in some cases it may be desirable to avoid locks entirely which can be done by specifying 'none'. This mode is only safe to use if no schema changes are happening while the snapshot is taken." },
-    "snapshotLockTimeoutMs": { "index": 100, "kind": "property", "displayName": "Snapshot Lock Timeout Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
-    "snapshotMaxThreads": { "index": 101, "kind": "property", "displayName": "Snapshot Max Threads", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
-    "snapshotMode": { "index": 102, "kind": "property", "displayName": "Snapshot Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'always': The connector runs a snapshot every time that it starts. After the snapshot completes, the connector begins to stream changes from the redo logs.; 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the redo logs. 'initial_only': The connector performs a snapshot as it does for the 'initial' option, but after the connector completes the snapshot, it stops, and does not stream changes from the redo logs.; 'schema_only': If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures only the schema (table structures), but not any table data. After the snapshot completes, the connector begins to stream changes from the redo logs.; 'schema_only_recovery': The connector performs a snapshot that captures only the database schema history. The connector then transitions to streaming from the redo logs. Use this setting to restore a corrupted or lost database schema history topic. Do not use if the database schema was modified after the connector stopped." },
-    "snapshotSelectStatementOverrides": { "index": 103, "kind": "property", "displayName": "Snapshot Select Statement Overrides", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
-    "snapshotTablesOrderByRowCount": { "index": 104, "kind": "property", "displayName": "Snapshot Tables Order By Row Count", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
-    "sourceinfoStructMaker": { "index": 105, "kind": "property", "displayName": "Sourceinfo Struct Maker", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.oracle.OracleSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
-    "tableExcludeList": { "index": 106, "kind": "property", "displayName": "Table Exclude List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
-    "tableIncludeList": { "index": 107, "kind": "property", "displayName": "Table Include List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
-    "timePrecisionMode": { "index": 108, "kind": "property", "displayName": "Time Precision Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
-    "tombstonesOnDelete": { "index": 109, "kind": "property", "displayName": "Tombstones On Delete", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
-    "topicNamingStrategy": { "index": 110, "kind": "property", "displayName": "Topic Naming Strategy", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
-    "topicPrefix": { "index": 111, "kind": "property", "displayName": "Topic Prefix", "group": "oracle", "label": "consumer,oracle", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." },
-    "unavailableValuePlaceholder": { "index": 112, "kind": "property", "displayName": "Unavailable Value Placeholder", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium_unavailable_value", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the constant that will be provided by Debezium to indicate that the original value is unavailable and not provided by the database." }
+    "logMiningIncludeRedoSql": { "index": 57, "kind": "property", "displayName": "Log Mining Include Redo Sql", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When enabled, the transaction log REDO SQL will be included in the source information block." },
+    "logMiningQueryFilterMode": { "index": 58, "kind": "property", "displayName": "Log Mining Query Filter Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specifies how the filter configuration is applied to the LogMiner database query. none - The query does not apply any schema or table filters, all filtering is at runtime by the connector. in - The query uses SQL in-clause expressions to specify the schema or table filters. regex - The query uses Oracle REGEXP_LIKE expressions to specify the schema or table filters." },
+    "logMiningRestartConnection": { "index": 59, "kind": "property", "displayName": "Log Mining Restart Connection", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Debezium opens a database connection and keeps that connection open throughout the entire streaming phase. In some situations, this can lead to excessive SGA memory usage. By setting this option to 'true' (the default is 'false'), the connector will close and re-open a database connection after every detected log switch or if the log.mining.session.max.ms has been reached." },
+    "logMiningScnGapDetectionGapSizeMin": { "index": 60, "kind": "property", "displayName": "Log Mining Scn Gap Detection Gap Size Min", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1000000, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Used for SCN gap detection, if the difference between current SCN and previous end SCN is bigger than this value, and the time difference of current SCN and previous end SCN is smaller than log.mining.scn.gap.detection.time.interval.max.ms, consider it a SCN gap." },
+    "logMiningScnGapDetectionTimeIntervalMaxMs": { "index": 61, "kind": "property", "displayName": "Log Mining Scn Gap Detection Time Interval Max Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "20s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Used for SCN gap detection, if the difference between current SCN and previous end SCN is bigger than log.mining.scn.gap.detection.gap.size.min, and the time difference of current SCN and previous end SCN is smaller than this value, consider it a SCN gap." },
+    "logMiningSessionMaxMs": { "index": 62, "kind": "property", "displayName": "Log Mining Session Max Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of milliseconds that a LogMiner session lives for before being restarted. Defaults to 0 (indefinite until a log switch occurs)" },
+    "logMiningSleepTimeDefaultMs": { "index": 63, "kind": "property", "displayName": "Log Mining Sleep Time Default Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The amount of time that the connector will sleep after reading data from redo\/archive logs and before starting reading data again. Value is in milliseconds." },
+    "logMiningSleepTimeIncrementMs": { "index": 64, "kind": "property", "displayName": "Log Mining Sleep Time Increment Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "200ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum amount of time that the connector will use to tune the optimal sleep time when reading data from LogMiner. Value is in milliseconds." },
+    "logMiningSleepTimeMaxMs": { "index": 65, "kind": "property", "displayName": "Log Mining Sleep Time Max Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "3s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum amount of time that the connector will sleep after reading data from redo\/archive logs and before starting reading data again. Value is in milliseconds." },
+    "logMiningSleepTimeMinMs": { "index": 66, "kind": "property", "displayName": "Log Mining Sleep Time Min Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The minimum amount of time that the connector will sleep after reading data from redo\/archive logs and before starting reading data again. Value is in milliseconds." },
+    "logMiningStrategy": { "index": 67, "kind": "property", "displayName": "Log Mining Strategy", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "redo_log_catalog", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "There are strategies: Online catalog with faster mining but no captured DDL. Another - with data dictionary loaded into REDO LOG files" },
+    "logMiningTransactionRetentionMs": { "index": 68, "kind": "property", "displayName": "Log Mining Transaction Retention Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Duration in milliseconds to keep long running transactions in transaction buffer between log mining sessions. By default, all transactions are retained." },
+    "logMiningUsernameExcludeList": { "index": 69, "kind": "property", "displayName": "Log Mining Username Exclude List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Comma separated list of usernames to exclude from LogMiner query." },
+    "logMiningUsernameIncludeList": { "index": 70, "kind": "property", "displayName": "Log Mining Username Include List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Comma separated list of usernames to include from LogMiner query." },
+    "maxBatchSize": { "index": 71, "kind": "property", "displayName": "Max Batch Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 2048, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of each batch of source records. Defaults to 2048." },
+    "maxQueueSize": { "index": 72, "kind": "property", "displayName": "Max Queue Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 8192, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue for change events read from the database log but not yet recorded or forwarded. Defaults to 8192, and should always be larger than the maximum batch size." },
+    "maxQueueSizeInBytes": { "index": 73, "kind": "property", "displayName": "Max Queue Size In Bytes", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue in bytes for change events read from the database log but not yet recorded or forwarded. Defaults to 0. Mean the feature is not enabled" },
+    "messageKeyColumns": { "index": 74, "kind": "property", "displayName": "Message Key Columns", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A semicolon-separated list of expressions that match fully-qualified tables and column(s) to be used as message key. Each expression must match the pattern ':', where the table names could be defined as (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connector, and the key columns are a comma-separated list of columns representing the custom key. For any table without an explicit key configuration the table's primary key column(s) will be used as message key. Example: dbserver1.inventory.orderlines:orderId,orderLineId;dbserver1.inventory.orders:id" },
+    "notificationEnabledChannels": { "index": 75, "kind": "property", "displayName": "Notification Enabled Channels", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of notification channels names that are enabled." },
+    "notificationSinkTopicName": { "index": 76, "kind": "property", "displayName": "Notification Sink Topic Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the topic for the notifications. This is required in case 'sink' is in the list of enabled channels" },
+    "openlogreplicatorHost": { "index": 77, "kind": "property", "displayName": "Openlogreplicator Host", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The hostname of the OpenLogReplicator network service" },
+    "openlogreplicatorPort": { "index": 78, "kind": "property", "displayName": "Openlogreplicator Port", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The port of the OpenLogReplicator network service" },
+    "openlogreplicatorSource": { "index": 79, "kind": "property", "displayName": "Openlogreplicator Source", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The configured logical source name in the OpenLogReplicator configuration that is to stream changes" },
+    "pollIntervalMs": { "index": 80, "kind": "property", "displayName": "Poll Interval Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "500ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait for new change events to appear after receiving no events, given in milliseconds. Defaults to 500 ms." },
+    "postProcessors": { "index": 81, "kind": "property", "displayName": "Post Processors", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of post processors. The processors are defined using '.type' config option and configured using options ''" },
+    "provideTransactionMetadata": { "index": 82, "kind": "property", "displayName": "Provide Transaction Metadata", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Enables transaction metadata extraction together with event counting" },
+    "queryFetchSize": { "index": 83, "kind": "property", "displayName": "Query Fetch Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 10000, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while streaming. A value of '0' uses the default JDBC fetch size, defaults to '2000'." },
+    "racNodes": { "index": 84, "kind": "property", "displayName": "Rac Nodes", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of RAC node hostnames or ip addresses" },
+    "retriableRestartConnectorWaitMs": { "index": 85, "kind": "property", "displayName": "Retriable Restart Connector Wait Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait before restarting connector after retriable exception occurs. Defaults to 10000ms." },
+    "schemaHistoryInternal": { "index": 86, "kind": "property", "displayName": "Schema History Internal", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.storage.kafka.history.KafkaSchemaHistory", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SchemaHistory class that should be used to store and recover database schema changes. The configuration properties for the history are prefixed with the 'schema.history.internal.' string." },
+    "schemaHistoryInternalFileFilename": { "index": 87, "kind": "property", "displayName": "Schema History Internal File Filename", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The path to the file that will be used to record the database schema history" },
+    "schemaHistoryInternalSkipUnparseableDdl": { "index": 88, "kind": "property", "displayName": "Schema History Internal Skip Unparseable Ddl", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the action Debezium will take when it meets a DDL statement in binlog, that it cannot parse.By default the connector will stop operating but by changing the setting it can ignore the statements which it cannot parse. If skipping is enabled then Debezium can miss metadata changes." },
+    "schemaHistoryInternalStoreOnlyCapturedDatabasesDdl": { "index": 89, "kind": "property", "displayName": "Schema History Internal Store Only Captured Databases Ddl", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (true) only DDL that manipulates a table from captured schema\/database will be stored. If set to false, then Debezium will store all incoming DDL statements." },
+    "schemaHistoryInternalStoreOnlyCapturedTablesDdl": { "index": 90, "kind": "property", "displayName": "Schema History Internal Store Only Captured Tables Ddl", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (false) Debezium will store all incoming DDL statements. If set to true, then only DDL that manipulates a captured table will be stored." },
+    "schemaNameAdjustmentMode": { "index": 91, "kind": "property", "displayName": "Schema Name Adjustment Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how schema names should be adjusted for compatibility with the message converter used by the connector, including: 'avro' replaces the characters that cannot be used in the Avro type name with underscore; 'avro_unicode' replaces the underscore or characters that cannot be used in the Avro type name with corresponding unicode like _uxxxx. Note: _ is an escape sequence like backslash in Java;'none' does not apply any adjustment (default)" },
+    "signalDataCollection": { "index": 92, "kind": "property", "displayName": "Signal Data Collection", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the data collection that is used to send signals\/commands to Debezium. Signaling is disabled when not set." },
+    "signalEnabledChannels": { "index": 93, "kind": "property", "displayName": "Signal Enabled Channels", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "source", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of channels names that are enabled. Source channel is enabled by default" },
+    "signalPollIntervalMs": { "index": 94, "kind": "property", "displayName": "Signal Poll Interval Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new signals in registered channels, given in milliseconds. Defaults to 5 seconds." },
+    "skippedOperations": { "index": 95, "kind": "property", "displayName": "Skipped Operations", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "t", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The comma-separated list of operations to skip during streaming, defined as: 'c' for inserts\/create; 'u' for updates; 'd' for deletes, 't' for truncates, and 'none' to indicate nothing skipped. By default, only truncate operations will be skipped." },
+    "snapshotDatabaseErrorsMaxRetries": { "index": 96, "kind": "property", "displayName": "Snapshot Database Errors Max Retries", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The number of attempts to retry database errors during snapshots before failing." },
+    "snapshotDelayMs": { "index": 97, "kind": "property", "displayName": "Snapshot Delay Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
+    "snapshotEnhancePredicateScn": { "index": 98, "kind": "property", "displayName": "Snapshot Enhance Predicate Scn", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A token to replace on snapshot predicate template" },
+    "snapshotFetchSize": { "index": 99, "kind": "property", "displayName": "Snapshot Fetch Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
+    "snapshotIncludeCollectionList": { "index": 100, "kind": "property", "displayName": "Snapshot Include Collection List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
+    "snapshotLockingMode": { "index": 101, "kind": "property", "displayName": "Snapshot Locking Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "shared", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls how the connector holds locks on tables while performing the schema snapshot. The default is 'shared', which means the connector will hold a table lock that prevents exclusive table access for just the initial portion of the snapshot while the database schemas and other metadata are being read. The remaining work in a snapshot involves selecting all rows from each table, and this is done using a flashback query that requires no locks. However, in some cases it may be desirable to avoid locks entirely which can be done by specifying 'none'. This mode is only safe to use if no schema changes are happening while the snapshot is taken." },
+    "snapshotLockTimeoutMs": { "index": 102, "kind": "property", "displayName": "Snapshot Lock Timeout Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
+    "snapshotMaxThreads": { "index": 103, "kind": "property", "displayName": "Snapshot Max Threads", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
+    "snapshotMode": { "index": 104, "kind": "property", "displayName": "Snapshot Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'always': The connector runs a snapshot every time that it starts. After the snapshot completes, the connector begins to stream changes from the redo logs.; 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the redo logs. 'initial_only': The connector performs a snapshot as it does for the 'initial' option, but after the connector completes the snapshot, it stops, and does not stream changes from the redo logs.; 'schema_only': If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures only the schema (table structures), but not any table data. After the snapshot completes, the connector begins to stream changes from the redo logs.; 'schema_only_recovery': The connector performs a snapshot that captures only the database schema history. The connector then transitions to streaming from the redo logs. Use this setting to restore a corrupted or lost database schema history topic. Do not use if the database schema was modified after the connector stopped." },
+    "snapshotModeConfigurationBasedSnapshotData": { "index": 105, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot Data", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not." },
+    "snapshotModeConfigurationBasedSnapshotOnDataError": { "index": 106, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot On Data Error", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotOnSchemaError": { "index": 107, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot On Schema Error", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotSchema": { "index": 108, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot Schema", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not." },
+    "snapshotModeConfigurationBasedStartStream": { "index": 109, "kind": "property", "displayName": "Snapshot Mode Configuration Based Start Stream", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot." },
+    "snapshotModeCustomName": { "index": 110, "kind": "property", "displayName": "Snapshot Mode Custom Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot." },
+    "snapshotSelectStatementOverrides": { "index": 111, "kind": "property", "displayName": "Snapshot Select Statement Overrides", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
+    "snapshotTablesOrderByRowCount": { "index": 112, "kind": "property", "displayName": "Snapshot Tables Order By Row Count", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
+    "sourceinfoStructMaker": { "index": 113, "kind": "property", "displayName": "Sourceinfo Struct Maker", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.oracle.OracleSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
+    "tableExcludeList": { "index": 114, "kind": "property", "displayName": "Table Exclude List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
+    "tableIncludeList": { "index": 115, "kind": "property", "displayName": "Table Include List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
+    "timePrecisionMode": { "index": 116, "kind": "property", "displayName": "Time Precision Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
+    "tombstonesOnDelete": { "index": 117, "kind": "property", "displayName": "Tombstones On Delete", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
+    "topicNamingStrategy": { "index": 118, "kind": "property", "displayName": "Topic Naming Strategy", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
+    "topicPrefix": { "index": 119, "kind": "property", "displayName": "Topic Prefix", "group": "oracle", "label": "consumer,oracle", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." },
+    "unavailableValuePlaceholder": { "index": 120, "kind": "property", "displayName": "Unavailable Value Placeholder", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium_unavailable_value", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the constant that will be provided by Debezium to indicate that the original value is unavailable and not provided by the database." }
   },
   "headers": {
     "CamelDebeziumSourceMetadata": { "index": 0, "kind": "header", "displayName": "", "group": "consumer", "label": "", "required": false, "javaType": "Map<String, Object>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The metadata about the source event, for example table name, database name, log position, etc, please refer to the Debezium documentation for more info.", "constantName": "org.apache.camel.component.debezium.DebeziumConstants#HEADER_SOURCE_METADATA" },
@@ -162,35 +170,35 @@
     "bridgeErrorHandler": { "index": 12, "kind": "parameter", "displayName": "Bridge Error Handler", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions (if possible) occurred while the Camel consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. Important: This is only possible if the 3rd party component allows Camel to be alerted if an exception was thrown. Some components handle this internally only, and therefore bridgeErrorHandler is not possible. In other situations we may improve the Camel component to hook into the 3rd party component and make this possible for future releases. 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." },
     "exceptionHandler": { "index": 13, "kind": "parameter", "displayName": "Exception Handler", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "object", "javaType": "org.apache.camel.spi.ExceptionHandler", "optionalPrefix": "consumer.", "deprecated": false, "autowired": false, "secret": false, "description": "To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the consumer will deal with exceptions, that will be logged at WARN or ERROR level and ignored." },
     "exchangePattern": { "index": 14, "kind": "parameter", "displayName": "Exchange Pattern", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "object", "javaType": "org.apache.camel.ExchangePattern", "enum": [ "InOnly", "InOut" ], "deprecated": false, "autowired": false, "secret": false, "description": "Sets the exchange pattern when the consumer creates an exchange." },
-    "binaryHandlingMode": { "index": 15, "kind": "parameter", "displayName": "Binary Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "bytes", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how binary (blob, binary, etc.) columns should be represented in change events, including: 'bytes' represents binary data as byte array (default); 'base64' represents binary data as base64-encoded string; 'base64-url-safe' represents binary data as base64-url-safe-encoded string; 'hex' represents binary data as hex-encoded (base16) string" },
-    "columnExcludeList": { "index": 16, "kind": "parameter", "displayName": "Column Exclude List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Regular expressions matching columns to exclude from change events" },
-    "columnIncludeList": { "index": 17, "kind": "parameter", "displayName": "Column Include List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Regular expressions matching columns to include in change events" },
-    "columnPropagateSourceType": { "index": 18, "kind": "parameter", "displayName": "Column Propagate Source Type", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions matching fully-qualified names of columns that adds the columns original type and original length as parameters to the corresponding field schemas in the emitted change records." },
-    "converters": { "index": 19, "kind": "parameter", "displayName": "Converters", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of custom converters that would be used instead of default ones. The converters are defined using '.type' config option and configured using options '.'" },
-    "customMetricTags": { "index": 20, "kind": "parameter", "displayName": "Custom Metric Tags", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The custom metric tags will accept key-value pairs to customize the MBean object name which should be appended the end of regular name, each key would represent a tag for the MBean object name, and the corresponding value would be the value of that tag the key is. For example: k1=v1,k2=v2" },
-    "databaseConnectionAdapter": { "index": 21, "kind": "parameter", "displayName": "Database Connection Adapter", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "LogMiner", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The adapter to use when capturing changes from the database. Options include: 'logminer': (the default) to capture changes using native Oracle LogMiner; 'xstream' to capture changes using Oracle XStreams" },
-    "databaseDbname": { "index": 22, "kind": "parameter", "displayName": "Database Dbname", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the database from which the connector should capture changes" },
-    "databaseHostname": { "index": 23, "kind": "parameter", "displayName": "Database Hostname", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Resolvable hostname or IP address of the database server." },
-    "databaseOutServerName": { "index": 24, "kind": "parameter", "displayName": "Database Out Server Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Name of the XStream Out server to connect to." },
-    "databasePassword": { "index": 25, "kind": "parameter", "displayName": "Database Password", "group": "oracle", "label": "consumer,oracle", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Password of the database user to be used when connecting to the database." },
-    "databasePdbName": { "index": 26, "kind": "parameter", "displayName": "Database Pdb Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Name of the pluggable database when working with a multi-tenant set-up. The CDB name must be given via database.dbname in this case." },
-    "databasePort": { "index": 27, "kind": "parameter", "displayName": "Database Port", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1528, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Port of the database server." },
-    "databaseUrl": { "index": 28, "kind": "parameter", "displayName": "Database Url", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Complete JDBC URL as an alternative to specifying hostname, port and database provided as a way to support alternative connection scenarios." },
-    "databaseUser": { "index": 29, "kind": "parameter", "displayName": "Database User", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Name of the database user to be used when connecting to the database." },
-    "datatypePropagateSourceType": { "index": 30, "kind": "parameter", "displayName": "Datatype Propagate Source Type", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions matching the database-specific data type names that adds the data type's original type and original length as parameters to the corresponding field schemas in the emitted change records." },
-    "decimalHandlingMode": { "index": 31, "kind": "parameter", "displayName": "Decimal Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "precise", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how DECIMAL and NUMERIC columns should be represented in change events, including: 'precise' (the default) uses java.math.BigDecimal to represent values, which are encoded in the change events using a binary representation and Kafka Connect's 'org.apache.kafka.connect.data.Decimal' type; 'string' uses string to represent values; 'double' represents values using Java's 'double', which may not offer the precision but will be far easier to use in consumers." },
-    "errorsMaxRetries": { "index": 32, "kind": "parameter", "displayName": "Errors Max Retries", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of retries on connection errors before failing (-1 = no limit, 0 = disabled, 0 = num of retries)." },
-    "eventProcessingFailureHandlingMode": { "index": 33, "kind": "parameter", "displayName": "Event Processing Failure Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "fail", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how failures during processing of events (i.e. when encountering a corrupted event) should be handled, including: 'fail' (the default) an exception indicating the problematic event and its position is raised, causing the connector to be stopped; 'warn' the problematic event and its position will be logged and the event will be skipped; 'ignore' the problematic event will be skipped." },
-    "heartbeatActionQuery": { "index": 34, "kind": "parameter", "displayName": "Heartbeat Action Query", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The query executed with every heartbeat." },
-    "heartbeatIntervalMs": { "index": 35, "kind": "parameter", "displayName": "Heartbeat Interval Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Length of an interval in milli-seconds in in which the connector periodically sends heartbeat messages to a heartbeat topic. Use 0 to disable heartbeat messages. Disabled by default." },
-    "heartbeatTopicsPrefix": { "index": 36, "kind": "parameter", "displayName": "Heartbeat Topics Prefix", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium-heartbeat", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The prefix that is used to name heartbeat topics.Defaults to __debezium-heartbeat." },
-    "includeSchemaChanges": { "index": 37, "kind": "parameter", "displayName": "Include Schema Changes", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector should publish changes in the database schema to a Kafka topic with the same name as the database server ID. Each schema change will be recorded using a key that contains the database name and whose value include logical description of the new schema and optionally the DDL statement(s). The default is 'true'. This is independent of how the connector internally records database schema history." },
-    "includeSchemaComments": { "index": 38, "kind": "parameter", "displayName": "Include Schema Comments", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector parse table and column's comment to metadata object. Note: Enable this option will bring the implications on memory usage. The number and size of ColumnImpl objects is what largely impacts how much memory is consumed by the Debezium connectors, and adding a String to each of them can potentially be quite heavy. The default is 'false'." },
-    "incrementalSnapshotWatermarkingStrategy": { "index": 39, "kind": "parameter", "displayName": "Incremental Snapshot Watermarking Strategy", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "INSERT_INSERT", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the strategy used for watermarking during an incremental snapshot: 'insert_insert' both open and close signal is written into signal data collection (default); 'insert_delete' only open signal is written on signal data collection, the close will delete the relative open signal;" },
-    "intervalHandlingMode": { "index": 40, "kind": "parameter", "displayName": "Interval Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "numeric", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how INTERVAL columns should be represented in change events, including: 'string' represents values as an exact ISO formatted string; 'numeric' (default) represents values using the inexact conversion into microseconds" },
-    "lobEnabled": { "index": 41, "kind": "parameter", "displayName": "Lob Enabled", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When set to 'false', the default, LOB fields will not be captured nor emitted. When set to 'true', the connector will capture LOB fields and emit changes for those fields like any other column type." },
-    "logMiningArchiveDestinationName": { "index": 42, "kind": "parameter", "displayName": "Log Mining Archive Destination Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Sets the specific archive log destination as the source for reading archive logs.When not set, the connector will automatically select the first LOCAL and VALID destination." },
-    "logMiningArchiveLogHours": { "index": 43, "kind": "parameter", "displayName": "Log Mining Archive Log Hours", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The number of hours in the past from SYSDATE to mine archive logs. Using 0 mines all available archive logs" },
+    "archiveDestinationName": { "index": 15, "kind": "parameter", "displayName": "Archive Destination Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Sets the specific archive log destination as the source for reading archive logs.When not set, the connector will automatically select the first LOCAL and VALID destination." },
+    "archiveLogHours": { "index": 16, "kind": "parameter", "displayName": "Archive Log Hours", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The number of hours in the past from SYSDATE to mine archive logs. Using 0 mines all available archive logs" },
+    "binaryHandlingMode": { "index": 17, "kind": "parameter", "displayName": "Binary Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "bytes", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how binary (blob, binary, etc.) columns should be represented in change events, including: 'bytes' represents binary data as byte array (default); 'base64' represents binary data as base64-encoded string; 'base64-url-safe' represents binary data as base64-url-safe-encoded string; 'hex' represents binary data as hex-encoded (base16) string" },
+    "columnExcludeList": { "index": 18, "kind": "parameter", "displayName": "Column Exclude List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Regular expressions matching columns to exclude from change events" },
+    "columnIncludeList": { "index": 19, "kind": "parameter", "displayName": "Column Include List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Regular expressions matching columns to include in change events" },
+    "columnPropagateSourceType": { "index": 20, "kind": "parameter", "displayName": "Column Propagate Source Type", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions matching fully-qualified names of columns that adds the columns original type and original length as parameters to the corresponding field schemas in the emitted change records." },
+    "converters": { "index": 21, "kind": "parameter", "displayName": "Converters", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of custom converters that would be used instead of default ones. The converters are defined using '.type' config option and configured using options '.'" },
+    "customMetricTags": { "index": 22, "kind": "parameter", "displayName": "Custom Metric Tags", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The custom metric tags will accept key-value pairs to customize the MBean object name which should be appended the end of regular name, each key would represent a tag for the MBean object name, and the corresponding value would be the value of that tag the key is. For example: k1=v1,k2=v2" },
+    "databaseConnectionAdapter": { "index": 23, "kind": "parameter", "displayName": "Database Connection Adapter", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "LogMiner", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The adapter to use when capturing changes from the database. Options include: 'logminer': (the default) to capture changes using native Oracle LogMiner; 'xstream' to capture changes using Oracle XStreams" },
+    "databaseDbname": { "index": 24, "kind": "parameter", "displayName": "Database Dbname", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the database from which the connector should capture changes" },
+    "databaseHostname": { "index": 25, "kind": "parameter", "displayName": "Database Hostname", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Resolvable hostname or IP address of the database server." },
+    "databaseOutServerName": { "index": 26, "kind": "parameter", "displayName": "Database Out Server Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Name of the XStream Out server to connect to." },
+    "databasePassword": { "index": 27, "kind": "parameter", "displayName": "Database Password", "group": "oracle", "label": "consumer,oracle", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Password of the database user to be used when connecting to the database." },
+    "databasePdbName": { "index": 28, "kind": "parameter", "displayName": "Database Pdb Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Name of the pluggable database when working with a multi-tenant set-up. The CDB name must be given via database.dbname in this case." },
+    "databasePort": { "index": 29, "kind": "parameter", "displayName": "Database Port", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1528, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Port of the database server." },
+    "databaseUrl": { "index": 30, "kind": "parameter", "displayName": "Database Url", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Complete JDBC URL as an alternative to specifying hostname, port and database provided as a way to support alternative connection scenarios." },
+    "databaseUser": { "index": 31, "kind": "parameter", "displayName": "Database User", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Name of the database user to be used when connecting to the database." },
+    "datatypePropagateSourceType": { "index": 32, "kind": "parameter", "displayName": "Datatype Propagate Source Type", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions matching the database-specific data type names that adds the data type's original type and original length as parameters to the corresponding field schemas in the emitted change records." },
+    "decimalHandlingMode": { "index": 33, "kind": "parameter", "displayName": "Decimal Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "precise", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how DECIMAL and NUMERIC columns should be represented in change events, including: 'precise' (the default) uses java.math.BigDecimal to represent values, which are encoded in the change events using a binary representation and Kafka Connect's 'org.apache.kafka.connect.data.Decimal' type; 'string' uses string to represent values; 'double' represents values using Java's 'double', which may not offer the precision but will be far easier to use in consumers." },
+    "errorsMaxRetries": { "index": 34, "kind": "parameter", "displayName": "Errors Max Retries", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of retries on connection errors before failing (-1 = no limit, 0 = disabled, 0 = num of retries)." },
+    "eventProcessingFailureHandlingMode": { "index": 35, "kind": "parameter", "displayName": "Event Processing Failure Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "fail", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how failures during processing of events (i.e. when encountering a corrupted event) should be handled, including: 'fail' (the default) an exception indicating the problematic event and its position is raised, causing the connector to be stopped; 'warn' the problematic event and its position will be logged and the event will be skipped; 'ignore' the problematic event will be skipped." },
+    "heartbeatActionQuery": { "index": 36, "kind": "parameter", "displayName": "Heartbeat Action Query", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The query executed with every heartbeat." },
+    "heartbeatIntervalMs": { "index": 37, "kind": "parameter", "displayName": "Heartbeat Interval Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Length of an interval in milli-seconds in in which the connector periodically sends heartbeat messages to a heartbeat topic. Use 0 to disable heartbeat messages. Disabled by default." },
+    "heartbeatTopicsPrefix": { "index": 38, "kind": "parameter", "displayName": "Heartbeat Topics Prefix", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium-heartbeat", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The prefix that is used to name heartbeat topics.Defaults to __debezium-heartbeat." },
+    "includeSchemaChanges": { "index": 39, "kind": "parameter", "displayName": "Include Schema Changes", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector should publish changes in the database schema to a Kafka topic with the same name as the database server ID. Each schema change will be recorded using a key that contains the database name and whose value include logical description of the new schema and optionally the DDL statement(s). The default is 'true'. This is independent of how the connector internally records database schema history." },
+    "includeSchemaComments": { "index": 40, "kind": "parameter", "displayName": "Include Schema Comments", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector parse table and column's comment to metadata object. Note: Enable this option will bring the implications on memory usage. The number and size of ColumnImpl objects is what largely impacts how much memory is consumed by the Debezium connectors, and adding a String to each of them can potentially be quite heavy. The default is 'false'." },
+    "incrementalSnapshotWatermarkingStrategy": { "index": 41, "kind": "parameter", "displayName": "Incremental Snapshot Watermarking Strategy", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "INSERT_INSERT", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the strategy used for watermarking during an incremental snapshot: 'insert_insert' both open and close signal is written into signal data collection (default); 'insert_delete' only open signal is written on signal data collection, the close will delete the relative open signal;" },
+    "intervalHandlingMode": { "index": 42, "kind": "parameter", "displayName": "Interval Handling Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "numeric", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how INTERVAL columns should be represented in change events, including: 'string' represents values as an exact ISO formatted string; 'numeric' (default) represents values using the inexact conversion into microseconds" },
+    "lobEnabled": { "index": 43, "kind": "parameter", "displayName": "Lob Enabled", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When set to 'false', the default, LOB fields will not be captured nor emitted. When set to 'true', the connector will capture LOB fields and emit changes for those fields like any other column type." },
     "logMiningArchiveLogOnlyMode": { "index": 44, "kind": "parameter", "displayName": "Log Mining Archive Log Only Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When set to 'false', the default, the connector will mine both archive log and redo logs to emit change events. When set to 'true', the connector will only mine archive logs. There are circumstances where its advantageous to only mine archive logs and accept latency in event emission due to frequent revolving redo logs." },
     "logMiningArchiveLogOnlyScnPollIntervalMs": { "index": 45, "kind": "parameter", "displayName": "Log Mining Archive Log Only Scn Poll Interval Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The interval in milliseconds to wait between polls checking to see if the SCN is in the archive logs." },
     "logMiningBatchSizeDefault": { "index": 46, "kind": "parameter", "displayName": "Log Mining Batch Size Default", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 20000, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The starting SCN interval size that the connector will use for reading data from redo\/archive logs." },
@@ -205,61 +213,69 @@
     "logMiningBufferTransactionEventsThreshold": { "index": 55, "kind": "parameter", "displayName": "Log Mining Buffer Transaction Events Threshold", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The number of events a transaction can include before the transaction is discarded. This is useful for managing buffer memory and\/or space when dealing with very large transactions. Defaults to 0, meaning that no threshold is applied and transactions can have unlimited events." },
     "logMiningBufferType": { "index": 56, "kind": "parameter", "displayName": "Log Mining Buffer Type", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "memory", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The buffer type controls how the connector manages buffering transaction data. memory - Uses the JVM process' heap to buffer all transaction data. infinispan_embedded - This option uses an embedded Infinispan cache to buffer transaction data and persist it to disk. infinispan_remote - This option uses a remote Infinispan cluster to buffer transaction data and persist it to disk." },
     "logMiningFlushTableName": { "index": 57, "kind": "parameter", "displayName": "Log Mining Flush Table Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "LOG_MINING_FLUSH", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the flush table used by the connector, defaults to LOG_MINING_FLUSH." },
-    "logMiningQueryFilterMode": { "index": 58, "kind": "parameter", "displayName": "Log Mining Query Filter Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specifies how the filter configuration is applied to the LogMiner database query. none - The query does not apply any schema or table filters, all filtering is at runtime by the connector. in - The query uses SQL in-clause expressions to specify the schema or table filters. regex - The query uses Oracle REGEXP_LIKE expressions to specify the schema or table filters." },
-    "logMiningRestartConnection": { "index": 59, "kind": "parameter", "displayName": "Log Mining Restart Connection", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Debezium opens a database connection and keeps that connection open throughout the entire streaming phase. In some situations, this can lead to excessive SGA memory usage. By setting this option to 'true' (the default is 'false'), the connector will close and re-open a database connection after every detected log switch or if the log.mining.session.max.ms has been reached." },
-    "logMiningScnGapDetectionGapSizeMin": { "index": 60, "kind": "parameter", "displayName": "Log Mining Scn Gap Detection Gap Size Min", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1000000, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Used for SCN gap detection, if the difference between current SCN and previous end SCN is bigger than this value, and the time difference of current SCN and previous end SCN is smaller than log.mining.scn.gap.detection.time.interval.max.ms, consider it a SCN gap." },
-    "logMiningScnGapDetectionTimeIntervalMaxMs": { "index": 61, "kind": "parameter", "displayName": "Log Mining Scn Gap Detection Time Interval Max Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "20s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Used for SCN gap detection, if the difference between current SCN and previous end SCN is bigger than log.mining.scn.gap.detection.gap.size.min, and the time difference of current SCN and previous end SCN is smaller than this value, consider it a SCN gap." },
-    "logMiningSessionMaxMs": { "index": 62, "kind": "parameter", "displayName": "Log Mining Session Max Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of milliseconds that a LogMiner session lives for before being restarted. Defaults to 0 (indefinite until a log switch occurs)" },
-    "logMiningSleepTimeDefaultMs": { "index": 63, "kind": "parameter", "displayName": "Log Mining Sleep Time Default Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The amount of time that the connector will sleep after reading data from redo\/archive logs and before starting reading data again. Value is in milliseconds." },
-    "logMiningSleepTimeIncrementMs": { "index": 64, "kind": "parameter", "displayName": "Log Mining Sleep Time Increment Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "200ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum amount of time that the connector will use to tune the optimal sleep time when reading data from LogMiner. Value is in milliseconds." },
-    "logMiningSleepTimeMaxMs": { "index": 65, "kind": "parameter", "displayName": "Log Mining Sleep Time Max Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "3s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum amount of time that the connector will sleep after reading data from redo\/archive logs and before starting reading data again. Value is in milliseconds." },
-    "logMiningSleepTimeMinMs": { "index": 66, "kind": "parameter", "displayName": "Log Mining Sleep Time Min Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The minimum amount of time that the connector will sleep after reading data from redo\/archive logs and before starting reading data again. Value is in milliseconds." },
-    "logMiningStrategy": { "index": 67, "kind": "parameter", "displayName": "Log Mining Strategy", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "redo_log_catalog", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "There are strategies: Online catalog with faster mining but no captured DDL. Another - with data dictionary loaded into REDO LOG files" },
-    "logMiningTransactionRetentionMs": { "index": 68, "kind": "parameter", "displayName": "Log Mining Transaction Retention Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Duration in milliseconds to keep long running transactions in transaction buffer between log mining sessions. By default, all transactions are retained." },
-    "logMiningUsernameExcludeList": { "index": 69, "kind": "parameter", "displayName": "Log Mining Username Exclude List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Comma separated list of usernames to exclude from LogMiner query." },
-    "logMiningUsernameIncludeList": { "index": 70, "kind": "parameter", "displayName": "Log Mining Username Include List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Comma separated list of usernames to include from LogMiner query." },
-    "maxBatchSize": { "index": 71, "kind": "parameter", "displayName": "Max Batch Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 2048, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of each batch of source records. Defaults to 2048." },
-    "maxQueueSize": { "index": 72, "kind": "parameter", "displayName": "Max Queue Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 8192, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue for change events read from the database log but not yet recorded or forwarded. Defaults to 8192, and should always be larger than the maximum batch size." },
-    "maxQueueSizeInBytes": { "index": 73, "kind": "parameter", "displayName": "Max Queue Size In Bytes", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue in bytes for change events read from the database log but not yet recorded or forwarded. Defaults to 0. Mean the feature is not enabled" },
-    "messageKeyColumns": { "index": 74, "kind": "parameter", "displayName": "Message Key Columns", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A semicolon-separated list of expressions that match fully-qualified tables and column(s) to be used as message key. Each expression must match the pattern ':', where the table names could be defined as (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connector, and the key columns are a comma-separated list of columns representing the custom key. For any table without an explicit key configuration the table's primary key column(s) will be used as message key. Example: dbserver1.inventory.orderlines:orderId,orderLineId;dbserver1.inventory.orders:id" },
-    "notificationEnabledChannels": { "index": 75, "kind": "parameter", "displayName": "Notification Enabled Channels", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of notification channels names that are enabled." },
-    "notificationSinkTopicName": { "index": 76, "kind": "parameter", "displayName": "Notification Sink Topic Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the topic for the notifications. This is required in case 'sink' is in the list of enabled channels" },
-    "openlogreplicatorHost": { "index": 77, "kind": "parameter", "displayName": "Openlogreplicator Host", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The hostname of the OpenLogReplicator network service" },
-    "openlogreplicatorPort": { "index": 78, "kind": "parameter", "displayName": "Openlogreplicator Port", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The port of the OpenLogReplicator network service" },
-    "openlogreplicatorSource": { "index": 79, "kind": "parameter", "displayName": "Openlogreplicator Source", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The configured logical source name in the OpenLogReplicator configuration that is to stream changes" },
-    "pollIntervalMs": { "index": 80, "kind": "parameter", "displayName": "Poll Interval Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "500ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait for new change events to appear after receiving no events, given in milliseconds. Defaults to 500 ms." },
-    "postProcessors": { "index": 81, "kind": "parameter", "displayName": "Post Processors", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of post processors. The processors are defined using '.type' config option and configured using options ''" },
-    "provideTransactionMetadata": { "index": 82, "kind": "parameter", "displayName": "Provide Transaction Metadata", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Enables transaction metadata extraction together with event counting" },
-    "queryFetchSize": { "index": 83, "kind": "parameter", "displayName": "Query Fetch Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 10000, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while streaming. A value of '0' uses the default JDBC fetch size, defaults to '2000'." },
-    "racNodes": { "index": 84, "kind": "parameter", "displayName": "Rac Nodes", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of RAC node hostnames or ip addresses" },
-    "retriableRestartConnectorWaitMs": { "index": 85, "kind": "parameter", "displayName": "Retriable Restart Connector Wait Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait before restarting connector after retriable exception occurs. Defaults to 10000ms." },
-    "schemaHistoryInternal": { "index": 86, "kind": "parameter", "displayName": "Schema History Internal", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.storage.kafka.history.KafkaSchemaHistory", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SchemaHistory class that should be used to store and recover database schema changes. The configuration properties for the history are prefixed with the 'schema.history.internal.' string." },
-    "schemaHistoryInternalFileFilename": { "index": 87, "kind": "parameter", "displayName": "Schema History Internal File Filename", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The path to the file that will be used to record the database schema history" },
-    "schemaHistoryInternalSkipUnparseableDdl": { "index": 88, "kind": "parameter", "displayName": "Schema History Internal Skip Unparseable Ddl", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the action Debezium will take when it meets a DDL statement in binlog, that it cannot parse.By default the connector will stop operating but by changing the setting it can ignore the statements which it cannot parse. If skipping is enabled then Debezium can miss metadata changes." },
-    "schemaHistoryInternalStoreOnlyCapturedDatabasesDdl": { "index": 89, "kind": "parameter", "displayName": "Schema History Internal Store Only Captured Databases Ddl", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (true) only DDL that manipulates a table from captured schema\/database will be stored. If set to false, then Debezium will store all incoming DDL statements." },
-    "schemaHistoryInternalStoreOnlyCapturedTablesDdl": { "index": 90, "kind": "parameter", "displayName": "Schema History Internal Store Only Captured Tables Ddl", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (false) Debezium will store all incoming DDL statements. If set to true, then only DDL that manipulates a captured table will be stored." },
-    "schemaNameAdjustmentMode": { "index": 91, "kind": "parameter", "displayName": "Schema Name Adjustment Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how schema names should be adjusted for compatibility with the message converter used by the connector, including: 'avro' replaces the characters that cannot be used in the Avro type name with underscore; 'avro_unicode' replaces the underscore or characters that cannot be used in the Avro type name with corresponding unicode like _uxxxx. Note: _ is an escape sequence like backslash in Java;'none' does not apply any adjustment (default)" },
-    "signalDataCollection": { "index": 92, "kind": "parameter", "displayName": "Signal Data Collection", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the data collection that is used to send signals\/commands to Debezium. Signaling is disabled when not set." },
-    "signalEnabledChannels": { "index": 93, "kind": "parameter", "displayName": "Signal Enabled Channels", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "source", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of channels names that are enabled. Source channel is enabled by default" },
-    "signalPollIntervalMs": { "index": 94, "kind": "parameter", "displayName": "Signal Poll Interval Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new signals in registered channels, given in milliseconds. Defaults to 5 seconds." },
-    "skippedOperations": { "index": 95, "kind": "parameter", "displayName": "Skipped Operations", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "t", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The comma-separated list of operations to skip during streaming, defined as: 'c' for inserts\/create; 'u' for updates; 'd' for deletes, 't' for truncates, and 'none' to indicate nothing skipped. By default, only truncate operations will be skipped." },
-    "snapshotDelayMs": { "index": 96, "kind": "parameter", "displayName": "Snapshot Delay Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
-    "snapshotEnhancePredicateScn": { "index": 97, "kind": "parameter", "displayName": "Snapshot Enhance Predicate Scn", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A token to replace on snapshot predicate template" },
-    "snapshotFetchSize": { "index": 98, "kind": "parameter", "displayName": "Snapshot Fetch Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
-    "snapshotIncludeCollectionList": { "index": 99, "kind": "parameter", "displayName": "Snapshot Include Collection List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
-    "snapshotLockingMode": { "index": 100, "kind": "parameter", "displayName": "Snapshot Locking Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "shared", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls how the connector holds locks on tables while performing the schema snapshot. The default is 'shared', which means the connector will hold a table lock that prevents exclusive table access for just the initial portion of the snapshot while the database schemas and other metadata are being read. The remaining work in a snapshot involves selecting all rows from each table, and this is done using a flashback query that requires no locks. However, in some cases it may be desirable to avoid locks entirely which can be done by specifying 'none'. This mode is only safe to use if no schema changes are happening while the snapshot is taken." },
-    "snapshotLockTimeoutMs": { "index": 101, "kind": "parameter", "displayName": "Snapshot Lock Timeout Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
-    "snapshotMaxThreads": { "index": 102, "kind": "parameter", "displayName": "Snapshot Max Threads", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
-    "snapshotMode": { "index": 103, "kind": "parameter", "displayName": "Snapshot Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'always': The connector runs a snapshot every time that it starts. After the snapshot completes, the connector begins to stream changes from the redo logs.; 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the redo logs. 'initial_only': The connector performs a snapshot as it does for the 'initial' option, but after the connector completes the snapshot, it stops, and does not stream changes from the redo logs.; 'schema_only': If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures only the schema (table structures), but not any table data. After the snapshot completes, the connector begins to stream changes from the redo logs.; 'schema_only_recovery': The connector performs a snapshot that captures only the database schema history. The connector then transitions to streaming from the redo logs. Use this setting to restore a corrupted or lost database schema history topic. Do not use if the database schema was modified after the connector stopped." },
-    "snapshotSelectStatementOverrides": { "index": 104, "kind": "parameter", "displayName": "Snapshot Select Statement Overrides", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
-    "snapshotTablesOrderByRowCount": { "index": 105, "kind": "parameter", "displayName": "Snapshot Tables Order By Row Count", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
-    "sourceinfoStructMaker": { "index": 106, "kind": "parameter", "displayName": "Sourceinfo Struct Maker", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.oracle.OracleSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
-    "tableExcludeList": { "index": 107, "kind": "parameter", "displayName": "Table Exclude List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
-    "tableIncludeList": { "index": 108, "kind": "parameter", "displayName": "Table Include List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
-    "timePrecisionMode": { "index": 109, "kind": "parameter", "displayName": "Time Precision Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
-    "tombstonesOnDelete": { "index": 110, "kind": "parameter", "displayName": "Tombstones On Delete", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
-    "topicNamingStrategy": { "index": 111, "kind": "parameter", "displayName": "Topic Naming Strategy", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
-    "topicPrefix": { "index": 112, "kind": "parameter", "displayName": "Topic Prefix", "group": "oracle", "label": "consumer,oracle", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." },
-    "unavailableValuePlaceholder": { "index": 113, "kind": "parameter", "displayName": "Unavailable Value Placeholder", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium_unavailable_value", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the constant that will be provided by Debezium to indicate that the original value is unavailable and not provided by the database." }
+    "logMiningIncludeRedoSql": { "index": 58, "kind": "parameter", "displayName": "Log Mining Include Redo Sql", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When enabled, the transaction log REDO SQL will be included in the source information block." },
+    "logMiningQueryFilterMode": { "index": 59, "kind": "parameter", "displayName": "Log Mining Query Filter Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specifies how the filter configuration is applied to the LogMiner database query. none - The query does not apply any schema or table filters, all filtering is at runtime by the connector. in - The query uses SQL in-clause expressions to specify the schema or table filters. regex - The query uses Oracle REGEXP_LIKE expressions to specify the schema or table filters." },
+    "logMiningRestartConnection": { "index": 60, "kind": "parameter", "displayName": "Log Mining Restart Connection", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Debezium opens a database connection and keeps that connection open throughout the entire streaming phase. In some situations, this can lead to excessive SGA memory usage. By setting this option to 'true' (the default is 'false'), the connector will close and re-open a database connection after every detected log switch or if the log.mining.session.max.ms has been reached." },
+    "logMiningScnGapDetectionGapSizeMin": { "index": 61, "kind": "parameter", "displayName": "Log Mining Scn Gap Detection Gap Size Min", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1000000, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Used for SCN gap detection, if the difference between current SCN and previous end SCN is bigger than this value, and the time difference of current SCN and previous end SCN is smaller than log.mining.scn.gap.detection.time.interval.max.ms, consider it a SCN gap." },
+    "logMiningScnGapDetectionTimeIntervalMaxMs": { "index": 62, "kind": "parameter", "displayName": "Log Mining Scn Gap Detection Time Interval Max Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "20s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Used for SCN gap detection, if the difference between current SCN and previous end SCN is bigger than log.mining.scn.gap.detection.gap.size.min, and the time difference of current SCN and previous end SCN is smaller than this value, consider it a SCN gap." },
+    "logMiningSessionMaxMs": { "index": 63, "kind": "parameter", "displayName": "Log Mining Session Max Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of milliseconds that a LogMiner session lives for before being restarted. Defaults to 0 (indefinite until a log switch occurs)" },
+    "logMiningSleepTimeDefaultMs": { "index": 64, "kind": "parameter", "displayName": "Log Mining Sleep Time Default Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The amount of time that the connector will sleep after reading data from redo\/archive logs and before starting reading data again. Value is in milliseconds." },
+    "logMiningSleepTimeIncrementMs": { "index": 65, "kind": "parameter", "displayName": "Log Mining Sleep Time Increment Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "200ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum amount of time that the connector will use to tune the optimal sleep time when reading data from LogMiner. Value is in milliseconds." },
+    "logMiningSleepTimeMaxMs": { "index": 66, "kind": "parameter", "displayName": "Log Mining Sleep Time Max Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "3s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum amount of time that the connector will sleep after reading data from redo\/archive logs and before starting reading data again. Value is in milliseconds." },
+    "logMiningSleepTimeMinMs": { "index": 67, "kind": "parameter", "displayName": "Log Mining Sleep Time Min Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The minimum amount of time that the connector will sleep after reading data from redo\/archive logs and before starting reading data again. Value is in milliseconds." },
+    "logMiningStrategy": { "index": 68, "kind": "parameter", "displayName": "Log Mining Strategy", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "redo_log_catalog", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "There are strategies: Online catalog with faster mining but no captured DDL. Another - with data dictionary loaded into REDO LOG files" },
+    "logMiningTransactionRetentionMs": { "index": 69, "kind": "parameter", "displayName": "Log Mining Transaction Retention Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Duration in milliseconds to keep long running transactions in transaction buffer between log mining sessions. By default, all transactions are retained." },
+    "logMiningUsernameExcludeList": { "index": 70, "kind": "parameter", "displayName": "Log Mining Username Exclude List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Comma separated list of usernames to exclude from LogMiner query." },
+    "logMiningUsernameIncludeList": { "index": 71, "kind": "parameter", "displayName": "Log Mining Username Include List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Comma separated list of usernames to include from LogMiner query." },
+    "maxBatchSize": { "index": 72, "kind": "parameter", "displayName": "Max Batch Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 2048, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of each batch of source records. Defaults to 2048." },
+    "maxQueueSize": { "index": 73, "kind": "parameter", "displayName": "Max Queue Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 8192, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue for change events read from the database log but not yet recorded or forwarded. Defaults to 8192, and should always be larger than the maximum batch size." },
+    "maxQueueSizeInBytes": { "index": 74, "kind": "parameter", "displayName": "Max Queue Size In Bytes", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue in bytes for change events read from the database log but not yet recorded or forwarded. Defaults to 0. Mean the feature is not enabled" },
+    "messageKeyColumns": { "index": 75, "kind": "parameter", "displayName": "Message Key Columns", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A semicolon-separated list of expressions that match fully-qualified tables and column(s) to be used as message key. Each expression must match the pattern ':', where the table names could be defined as (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connector, and the key columns are a comma-separated list of columns representing the custom key. For any table without an explicit key configuration the table's primary key column(s) will be used as message key. Example: dbserver1.inventory.orderlines:orderId,orderLineId;dbserver1.inventory.orders:id" },
+    "notificationEnabledChannels": { "index": 76, "kind": "parameter", "displayName": "Notification Enabled Channels", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of notification channels names that are enabled." },
+    "notificationSinkTopicName": { "index": 77, "kind": "parameter", "displayName": "Notification Sink Topic Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the topic for the notifications. This is required in case 'sink' is in the list of enabled channels" },
+    "openlogreplicatorHost": { "index": 78, "kind": "parameter", "displayName": "Openlogreplicator Host", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The hostname of the OpenLogReplicator network service" },
+    "openlogreplicatorPort": { "index": 79, "kind": "parameter", "displayName": "Openlogreplicator Port", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The port of the OpenLogReplicator network service" },
+    "openlogreplicatorSource": { "index": 80, "kind": "parameter", "displayName": "Openlogreplicator Source", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The configured logical source name in the OpenLogReplicator configuration that is to stream changes" },
+    "pollIntervalMs": { "index": 81, "kind": "parameter", "displayName": "Poll Interval Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "500ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait for new change events to appear after receiving no events, given in milliseconds. Defaults to 500 ms." },
+    "postProcessors": { "index": 82, "kind": "parameter", "displayName": "Post Processors", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of post processors. The processors are defined using '.type' config option and configured using options ''" },
+    "provideTransactionMetadata": { "index": 83, "kind": "parameter", "displayName": "Provide Transaction Metadata", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Enables transaction metadata extraction together with event counting" },
+    "queryFetchSize": { "index": 84, "kind": "parameter", "displayName": "Query Fetch Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 10000, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while streaming. A value of '0' uses the default JDBC fetch size, defaults to '2000'." },
+    "racNodes": { "index": 85, "kind": "parameter", "displayName": "Rac Nodes", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of RAC node hostnames or ip addresses" },
+    "retriableRestartConnectorWaitMs": { "index": 86, "kind": "parameter", "displayName": "Retriable Restart Connector Wait Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait before restarting connector after retriable exception occurs. Defaults to 10000ms." },
+    "schemaHistoryInternal": { "index": 87, "kind": "parameter", "displayName": "Schema History Internal", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.storage.kafka.history.KafkaSchemaHistory", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SchemaHistory class that should be used to store and recover database schema changes. The configuration properties for the history are prefixed with the 'schema.history.internal.' string." },
+    "schemaHistoryInternalFileFilename": { "index": 88, "kind": "parameter", "displayName": "Schema History Internal File Filename", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The path to the file that will be used to record the database schema history" },
+    "schemaHistoryInternalSkipUnparseableDdl": { "index": 89, "kind": "parameter", "displayName": "Schema History Internal Skip Unparseable Ddl", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the action Debezium will take when it meets a DDL statement in binlog, that it cannot parse.By default the connector will stop operating but by changing the setting it can ignore the statements which it cannot parse. If skipping is enabled then Debezium can miss metadata changes." },
+    "schemaHistoryInternalStoreOnlyCapturedDatabasesDdl": { "index": 90, "kind": "parameter", "displayName": "Schema History Internal Store Only Captured Databases Ddl", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (true) only DDL that manipulates a table from captured schema\/database will be stored. If set to false, then Debezium will store all incoming DDL statements." },
+    "schemaHistoryInternalStoreOnlyCapturedTablesDdl": { "index": 91, "kind": "parameter", "displayName": "Schema History Internal Store Only Captured Tables Ddl", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (false) Debezium will store all incoming DDL statements. If set to true, then only DDL that manipulates a captured table will be stored." },
+    "schemaNameAdjustmentMode": { "index": 92, "kind": "parameter", "displayName": "Schema Name Adjustment Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how schema names should be adjusted for compatibility with the message converter used by the connector, including: 'avro' replaces the characters that cannot be used in the Avro type name with underscore; 'avro_unicode' replaces the underscore or characters that cannot be used in the Avro type name with corresponding unicode like _uxxxx. Note: _ is an escape sequence like backslash in Java;'none' does not apply any adjustment (default)" },
+    "signalDataCollection": { "index": 93, "kind": "parameter", "displayName": "Signal Data Collection", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the data collection that is used to send signals\/commands to Debezium. Signaling is disabled when not set." },
+    "signalEnabledChannels": { "index": 94, "kind": "parameter", "displayName": "Signal Enabled Channels", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "source", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of channels names that are enabled. Source channel is enabled by default" },
+    "signalPollIntervalMs": { "index": 95, "kind": "parameter", "displayName": "Signal Poll Interval Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new signals in registered channels, given in milliseconds. Defaults to 5 seconds." },
+    "skippedOperations": { "index": 96, "kind": "parameter", "displayName": "Skipped Operations", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "t", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The comma-separated list of operations to skip during streaming, defined as: 'c' for inserts\/create; 'u' for updates; 'd' for deletes, 't' for truncates, and 'none' to indicate nothing skipped. By default, only truncate operations will be skipped." },
+    "snapshotDatabaseErrorsMaxRetries": { "index": 97, "kind": "parameter", "displayName": "Snapshot Database Errors Max Retries", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The number of attempts to retry database errors during snapshots before failing." },
+    "snapshotDelayMs": { "index": 98, "kind": "parameter", "displayName": "Snapshot Delay Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
+    "snapshotEnhancePredicateScn": { "index": 99, "kind": "parameter", "displayName": "Snapshot Enhance Predicate Scn", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A token to replace on snapshot predicate template" },
+    "snapshotFetchSize": { "index": 100, "kind": "parameter", "displayName": "Snapshot Fetch Size", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
+    "snapshotIncludeCollectionList": { "index": 101, "kind": "parameter", "displayName": "Snapshot Include Collection List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
+    "snapshotLockingMode": { "index": 102, "kind": "parameter", "displayName": "Snapshot Locking Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "shared", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls how the connector holds locks on tables while performing the schema snapshot. The default is 'shared', which means the connector will hold a table lock that prevents exclusive table access for just the initial portion of the snapshot while the database schemas and other metadata are being read. The remaining work in a snapshot involves selecting all rows from each table, and this is done using a flashback query that requires no locks. However, in some cases it may be desirable to avoid locks entirely which can be done by specifying 'none'. This mode is only safe to use if no schema changes are happening while the snapshot is taken." },
+    "snapshotLockTimeoutMs": { "index": 103, "kind": "parameter", "displayName": "Snapshot Lock Timeout Ms", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
+    "snapshotMaxThreads": { "index": 104, "kind": "parameter", "displayName": "Snapshot Max Threads", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
+    "snapshotMode": { "index": 105, "kind": "parameter", "displayName": "Snapshot Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'always': The connector runs a snapshot every time that it starts. After the snapshot completes, the connector begins to stream changes from the redo logs.; 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the redo logs. 'initial_only': The connector performs a snapshot as it does for the 'initial' option, but after the connector completes the snapshot, it stops, and does not stream changes from the redo logs.; 'schema_only': If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures only the schema (table structures), but not any table data. After the snapshot completes, the connector begins to stream changes from the redo logs.; 'schema_only_recovery': The connector performs a snapshot that captures only the database schema history. The connector then transitions to streaming from the redo logs. Use this setting to restore a corrupted or lost database schema history topic. Do not use if the database schema was modified after the connector stopped." },
+    "snapshotModeConfigurationBasedSnapshotData": { "index": 106, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot Data", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not." },
+    "snapshotModeConfigurationBasedSnapshotOnDataError": { "index": 107, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot On Data Error", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotOnSchemaError": { "index": 108, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot On Schema Error", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotSchema": { "index": 109, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot Schema", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not." },
+    "snapshotModeConfigurationBasedStartStream": { "index": 110, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Start Stream", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot." },
+    "snapshotModeCustomName": { "index": 111, "kind": "parameter", "displayName": "Snapshot Mode Custom Name", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot." },
+    "snapshotSelectStatementOverrides": { "index": 112, "kind": "parameter", "displayName": "Snapshot Select Statement Overrides", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
+    "snapshotTablesOrderByRowCount": { "index": 113, "kind": "parameter", "displayName": "Snapshot Tables Order By Row Count", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
+    "sourceinfoStructMaker": { "index": 114, "kind": "parameter", "displayName": "Sourceinfo Struct Maker", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.oracle.OracleSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
+    "tableExcludeList": { "index": 115, "kind": "parameter", "displayName": "Table Exclude List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
+    "tableIncludeList": { "index": 116, "kind": "parameter", "displayName": "Table Include List", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
+    "timePrecisionMode": { "index": 117, "kind": "parameter", "displayName": "Time Precision Mode", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
+    "tombstonesOnDelete": { "index": 118, "kind": "parameter", "displayName": "Tombstones On Delete", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
+    "topicNamingStrategy": { "index": 119, "kind": "parameter", "displayName": "Topic Naming Strategy", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
+    "topicPrefix": { "index": 120, "kind": "parameter", "displayName": "Topic Prefix", "group": "oracle", "label": "consumer,oracle", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." },
+    "unavailableValuePlaceholder": { "index": 121, "kind": "parameter", "displayName": "Unavailable Value Placeholder", "group": "oracle", "label": "consumer,oracle", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium_unavailable_value", "configurationClass": "org.apache.camel.component.debezium.configuration.OracleConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the constant that will be provided by Debezium to indicate that the original value is unavailable and not provided by the database." }
   }
 }
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-postgres.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-postgres.json
index a9452f1..3eeb4e0 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-postgres.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-postgres.json
@@ -101,26 +101,35 @@
     "slotName": { "index": 75, "kind": "property", "displayName": "Slot Name", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "debezium", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the Postgres logical decoding slot created for streaming changes from a plugin. Defaults to 'debezium" },
     "slotRetryDelayMs": { "index": 76, "kind": "property", "displayName": "Slot Retry Delay Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait between retry attempts when the connector fails to connect to a replication slot, given in milliseconds. Defaults to 10 seconds (10,000 ms)." },
     "slotStreamParams": { "index": 77, "kind": "property", "displayName": "Slot Stream Params", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Any optional parameters used by logical decoding plugin. Semi-colon separated. E.g. 'add-tables=public.table,public.table2;include-lsn=true'" },
-    "snapshotCustomClass": { "index": 78, "kind": "property", "displayName": "Snapshot Custom Class", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a fully qualified class name to load (via the default class loader). This class must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot and how to build queries." },
-    "snapshotDelayMs": { "index": 79, "kind": "property", "displayName": "Snapshot Delay Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
-    "snapshotFetchSize": { "index": 80, "kind": "property", "displayName": "Snapshot Fetch Size", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
-    "snapshotIncludeCollectionList": { "index": 81, "kind": "property", "displayName": "Snapshot Include Collection List", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
-    "snapshotLockTimeoutMs": { "index": 82, "kind": "property", "displayName": "Snapshot Lock Timeout Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
-    "snapshotMaxThreads": { "index": 83, "kind": "property", "displayName": "Snapshot Max Threads", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
-    "snapshotMode": { "index": 84, "kind": "property", "displayName": "Snapshot Mode", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'always': The connector runs a snapshot every time that it starts. After the snapshot completes, the connector begins to stream changes from the transaction log.; 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the transaction log. 'initial_only': The connector performs a snapshot as it does for the 'initial' option, but after the connector completes the snapshot, it stops, and does not stream changes from the transaction log.; 'never': The connector does not run a snapshot. Upon first startup, the connector immediately begins reading from the beginning of the transaction log. 'exported': This option is deprecated; use 'initial' instead.; 'custom': The connector loads a custom class to specify how the connector performs snapshots. For more information, see Custom snapshotter SPI in the PostgreSQL connector documentation." },
-    "snapshotSelectStatementOverrides": { "index": 85, "kind": "property", "displayName": "Snapshot Select Statement Overrides", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
-    "snapshotTablesOrderByRowCount": { "index": 86, "kind": "property", "displayName": "Snapshot Tables Order By Row Count", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
-    "sourceinfoStructMaker": { "index": 87, "kind": "property", "displayName": "Sourceinfo Struct Maker", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.postgresql.PostgresSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
-    "statusUpdateIntervalMs": { "index": 88, "kind": "property", "displayName": "Status Update Interval Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Frequency for sending replication connection status updates to the server, given in milliseconds. Defaults to 10 seconds (10,000 ms)." },
-    "tableExcludeList": { "index": 89, "kind": "property", "displayName": "Table Exclude List", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
-    "tableIgnoreBuiltin": { "index": 90, "kind": "property", "displayName": "Table Ignore Builtin", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
-    "tableIncludeList": { "index": 91, "kind": "property", "displayName": "Table Include List", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
-    "timePrecisionMode": { "index": 92, "kind": "property", "displayName": "Time Precision Mode", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
-    "tombstonesOnDelete": { "index": 93, "kind": "property", "displayName": "Tombstones On Delete", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
-    "topicNamingStrategy": { "index": 94, "kind": "property", "displayName": "Topic Naming Strategy", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
-    "topicPrefix": { "index": 95, "kind": "property", "displayName": "Topic Prefix", "group": "postgres", "label": "consumer,postgres", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." },
-    "unavailableValuePlaceholder": { "index": 96, "kind": "property", "displayName": "Unavailable Value Placeholder", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium_unavailable_value", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the constant that will be provided by Debezium to indicate that the original value is a toasted value not provided by the database. If starts with 'hex:' prefix it is expected that the rest of the string represents hexadecimal encoded octets." },
-    "xminFetchIntervalMs": { "index": 97, "kind": "property", "displayName": "Xmin Fetch Interval Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how often (in ms) the xmin will be fetched from the replication slot. This xmin value is exposed by the slot which gives a lower bound of where a new replication slot could start from. The lower the value, the more likely this value is to be the current 'true' value, but the bigger the performance cost. The bigger the value, the less likely this value is to be the current 'true' value, but the lower the performance penalty. The default is set to 0 ms, which disables tracking xmin." }
+    "snapshotDelayMs": { "index": 78, "kind": "property", "displayName": "Snapshot Delay Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
+    "snapshotFetchSize": { "index": 79, "kind": "property", "displayName": "Snapshot Fetch Size", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
+    "snapshotIncludeCollectionList": { "index": 80, "kind": "property", "displayName": "Snapshot Include Collection List", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
+    "snapshotLockingMode": { "index": 81, "kind": "property", "displayName": "Snapshot Locking Mode", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls how the connector holds locks on tables while performing the schema snapshot. The 'shared' which means the connector will hold a table lock that prevents exclusive table access for just the initial portion of the snapshot while the database schemas and other metadata are being read. The remaining work in a snapshot involves selecting all rows from each table, and this is done using a flashback query that requires no locks. However, in some cases it may be desirable to avoid locks entirely which can be done by specifying 'none'. This mode is only safe to use if no schema changes are happening while the snapshot is taken." },
+    "snapshotLockingModeCustomName": { "index": 82, "kind": "property", "displayName": "Snapshot Locking Mode Custom Name", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.locking.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'SnapshotterLocking' interface and is called to determine how to lock tables during schema snapshot." },
+    "snapshotLockTimeoutMs": { "index": 83, "kind": "property", "displayName": "Snapshot Lock Timeout Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
+    "snapshotMaxThreads": { "index": 84, "kind": "property", "displayName": "Snapshot Max Threads", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
+    "snapshotMode": { "index": 85, "kind": "property", "displayName": "Snapshot Mode", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'always': The connector runs a snapshot every time that it starts. After the snapshot completes, the connector begins to stream changes from the transaction log.; 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the transaction log. 'initial_only': The connector performs a snapshot as it does for the 'initial' option, but after the connector completes the snapshot, it stops, and does not stream changes from the transaction log.; 'never': The connector does not run a snapshot. Upon first startup, the connector immediately begins reading from the beginning of the transaction log. 'exported': This option is deprecated; use 'initial' instead.; 'custom': The connector loads a custom class to specify how the connector performs snapshots. For more information, see Custom snapshotter SPI in the PostgreSQL connector documentation." },
+    "snapshotModeConfigurationBasedSnapshotData": { "index": 86, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot Data", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not." },
+    "snapshotModeConfigurationBasedSnapshotOnDataError": { "index": 87, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot On Data Error", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotOnSchemaError": { "index": 88, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot On Schema Error", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotSchema": { "index": 89, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot Schema", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not." },
+    "snapshotModeConfigurationBasedStartStream": { "index": 90, "kind": "property", "displayName": "Snapshot Mode Configuration Based Start Stream", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot." },
+    "snapshotModeCustomName": { "index": 91, "kind": "property", "displayName": "Snapshot Mode Custom Name", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot." },
+    "snapshotQueryMode": { "index": 92, "kind": "property", "displayName": "Snapshot Query Mode", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "select_all", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls query used during the snapshot" },
+    "snapshotQueryModeCustomName": { "index": 93, "kind": "property", "displayName": "Snapshot Query Mode Custom Name", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.query.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'SnapshotterQuery' interface and is called to determine how to build queries during snapshot." },
+    "snapshotSelectStatementOverrides": { "index": 94, "kind": "property", "displayName": "Snapshot Select Statement Overrides", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
+    "snapshotTablesOrderByRowCount": { "index": 95, "kind": "property", "displayName": "Snapshot Tables Order By Row Count", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
+    "sourceinfoStructMaker": { "index": 96, "kind": "property", "displayName": "Sourceinfo Struct Maker", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.postgresql.PostgresSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
+    "statusUpdateIntervalMs": { "index": 97, "kind": "property", "displayName": "Status Update Interval Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Frequency for sending replication connection status updates to the server, given in milliseconds. Defaults to 10 seconds (10,000 ms)." },
+    "tableExcludeList": { "index": 98, "kind": "property", "displayName": "Table Exclude List", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
+    "tableIgnoreBuiltin": { "index": 99, "kind": "property", "displayName": "Table Ignore Builtin", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
+    "tableIncludeList": { "index": 100, "kind": "property", "displayName": "Table Include List", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
+    "timePrecisionMode": { "index": 101, "kind": "property", "displayName": "Time Precision Mode", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
+    "tombstonesOnDelete": { "index": 102, "kind": "property", "displayName": "Tombstones On Delete", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
+    "topicNamingStrategy": { "index": 103, "kind": "property", "displayName": "Topic Naming Strategy", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
+    "topicPrefix": { "index": 104, "kind": "property", "displayName": "Topic Prefix", "group": "postgres", "label": "consumer,postgres", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." },
+    "unavailableValuePlaceholder": { "index": 105, "kind": "property", "displayName": "Unavailable Value Placeholder", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium_unavailable_value", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the constant that will be provided by Debezium to indicate that the original value is a toasted value not provided by the database. If starts with 'hex:' prefix it is expected that the rest of the string represents hexadecimal encoded octets." },
+    "xminFetchIntervalMs": { "index": 106, "kind": "property", "displayName": "Xmin Fetch Interval Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how often (in ms) the xmin will be fetched from the replication slot. This xmin value is exposed by the slot which gives a lower bound of where a new replication slot could start from. The lower the value, the more likely this value is to be the current 'true' value, but the bigger the performance cost. The bigger the value, the less likely this value is to be the current 'true' value, but the lower the performance penalty. The default is set to 0 ms, which disables tracking xmin." }
   },
   "headers": {
     "CamelDebeziumSourceMetadata": { "index": 0, "kind": "header", "displayName": "", "group": "consumer", "label": "", "required": false, "javaType": "Map<String, Object>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The metadata about the source event, for example table name, database name, log position, etc, please refer to the Debezium documentation for more info.", "constantName": "org.apache.camel.component.debezium.DebeziumConstants#HEADER_SOURCE_METADATA" },
@@ -211,25 +220,34 @@
     "slotName": { "index": 76, "kind": "parameter", "displayName": "Slot Name", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "debezium", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the Postgres logical decoding slot created for streaming changes from a plugin. Defaults to 'debezium" },
     "slotRetryDelayMs": { "index": 77, "kind": "parameter", "displayName": "Slot Retry Delay Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait between retry attempts when the connector fails to connect to a replication slot, given in milliseconds. Defaults to 10 seconds (10,000 ms)." },
     "slotStreamParams": { "index": 78, "kind": "parameter", "displayName": "Slot Stream Params", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Any optional parameters used by logical decoding plugin. Semi-colon separated. E.g. 'add-tables=public.table,public.table2;include-lsn=true'" },
-    "snapshotCustomClass": { "index": 79, "kind": "parameter", "displayName": "Snapshot Custom Class", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a fully qualified class name to load (via the default class loader). This class must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot and how to build queries." },
-    "snapshotDelayMs": { "index": 80, "kind": "parameter", "displayName": "Snapshot Delay Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
-    "snapshotFetchSize": { "index": 81, "kind": "parameter", "displayName": "Snapshot Fetch Size", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
-    "snapshotIncludeCollectionList": { "index": 82, "kind": "parameter", "displayName": "Snapshot Include Collection List", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
-    "snapshotLockTimeoutMs": { "index": 83, "kind": "parameter", "displayName": "Snapshot Lock Timeout Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
-    "snapshotMaxThreads": { "index": 84, "kind": "parameter", "displayName": "Snapshot Max Threads", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
-    "snapshotMode": { "index": 85, "kind": "parameter", "displayName": "Snapshot Mode", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'always': The connector runs a snapshot every time that it starts. After the snapshot completes, the connector begins to stream changes from the transaction log.; 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the transaction log. 'initial_only': The connector performs a snapshot as it does for the 'initial' option, but after the connector completes the snapshot, it stops, and does not stream changes from the transaction log.; 'never': The connector does not run a snapshot. Upon first startup, the connector immediately begins reading from the beginning of the transaction log. 'exported': This option is deprecated; use 'initial' instead.; 'custom': The connector loads a custom class to specify how the connector performs snapshots. For more information, see Custom snapshotter SPI in the PostgreSQL connector documentation." },
-    "snapshotSelectStatementOverrides": { "index": 86, "kind": "parameter", "displayName": "Snapshot Select Statement Overrides", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
-    "snapshotTablesOrderByRowCount": { "index": 87, "kind": "parameter", "displayName": "Snapshot Tables Order By Row Count", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
-    "sourceinfoStructMaker": { "index": 88, "kind": "parameter", "displayName": "Sourceinfo Struct Maker", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.postgresql.PostgresSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
-    "statusUpdateIntervalMs": { "index": 89, "kind": "parameter", "displayName": "Status Update Interval Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Frequency for sending replication connection status updates to the server, given in milliseconds. Defaults to 10 seconds (10,000 ms)." },
-    "tableExcludeList": { "index": 90, "kind": "parameter", "displayName": "Table Exclude List", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
-    "tableIgnoreBuiltin": { "index": 91, "kind": "parameter", "displayName": "Table Ignore Builtin", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
-    "tableIncludeList": { "index": 92, "kind": "parameter", "displayName": "Table Include List", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
-    "timePrecisionMode": { "index": 93, "kind": "parameter", "displayName": "Time Precision Mode", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
-    "tombstonesOnDelete": { "index": 94, "kind": "parameter", "displayName": "Tombstones On Delete", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
-    "topicNamingStrategy": { "index": 95, "kind": "parameter", "displayName": "Topic Naming Strategy", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
-    "topicPrefix": { "index": 96, "kind": "parameter", "displayName": "Topic Prefix", "group": "postgres", "label": "consumer,postgres", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." },
-    "unavailableValuePlaceholder": { "index": 97, "kind": "parameter", "displayName": "Unavailable Value Placeholder", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium_unavailable_value", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the constant that will be provided by Debezium to indicate that the original value is a toasted value not provided by the database. If starts with 'hex:' prefix it is expected that the rest of the string represents hexadecimal encoded octets." },
-    "xminFetchIntervalMs": { "index": 98, "kind": "parameter", "displayName": "Xmin Fetch Interval Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how often (in ms) the xmin will be fetched from the replication slot. This xmin value is exposed by the slot which gives a lower bound of where a new replication slot could start from. The lower the value, the more likely this value is to be the current 'true' value, but the bigger the performance cost. The bigger the value, the less likely this value is to be the current 'true' value, but the lower the performance penalty. The default is set to 0 ms, which disables tracking xmin." }
+    "snapshotDelayMs": { "index": 79, "kind": "parameter", "displayName": "Snapshot Delay Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
+    "snapshotFetchSize": { "index": 80, "kind": "parameter", "displayName": "Snapshot Fetch Size", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
+    "snapshotIncludeCollectionList": { "index": 81, "kind": "parameter", "displayName": "Snapshot Include Collection List", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
+    "snapshotLockingMode": { "index": 82, "kind": "parameter", "displayName": "Snapshot Locking Mode", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls how the connector holds locks on tables while performing the schema snapshot. The 'shared' which means the connector will hold a table lock that prevents exclusive table access for just the initial portion of the snapshot while the database schemas and other metadata are being read. The remaining work in a snapshot involves selecting all rows from each table, and this is done using a flashback query that requires no locks. However, in some cases it may be desirable to avoid locks entirely which can be done by specifying 'none'. This mode is only safe to use if no schema changes are happening while the snapshot is taken." },
+    "snapshotLockingModeCustomName": { "index": 83, "kind": "parameter", "displayName": "Snapshot Locking Mode Custom Name", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.locking.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'SnapshotterLocking' interface and is called to determine how to lock tables during schema snapshot." },
+    "snapshotLockTimeoutMs": { "index": 84, "kind": "parameter", "displayName": "Snapshot Lock Timeout Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
+    "snapshotMaxThreads": { "index": 85, "kind": "parameter", "displayName": "Snapshot Max Threads", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
+    "snapshotMode": { "index": 86, "kind": "parameter", "displayName": "Snapshot Mode", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'always': The connector runs a snapshot every time that it starts. After the snapshot completes, the connector begins to stream changes from the transaction log.; 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the transaction log. 'initial_only': The connector performs a snapshot as it does for the 'initial' option, but after the connector completes the snapshot, it stops, and does not stream changes from the transaction log.; 'never': The connector does not run a snapshot. Upon first startup, the connector immediately begins reading from the beginning of the transaction log. 'exported': This option is deprecated; use 'initial' instead.; 'custom': The connector loads a custom class to specify how the connector performs snapshots. For more information, see Custom snapshotter SPI in the PostgreSQL connector documentation." },
+    "snapshotModeConfigurationBasedSnapshotData": { "index": 87, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot Data", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not." },
+    "snapshotModeConfigurationBasedSnapshotOnDataError": { "index": 88, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot On Data Error", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotOnSchemaError": { "index": 89, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot On Schema Error", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotSchema": { "index": 90, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot Schema", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not." },
+    "snapshotModeConfigurationBasedStartStream": { "index": 91, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Start Stream", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot." },
+    "snapshotModeCustomName": { "index": 92, "kind": "parameter", "displayName": "Snapshot Mode Custom Name", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot." },
+    "snapshotQueryMode": { "index": 93, "kind": "parameter", "displayName": "Snapshot Query Mode", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "select_all", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls query used during the snapshot" },
+    "snapshotQueryModeCustomName": { "index": 94, "kind": "parameter", "displayName": "Snapshot Query Mode Custom Name", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.query.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'SnapshotterQuery' interface and is called to determine how to build queries during snapshot." },
+    "snapshotSelectStatementOverrides": { "index": 95, "kind": "parameter", "displayName": "Snapshot Select Statement Overrides", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
+    "snapshotTablesOrderByRowCount": { "index": 96, "kind": "parameter", "displayName": "Snapshot Tables Order By Row Count", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
+    "sourceinfoStructMaker": { "index": 97, "kind": "parameter", "displayName": "Sourceinfo Struct Maker", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.postgresql.PostgresSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
+    "statusUpdateIntervalMs": { "index": 98, "kind": "parameter", "displayName": "Status Update Interval Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Frequency for sending replication connection status updates to the server, given in milliseconds. Defaults to 10 seconds (10,000 ms)." },
+    "tableExcludeList": { "index": 99, "kind": "parameter", "displayName": "Table Exclude List", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
+    "tableIgnoreBuiltin": { "index": 100, "kind": "parameter", "displayName": "Table Ignore Builtin", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
+    "tableIncludeList": { "index": 101, "kind": "parameter", "displayName": "Table Include List", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
+    "timePrecisionMode": { "index": 102, "kind": "parameter", "displayName": "Time Precision Mode", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
+    "tombstonesOnDelete": { "index": 103, "kind": "parameter", "displayName": "Tombstones On Delete", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
+    "topicNamingStrategy": { "index": 104, "kind": "parameter", "displayName": "Topic Naming Strategy", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
+    "topicPrefix": { "index": 105, "kind": "parameter", "displayName": "Topic Prefix", "group": "postgres", "label": "consumer,postgres", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." },
+    "unavailableValuePlaceholder": { "index": 106, "kind": "parameter", "displayName": "Unavailable Value Placeholder", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium_unavailable_value", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the constant that will be provided by Debezium to indicate that the original value is a toasted value not provided by the database. If starts with 'hex:' prefix it is expected that the rest of the string represents hexadecimal encoded octets." },
+    "xminFetchIntervalMs": { "index": 107, "kind": "parameter", "displayName": "Xmin Fetch Interval Ms", "group": "postgres", "label": "consumer,postgres", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.PostgresConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how often (in ms) the xmin will be fetched from the replication slot. This xmin value is exposed by the slot which gives a lower bound of where a new replication slot could start from. The lower the value, the more likely this value is to be the current 'true' value, but the bigger the performance cost. The bigger the value, the less likely this value is to be the current 'true' value, but the lower the performance penalty. The default is set to 0 ms, which disables tracking xmin." }
   }
 }
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-sqlserver.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-sqlserver.json
index 75b3f04..9c359bf 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-sqlserver.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/debezium-sqlserver.json
@@ -49,57 +49,64 @@
     "databasePassword": { "index": 23, "kind": "property", "displayName": "Database Password", "group": "sqlserver", "label": "consumer,sqlserver", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Password of the database user to be used when connecting to the database." },
     "databasePort": { "index": 24, "kind": "property", "displayName": "Database Port", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1433, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Port of the database server." },
     "databaseUser": { "index": 25, "kind": "property", "displayName": "Database User", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Name of the database user to be used when connecting to the database." },
-    "datatypePropagateSourceType": { "index": 26, "kind": "property", "displayName": "Datatype Propagate Source Type", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions matching the database-specific data type names that adds the data type's original type and original length as parameters to the corresponding field schemas in the emitted change records." },
-    "decimalHandlingMode": { "index": 27, "kind": "property", "displayName": "Decimal Handling Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "precise", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how DECIMAL and NUMERIC columns should be represented in change events, including: 'precise' (the default) uses java.math.BigDecimal to represent values, which are encoded in the change events using a binary representation and Kafka Connect's 'org.apache.kafka.connect.data.Decimal' type; 'string' uses string to represent values; 'double' represents values using Java's 'double', which may not offer the precision but will be far easier to use in consumers." },
-    "errorsMaxRetries": { "index": 28, "kind": "property", "displayName": "Errors Max Retries", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of retries on connection errors before failing (-1 = no limit, 0 = disabled, 0 = num of retries)." },
-    "eventProcessingFailureHandlingMode": { "index": 29, "kind": "property", "displayName": "Event Processing Failure Handling Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "fail", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how failures during processing of events (i.e. when encountering a corrupted event) should be handled, including: 'fail' (the default) an exception indicating the problematic event and its position is raised, causing the connector to be stopped; 'warn' the problematic event and its position will be logged and the event will be skipped; 'ignore' the problematic event will be skipped." },
-    "heartbeatActionQuery": { "index": 30, "kind": "property", "displayName": "Heartbeat Action Query", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The query executed with every heartbeat." },
-    "heartbeatIntervalMs": { "index": 31, "kind": "property", "displayName": "Heartbeat Interval Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Length of an interval in milli-seconds in in which the connector periodically sends heartbeat messages to a heartbeat topic. Use 0 to disable heartbeat messages. Disabled by default." },
-    "heartbeatTopicsPrefix": { "index": 32, "kind": "property", "displayName": "Heartbeat Topics Prefix", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium-heartbeat", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The prefix that is used to name heartbeat topics.Defaults to __debezium-heartbeat." },
-    "includeSchemaChanges": { "index": 33, "kind": "property", "displayName": "Include Schema Changes", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector should publish changes in the database schema to a Kafka topic with the same name as the database server ID. Each schema change will be recorded using a key that contains the database name and whose value include logical description of the new schema and optionally the DDL statement(s). The default is 'true'. This is independent of how the connector internally records database schema history." },
-    "includeSchemaComments": { "index": 34, "kind": "property", "displayName": "Include Schema Comments", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector parse table and column's comment to metadata object. Note: Enable this option will bring the implications on memory usage. The number and size of ColumnImpl objects is what largely impacts how much memory is consumed by the Debezium connectors, and adding a String to each of them can potentially be quite heavy. The default is 'false'." },
-    "incrementalSnapshotAllowSchemaChanges": { "index": 35, "kind": "property", "displayName": "Incremental Snapshot Allow Schema Changes", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Detect schema change during an incremental snapshot and re-select a current chunk to avoid locking DDLs. Note that changes to a primary key are not supported and can cause incorrect results if performed during an incremental snapshot. Another limitation is that if a schema change affects only columns' default values, then the change won't be detected until the DDL is processed from the binlog stream. This doesn't affect the snapshot events' values, but the schema of snapshot events may have outdated defaults." },
-    "incrementalSnapshotChunkSize": { "index": 36, "kind": "property", "displayName": "Incremental Snapshot Chunk Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1024, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum size of chunk (number of documents\/rows) for incremental snapshotting" },
-    "incrementalSnapshotOptionRecompile": { "index": 37, "kind": "property", "displayName": "Incremental Snapshot Option Recompile", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Add OPTION(RECOMPILE) on each SELECT statement during the incremental snapshot process. This prevents parameter sniffing but can cause CPU pressure on the source database." },
-    "incrementalSnapshotWatermarkingStrategy": { "index": 38, "kind": "property", "displayName": "Incremental Snapshot Watermarking Strategy", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "INSERT_INSERT", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the strategy used for watermarking during an incremental snapshot: 'insert_insert' both open and close signal is written into signal data collection (default); 'insert_delete' only open signal is written on signal data collection, the close will delete the relative open signal;" },
-    "maxBatchSize": { "index": 39, "kind": "property", "displayName": "Max Batch Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 2048, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of each batch of source records. Defaults to 2048." },
-    "maxIterationTransactions": { "index": 40, "kind": "property", "displayName": "Max Iteration Transactions", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property can be used to reduce the connector memory usage footprint when changes are streamed from multiple tables per database." },
-    "maxQueueSize": { "index": 41, "kind": "property", "displayName": "Max Queue Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 8192, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue for change events read from the database log but not yet recorded or forwarded. Defaults to 8192, and should always be larger than the maximum batch size." },
-    "maxQueueSizeInBytes": { "index": 42, "kind": "property", "displayName": "Max Queue Size In Bytes", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue in bytes for change events read from the database log but not yet recorded or forwarded. Defaults to 0. Mean the feature is not enabled" },
-    "messageKeyColumns": { "index": 43, "kind": "property", "displayName": "Message Key Columns", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A semicolon-separated list of expressions that match fully-qualified tables and column(s) to be used as message key. Each expression must match the pattern ':', where the table names could be defined as (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connector, and the key columns are a comma-separated list of columns representing the custom key. For any table without an explicit key configuration the table's primary key column(s) will be used as message key. Example: dbserver1.inventory.orderlines:orderId,orderLineId;dbserver1.inventory.orders:id" },
-    "notificationEnabledChannels": { "index": 44, "kind": "property", "displayName": "Notification Enabled Channels", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of notification channels names that are enabled." },
-    "notificationSinkTopicName": { "index": 45, "kind": "property", "displayName": "Notification Sink Topic Name", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the topic for the notifications. This is required in case 'sink' is in the list of enabled channels" },
-    "pollIntervalMs": { "index": 46, "kind": "property", "displayName": "Poll Interval Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "500ms", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait for new change events to appear after receiving no events, given in milliseconds. Defaults to 500 ms." },
-    "postProcessors": { "index": 47, "kind": "property", "displayName": "Post Processors", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of post processors. The processors are defined using '.type' config option and configured using options ''" },
-    "provideTransactionMetadata": { "index": 48, "kind": "property", "displayName": "Provide Transaction Metadata", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Enables transaction metadata extraction together with event counting" },
-    "retriableRestartConnectorWaitMs": { "index": 49, "kind": "property", "displayName": "Retriable Restart Connector Wait Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait before restarting connector after retriable exception occurs. Defaults to 10000ms." },
-    "schemaHistoryInternal": { "index": 50, "kind": "property", "displayName": "Schema History Internal", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.storage.kafka.history.KafkaSchemaHistory", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SchemaHistory class that should be used to store and recover database schema changes. The configuration properties for the history are prefixed with the 'schema.history.internal.' string." },
-    "schemaHistoryInternalFileFilename": { "index": 51, "kind": "property", "displayName": "Schema History Internal File Filename", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The path to the file that will be used to record the database schema history" },
-    "schemaHistoryInternalSkipUnparseableDdl": { "index": 52, "kind": "property", "displayName": "Schema History Internal Skip Unparseable Ddl", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the action Debezium will take when it meets a DDL statement in binlog, that it cannot parse.By default the connector will stop operating but by changing the setting it can ignore the statements which it cannot parse. If skipping is enabled then Debezium can miss metadata changes." },
-    "schemaHistoryInternalStoreOnlyCapturedDatabasesDdl": { "index": 53, "kind": "property", "displayName": "Schema History Internal Store Only Captured Databases Ddl", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (true) only DDL that manipulates a table from captured schema\/database will be stored. If set to false, then Debezium will store all incoming DDL statements." },
-    "schemaHistoryInternalStoreOnlyCapturedTablesDdl": { "index": 54, "kind": "property", "displayName": "Schema History Internal Store Only Captured Tables Ddl", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (false) Debezium will store all incoming DDL statements. If set to true, then only DDL that manipulates a captured table will be stored." },
-    "schemaNameAdjustmentMode": { "index": 55, "kind": "property", "displayName": "Schema Name Adjustment Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how schema names should be adjusted for compatibility with the message converter used by the connector, including: 'avro' replaces the characters that cannot be used in the Avro type name with underscore; 'avro_unicode' replaces the underscore or characters that cannot be used in the Avro type name with corresponding unicode like _uxxxx. Note: _ is an escape sequence like backslash in Java;'none' does not apply any adjustment (default)" },
-    "signalDataCollection": { "index": 56, "kind": "property", "displayName": "Signal Data Collection", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the data collection that is used to send signals\/commands to Debezium. Signaling is disabled when not set." },
-    "signalEnabledChannels": { "index": 57, "kind": "property", "displayName": "Signal Enabled Channels", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "source", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of channels names that are enabled. Source channel is enabled by default" },
-    "signalPollIntervalMs": { "index": 58, "kind": "property", "displayName": "Signal Poll Interval Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5s", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new signals in registered channels, given in milliseconds. Defaults to 5 seconds." },
-    "skippedOperations": { "index": 59, "kind": "property", "displayName": "Skipped Operations", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "t", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The comma-separated list of operations to skip during streaming, defined as: 'c' for inserts\/create; 'u' for updates; 'd' for deletes, 't' for truncates, and 'none' to indicate nothing skipped. By default, only truncate operations will be skipped." },
-    "snapshotDelayMs": { "index": 60, "kind": "property", "displayName": "Snapshot Delay Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
-    "snapshotFetchSize": { "index": 61, "kind": "property", "displayName": "Snapshot Fetch Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
-    "snapshotIncludeCollectionList": { "index": 62, "kind": "property", "displayName": "Snapshot Include Collection List", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
-    "snapshotIsolationMode": { "index": 63, "kind": "property", "displayName": "Snapshot Isolation Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "repeatable_read", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls which transaction isolation level is used and how long the connector locks the captured tables. The default is 'repeatable_read', which means that repeatable read isolation level is used. In addition, exclusive locks are taken only during schema snapshot. Using a value of 'exclusive' ensures that the connector holds the exclusive lock (and thus prevents any reads and updates) for all captured tables during the entire snapshot duration. When 'snapshot' is specified, connector runs the initial snapshot in SNAPSHOT isolation level, which guarantees snapshot consistency. In addition, neither table nor row-level locks are held. When 'read_committed' is specified, connector runs the initial snapshot in READ COMMITTED isolation level. No long-running locks are taken, so that initial snapshot does not prevent other transactions from updating table rows. Snapshot consistency is not guaranteed.In 'read_uncommitted' mode neither table nor row-level locks are acquired, but connector does not guarantee snapshot consistency." },
-    "snapshotLockTimeoutMs": { "index": 64, "kind": "property", "displayName": "Snapshot Lock Timeout Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
-    "snapshotMaxThreads": { "index": 65, "kind": "property", "displayName": "Snapshot Max Threads", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
-    "snapshotMode": { "index": 66, "kind": "property", "displayName": "Snapshot Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the transaction log.; 'initial_only': The connector performs a snapshot as it does for the 'initial' option, but after the connector completes the snapshot, it stops, and does not stream changes from the transaction log.; 'schema_only': If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures only the schema (table structures), but not any table data. After the snapshot completes, the connector begins to stream changes from the transaction log." },
-    "snapshotSelectStatementOverrides": { "index": 67, "kind": "property", "displayName": "Snapshot Select Statement Overrides", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
-    "snapshotTablesOrderByRowCount": { "index": 68, "kind": "property", "displayName": "Snapshot Tables Order By Row Count", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
-    "sourceinfoStructMaker": { "index": 69, "kind": "property", "displayName": "Sourceinfo Struct Maker", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.sqlserver.SqlServerSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
-    "tableExcludeList": { "index": 70, "kind": "property", "displayName": "Table Exclude List", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
-    "tableIgnoreBuiltin": { "index": 71, "kind": "property", "displayName": "Table Ignore Builtin", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
-    "tableIncludeList": { "index": 72, "kind": "property", "displayName": "Table Include List", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
-    "timePrecisionMode": { "index": 73, "kind": "property", "displayName": "Time Precision Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
-    "tombstonesOnDelete": { "index": 74, "kind": "property", "displayName": "Tombstones On Delete", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
-    "topicNamingStrategy": { "index": 75, "kind": "property", "displayName": "Topic Naming Strategy", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
-    "topicPrefix": { "index": 76, "kind": "property", "displayName": "Topic Prefix", "group": "sqlserver", "label": "consumer,sqlserver", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
+    "dataQueryMode": { "index": 26, "kind": "property", "displayName": "Data Query Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "function", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls how the connector queries CDC data. The default is 'function', which means the data is queried by means of calling cdc.fn_cdc_get_all_changes_# function. The value of 'direct' makes the connector to query the change tables directly." },
+    "datatypePropagateSourceType": { "index": 27, "kind": "property", "displayName": "Datatype Propagate Source Type", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions matching the database-specific data type names that adds the data type's original type and original length as parameters to the corresponding field schemas in the emitted change records." },
+    "decimalHandlingMode": { "index": 28, "kind": "property", "displayName": "Decimal Handling Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "precise", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how DECIMAL and NUMERIC columns should be represented in change events, including: 'precise' (the default) uses java.math.BigDecimal to represent values, which are encoded in the change events using a binary representation and Kafka Connect's 'org.apache.kafka.connect.data.Decimal' type; 'string' uses string to represent values; 'double' represents values using Java's 'double', which may not offer the precision but will be far easier to use in consumers." },
+    "errorsMaxRetries": { "index": 29, "kind": "property", "displayName": "Errors Max Retries", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of retries on connection errors before failing (-1 = no limit, 0 = disabled, 0 = num of retries)." },
+    "eventProcessingFailureHandlingMode": { "index": 30, "kind": "property", "displayName": "Event Processing Failure Handling Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "fail", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how failures during processing of events (i.e. when encountering a corrupted event) should be handled, including: 'fail' (the default) an exception indicating the problematic event and its position is raised, causing the connector to be stopped; 'warn' the problematic event and its position will be logged and the event will be skipped; 'ignore' the problematic event will be skipped." },
+    "heartbeatActionQuery": { "index": 31, "kind": "property", "displayName": "Heartbeat Action Query", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The query executed with every heartbeat." },
+    "heartbeatIntervalMs": { "index": 32, "kind": "property", "displayName": "Heartbeat Interval Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Length of an interval in milli-seconds in in which the connector periodically sends heartbeat messages to a heartbeat topic. Use 0 to disable heartbeat messages. Disabled by default." },
+    "heartbeatTopicsPrefix": { "index": 33, "kind": "property", "displayName": "Heartbeat Topics Prefix", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium-heartbeat", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The prefix that is used to name heartbeat topics.Defaults to __debezium-heartbeat." },
+    "includeSchemaChanges": { "index": 34, "kind": "property", "displayName": "Include Schema Changes", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector should publish changes in the database schema to a Kafka topic with the same name as the database server ID. Each schema change will be recorded using a key that contains the database name and whose value include logical description of the new schema and optionally the DDL statement(s). The default is 'true'. This is independent of how the connector internally records database schema history." },
+    "includeSchemaComments": { "index": 35, "kind": "property", "displayName": "Include Schema Comments", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector parse table and column's comment to metadata object. Note: Enable this option will bring the implications on memory usage. The number and size of ColumnImpl objects is what largely impacts how much memory is consumed by the Debezium connectors, and adding a String to each of them can potentially be quite heavy. The default is 'false'." },
+    "incrementalSnapshotAllowSchemaChanges": { "index": 36, "kind": "property", "displayName": "Incremental Snapshot Allow Schema Changes", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Detect schema change during an incremental snapshot and re-select a current chunk to avoid locking DDLs. Note that changes to a primary key are not supported and can cause incorrect results if performed during an incremental snapshot. Another limitation is that if a schema change affects only columns' default values, then the change won't be detected until the DDL is processed from the binlog stream. This doesn't affect the snapshot events' values, but the schema of snapshot events may have outdated defaults." },
+    "incrementalSnapshotChunkSize": { "index": 37, "kind": "property", "displayName": "Incremental Snapshot Chunk Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1024, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum size of chunk (number of documents\/rows) for incremental snapshotting" },
+    "incrementalSnapshotOptionRecompile": { "index": 38, "kind": "property", "displayName": "Incremental Snapshot Option Recompile", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Add OPTION(RECOMPILE) on each SELECT statement during the incremental snapshot process. This prevents parameter sniffing but can cause CPU pressure on the source database." },
+    "incrementalSnapshotWatermarkingStrategy": { "index": 39, "kind": "property", "displayName": "Incremental Snapshot Watermarking Strategy", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "INSERT_INSERT", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the strategy used for watermarking during an incremental snapshot: 'insert_insert' both open and close signal is written into signal data collection (default); 'insert_delete' only open signal is written on signal data collection, the close will delete the relative open signal;" },
+    "maxBatchSize": { "index": 40, "kind": "property", "displayName": "Max Batch Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 2048, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of each batch of source records. Defaults to 2048." },
+    "maxIterationTransactions": { "index": 41, "kind": "property", "displayName": "Max Iteration Transactions", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property can be used to reduce the connector memory usage footprint when changes are streamed from multiple tables per database." },
+    "maxQueueSize": { "index": 42, "kind": "property", "displayName": "Max Queue Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 8192, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue for change events read from the database log but not yet recorded or forwarded. Defaults to 8192, and should always be larger than the maximum batch size." },
+    "maxQueueSizeInBytes": { "index": 43, "kind": "property", "displayName": "Max Queue Size In Bytes", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue in bytes for change events read from the database log but not yet recorded or forwarded. Defaults to 0. Mean the feature is not enabled" },
+    "messageKeyColumns": { "index": 44, "kind": "property", "displayName": "Message Key Columns", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A semicolon-separated list of expressions that match fully-qualified tables and column(s) to be used as message key. Each expression must match the pattern ':', where the table names could be defined as (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connector, and the key columns are a comma-separated list of columns representing the custom key. For any table without an explicit key configuration the table's primary key column(s) will be used as message key. Example: dbserver1.inventory.orderlines:orderId,orderLineId;dbserver1.inventory.orders:id" },
+    "notificationEnabledChannels": { "index": 45, "kind": "property", "displayName": "Notification Enabled Channels", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of notification channels names that are enabled." },
+    "notificationSinkTopicName": { "index": 46, "kind": "property", "displayName": "Notification Sink Topic Name", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the topic for the notifications. This is required in case 'sink' is in the list of enabled channels" },
+    "pollIntervalMs": { "index": 47, "kind": "property", "displayName": "Poll Interval Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "500ms", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait for new change events to appear after receiving no events, given in milliseconds. Defaults to 500 ms." },
+    "postProcessors": { "index": 48, "kind": "property", "displayName": "Post Processors", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of post processors. The processors are defined using '.type' config option and configured using options ''" },
+    "provideTransactionMetadata": { "index": 49, "kind": "property", "displayName": "Provide Transaction Metadata", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Enables transaction metadata extraction together with event counting" },
+    "retriableRestartConnectorWaitMs": { "index": 50, "kind": "property", "displayName": "Retriable Restart Connector Wait Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait before restarting connector after retriable exception occurs. Defaults to 10000ms." },
+    "schemaHistoryInternal": { "index": 51, "kind": "property", "displayName": "Schema History Internal", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.storage.kafka.history.KafkaSchemaHistory", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SchemaHistory class that should be used to store and recover database schema changes. The configuration properties for the history are prefixed with the 'schema.history.internal.' string." },
+    "schemaHistoryInternalFileFilename": { "index": 52, "kind": "property", "displayName": "Schema History Internal File Filename", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The path to the file that will be used to record the database schema history" },
+    "schemaHistoryInternalSkipUnparseableDdl": { "index": 53, "kind": "property", "displayName": "Schema History Internal Skip Unparseable Ddl", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the action Debezium will take when it meets a DDL statement in binlog, that it cannot parse.By default the connector will stop operating but by changing the setting it can ignore the statements which it cannot parse. If skipping is enabled then Debezium can miss metadata changes." },
+    "schemaHistoryInternalStoreOnlyCapturedDatabasesDdl": { "index": 54, "kind": "property", "displayName": "Schema History Internal Store Only Captured Databases Ddl", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (true) only DDL that manipulates a table from captured schema\/database will be stored. If set to false, then Debezium will store all incoming DDL statements." },
+    "schemaHistoryInternalStoreOnlyCapturedTablesDdl": { "index": 55, "kind": "property", "displayName": "Schema History Internal Store Only Captured Tables Ddl", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (false) Debezium will store all incoming DDL statements. If set to true, then only DDL that manipulates a captured table will be stored." },
+    "schemaNameAdjustmentMode": { "index": 56, "kind": "property", "displayName": "Schema Name Adjustment Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how schema names should be adjusted for compatibility with the message converter used by the connector, including: 'avro' replaces the characters that cannot be used in the Avro type name with underscore; 'avro_unicode' replaces the underscore or characters that cannot be used in the Avro type name with corresponding unicode like _uxxxx. Note: _ is an escape sequence like backslash in Java;'none' does not apply any adjustment (default)" },
+    "signalDataCollection": { "index": 57, "kind": "property", "displayName": "Signal Data Collection", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the data collection that is used to send signals\/commands to Debezium. Signaling is disabled when not set." },
+    "signalEnabledChannels": { "index": 58, "kind": "property", "displayName": "Signal Enabled Channels", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "source", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of channels names that are enabled. Source channel is enabled by default" },
+    "signalPollIntervalMs": { "index": 59, "kind": "property", "displayName": "Signal Poll Interval Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5s", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new signals in registered channels, given in milliseconds. Defaults to 5 seconds." },
+    "skippedOperations": { "index": 60, "kind": "property", "displayName": "Skipped Operations", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "t", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The comma-separated list of operations to skip during streaming, defined as: 'c' for inserts\/create; 'u' for updates; 'd' for deletes, 't' for truncates, and 'none' to indicate nothing skipped. By default, only truncate operations will be skipped." },
+    "snapshotDelayMs": { "index": 61, "kind": "property", "displayName": "Snapshot Delay Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
+    "snapshotFetchSize": { "index": 62, "kind": "property", "displayName": "Snapshot Fetch Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
+    "snapshotIncludeCollectionList": { "index": 63, "kind": "property", "displayName": "Snapshot Include Collection List", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
+    "snapshotIsolationMode": { "index": 64, "kind": "property", "displayName": "Snapshot Isolation Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "repeatable_read", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls which transaction isolation level is used and how long the connector locks the captured tables. The default is 'repeatable_read', which means that repeatable read isolation level is used. In addition, type of acquired lock during schema snapshot depends on snapshot.locking.mode property. Using a value of 'exclusive' ensures that the connector holds the type of lock specified with snapshot.locking.mode property (and thus prevents any reads and updates) for all captured tables during the entire snapshot duration. When 'snapshot' is specified, connector runs the initial snapshot in SNAPSHOT isolation level, which guarantees snapshot consistency. In addition, neither table nor row-level locks are held. When 'read_committed' is specified, connector runs the initial snapshot in READ COMMITTED isolation level. No long-running locks are taken, so that initial snapshot does not prevent other transactions from updating table rows. Snapshot consistency is not guaranteed.In 'read_uncommitted' mode neither table nor row-level locks are acquired, but connector does not guarantee snapshot consistency." },
+    "snapshotLockTimeoutMs": { "index": 65, "kind": "property", "displayName": "Snapshot Lock Timeout Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
+    "snapshotMaxThreads": { "index": 66, "kind": "property", "displayName": "Snapshot Max Threads", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
+    "snapshotMode": { "index": 67, "kind": "property", "displayName": "Snapshot Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the transaction log.; 'initial_only': The connector performs a snapshot as it does for the 'initial' option, but after the connector completes the snapshot, it stops, and does not stream changes from the transaction log.; 'schema_only': If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures only the schema (table structures), but not any table data. After the snapshot completes, the connector begins to stream changes from the transaction log." },
+    "snapshotModeConfigurationBasedSnapshotData": { "index": 68, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot Data", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not." },
+    "snapshotModeConfigurationBasedSnapshotOnDataError": { "index": 69, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot On Data Error", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotOnSchemaError": { "index": 70, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot On Schema Error", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotSchema": { "index": 71, "kind": "property", "displayName": "Snapshot Mode Configuration Based Snapshot Schema", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not." },
+    "snapshotModeConfigurationBasedStartStream": { "index": 72, "kind": "property", "displayName": "Snapshot Mode Configuration Based Start Stream", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot." },
+    "snapshotModeCustomName": { "index": 73, "kind": "property", "displayName": "Snapshot Mode Custom Name", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot." },
+    "snapshotSelectStatementOverrides": { "index": 74, "kind": "property", "displayName": "Snapshot Select Statement Overrides", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
+    "snapshotTablesOrderByRowCount": { "index": 75, "kind": "property", "displayName": "Snapshot Tables Order By Row Count", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
+    "sourceinfoStructMaker": { "index": 76, "kind": "property", "displayName": "Sourceinfo Struct Maker", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.sqlserver.SqlServerSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
+    "tableExcludeList": { "index": 77, "kind": "property", "displayName": "Table Exclude List", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
+    "tableIgnoreBuiltin": { "index": 78, "kind": "property", "displayName": "Table Ignore Builtin", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
+    "tableIncludeList": { "index": 79, "kind": "property", "displayName": "Table Include List", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
+    "timePrecisionMode": { "index": 80, "kind": "property", "displayName": "Time Precision Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
+    "tombstonesOnDelete": { "index": 81, "kind": "property", "displayName": "Tombstones On Delete", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
+    "topicNamingStrategy": { "index": 82, "kind": "property", "displayName": "Topic Naming Strategy", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
+    "topicPrefix": { "index": 83, "kind": "property", "displayName": "Topic Prefix", "group": "sqlserver", "label": "consumer,sqlserver", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
   },
   "headers": {
     "CamelDebeziumSourceMetadata": { "index": 0, "kind": "header", "displayName": "", "group": "consumer", "label": "", "required": false, "javaType": "Map<String, Object>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The metadata about the source event, for example table name, database name, log position, etc, please refer to the Debezium documentation for more info.", "constantName": "org.apache.camel.component.debezium.DebeziumConstants#HEADER_SOURCE_METADATA" },
@@ -138,56 +145,63 @@
     "databasePassword": { "index": 24, "kind": "parameter", "displayName": "Database Password", "group": "sqlserver", "label": "consumer,sqlserver", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Password of the database user to be used when connecting to the database." },
     "databasePort": { "index": 25, "kind": "parameter", "displayName": "Database Port", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1433, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Port of the database server." },
     "databaseUser": { "index": 26, "kind": "parameter", "displayName": "Database User", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Name of the database user to be used when connecting to the database." },
-    "datatypePropagateSourceType": { "index": 27, "kind": "parameter", "displayName": "Datatype Propagate Source Type", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions matching the database-specific data type names that adds the data type's original type and original length as parameters to the corresponding field schemas in the emitted change records." },
-    "decimalHandlingMode": { "index": 28, "kind": "parameter", "displayName": "Decimal Handling Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "precise", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how DECIMAL and NUMERIC columns should be represented in change events, including: 'precise' (the default) uses java.math.BigDecimal to represent values, which are encoded in the change events using a binary representation and Kafka Connect's 'org.apache.kafka.connect.data.Decimal' type; 'string' uses string to represent values; 'double' represents values using Java's 'double', which may not offer the precision but will be far easier to use in consumers." },
-    "errorsMaxRetries": { "index": 29, "kind": "parameter", "displayName": "Errors Max Retries", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of retries on connection errors before failing (-1 = no limit, 0 = disabled, 0 = num of retries)." },
-    "eventProcessingFailureHandlingMode": { "index": 30, "kind": "parameter", "displayName": "Event Processing Failure Handling Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "fail", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how failures during processing of events (i.e. when encountering a corrupted event) should be handled, including: 'fail' (the default) an exception indicating the problematic event and its position is raised, causing the connector to be stopped; 'warn' the problematic event and its position will be logged and the event will be skipped; 'ignore' the problematic event will be skipped." },
-    "heartbeatActionQuery": { "index": 31, "kind": "parameter", "displayName": "Heartbeat Action Query", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The query executed with every heartbeat." },
-    "heartbeatIntervalMs": { "index": 32, "kind": "parameter", "displayName": "Heartbeat Interval Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Length of an interval in milli-seconds in in which the connector periodically sends heartbeat messages to a heartbeat topic. Use 0 to disable heartbeat messages. Disabled by default." },
-    "heartbeatTopicsPrefix": { "index": 33, "kind": "parameter", "displayName": "Heartbeat Topics Prefix", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium-heartbeat", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The prefix that is used to name heartbeat topics.Defaults to __debezium-heartbeat." },
-    "includeSchemaChanges": { "index": 34, "kind": "parameter", "displayName": "Include Schema Changes", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector should publish changes in the database schema to a Kafka topic with the same name as the database server ID. Each schema change will be recorded using a key that contains the database name and whose value include logical description of the new schema and optionally the DDL statement(s). The default is 'true'. This is independent of how the connector internally records database schema history." },
-    "includeSchemaComments": { "index": 35, "kind": "parameter", "displayName": "Include Schema Comments", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector parse table and column's comment to metadata object. Note: Enable this option will bring the implications on memory usage. The number and size of ColumnImpl objects is what largely impacts how much memory is consumed by the Debezium connectors, and adding a String to each of them can potentially be quite heavy. The default is 'false'." },
-    "incrementalSnapshotAllowSchemaChanges": { "index": 36, "kind": "parameter", "displayName": "Incremental Snapshot Allow Schema Changes", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Detect schema change during an incremental snapshot and re-select a current chunk to avoid locking DDLs. Note that changes to a primary key are not supported and can cause incorrect results if performed during an incremental snapshot. Another limitation is that if a schema change affects only columns' default values, then the change won't be detected until the DDL is processed from the binlog stream. This doesn't affect the snapshot events' values, but the schema of snapshot events may have outdated defaults." },
-    "incrementalSnapshotChunkSize": { "index": 37, "kind": "parameter", "displayName": "Incremental Snapshot Chunk Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1024, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum size of chunk (number of documents\/rows) for incremental snapshotting" },
-    "incrementalSnapshotOptionRecompile": { "index": 38, "kind": "parameter", "displayName": "Incremental Snapshot Option Recompile", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Add OPTION(RECOMPILE) on each SELECT statement during the incremental snapshot process. This prevents parameter sniffing but can cause CPU pressure on the source database." },
-    "incrementalSnapshotWatermarkingStrategy": { "index": 39, "kind": "parameter", "displayName": "Incremental Snapshot Watermarking Strategy", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "INSERT_INSERT", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the strategy used for watermarking during an incremental snapshot: 'insert_insert' both open and close signal is written into signal data collection (default); 'insert_delete' only open signal is written on signal data collection, the close will delete the relative open signal;" },
-    "maxBatchSize": { "index": 40, "kind": "parameter", "displayName": "Max Batch Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 2048, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of each batch of source records. Defaults to 2048." },
-    "maxIterationTransactions": { "index": 41, "kind": "parameter", "displayName": "Max Iteration Transactions", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property can be used to reduce the connector memory usage footprint when changes are streamed from multiple tables per database." },
-    "maxQueueSize": { "index": 42, "kind": "parameter", "displayName": "Max Queue Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 8192, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue for change events read from the database log but not yet recorded or forwarded. Defaults to 8192, and should always be larger than the maximum batch size." },
-    "maxQueueSizeInBytes": { "index": 43, "kind": "parameter", "displayName": "Max Queue Size In Bytes", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue in bytes for change events read from the database log but not yet recorded or forwarded. Defaults to 0. Mean the feature is not enabled" },
-    "messageKeyColumns": { "index": 44, "kind": "parameter", "displayName": "Message Key Columns", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A semicolon-separated list of expressions that match fully-qualified tables and column(s) to be used as message key. Each expression must match the pattern ':', where the table names could be defined as (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connector, and the key columns are a comma-separated list of columns representing the custom key. For any table without an explicit key configuration the table's primary key column(s) will be used as message key. Example: dbserver1.inventory.orderlines:orderId,orderLineId;dbserver1.inventory.orders:id" },
-    "notificationEnabledChannels": { "index": 45, "kind": "parameter", "displayName": "Notification Enabled Channels", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of notification channels names that are enabled." },
-    "notificationSinkTopicName": { "index": 46, "kind": "parameter", "displayName": "Notification Sink Topic Name", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the topic for the notifications. This is required in case 'sink' is in the list of enabled channels" },
-    "pollIntervalMs": { "index": 47, "kind": "parameter", "displayName": "Poll Interval Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "500ms", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait for new change events to appear after receiving no events, given in milliseconds. Defaults to 500 ms." },
-    "postProcessors": { "index": 48, "kind": "parameter", "displayName": "Post Processors", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of post processors. The processors are defined using '.type' config option and configured using options ''" },
-    "provideTransactionMetadata": { "index": 49, "kind": "parameter", "displayName": "Provide Transaction Metadata", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Enables transaction metadata extraction together with event counting" },
-    "retriableRestartConnectorWaitMs": { "index": 50, "kind": "parameter", "displayName": "Retriable Restart Connector Wait Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait before restarting connector after retriable exception occurs. Defaults to 10000ms." },
-    "schemaHistoryInternal": { "index": 51, "kind": "parameter", "displayName": "Schema History Internal", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.storage.kafka.history.KafkaSchemaHistory", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SchemaHistory class that should be used to store and recover database schema changes. The configuration properties for the history are prefixed with the 'schema.history.internal.' string." },
-    "schemaHistoryInternalFileFilename": { "index": 52, "kind": "parameter", "displayName": "Schema History Internal File Filename", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The path to the file that will be used to record the database schema history" },
-    "schemaHistoryInternalSkipUnparseableDdl": { "index": 53, "kind": "parameter", "displayName": "Schema History Internal Skip Unparseable Ddl", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the action Debezium will take when it meets a DDL statement in binlog, that it cannot parse.By default the connector will stop operating but by changing the setting it can ignore the statements which it cannot parse. If skipping is enabled then Debezium can miss metadata changes." },
-    "schemaHistoryInternalStoreOnlyCapturedDatabasesDdl": { "index": 54, "kind": "parameter", "displayName": "Schema History Internal Store Only Captured Databases Ddl", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (true) only DDL that manipulates a table from captured schema\/database will be stored. If set to false, then Debezium will store all incoming DDL statements." },
-    "schemaHistoryInternalStoreOnlyCapturedTablesDdl": { "index": 55, "kind": "parameter", "displayName": "Schema History Internal Store Only Captured Tables Ddl", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (false) Debezium will store all incoming DDL statements. If set to true, then only DDL that manipulates a captured table will be stored." },
-    "schemaNameAdjustmentMode": { "index": 56, "kind": "parameter", "displayName": "Schema Name Adjustment Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how schema names should be adjusted for compatibility with the message converter used by the connector, including: 'avro' replaces the characters that cannot be used in the Avro type name with underscore; 'avro_unicode' replaces the underscore or characters that cannot be used in the Avro type name with corresponding unicode like _uxxxx. Note: _ is an escape sequence like backslash in Java;'none' does not apply any adjustment (default)" },
-    "signalDataCollection": { "index": 57, "kind": "parameter", "displayName": "Signal Data Collection", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the data collection that is used to send signals\/commands to Debezium. Signaling is disabled when not set." },
-    "signalEnabledChannels": { "index": 58, "kind": "parameter", "displayName": "Signal Enabled Channels", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "source", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of channels names that are enabled. Source channel is enabled by default" },
-    "signalPollIntervalMs": { "index": 59, "kind": "parameter", "displayName": "Signal Poll Interval Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5s", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new signals in registered channels, given in milliseconds. Defaults to 5 seconds." },
-    "skippedOperations": { "index": 60, "kind": "parameter", "displayName": "Skipped Operations", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "t", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The comma-separated list of operations to skip during streaming, defined as: 'c' for inserts\/create; 'u' for updates; 'd' for deletes, 't' for truncates, and 'none' to indicate nothing skipped. By default, only truncate operations will be skipped." },
-    "snapshotDelayMs": { "index": 61, "kind": "parameter", "displayName": "Snapshot Delay Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
-    "snapshotFetchSize": { "index": 62, "kind": "parameter", "displayName": "Snapshot Fetch Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
-    "snapshotIncludeCollectionList": { "index": 63, "kind": "parameter", "displayName": "Snapshot Include Collection List", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
-    "snapshotIsolationMode": { "index": 64, "kind": "parameter", "displayName": "Snapshot Isolation Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "repeatable_read", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls which transaction isolation level is used and how long the connector locks the captured tables. The default is 'repeatable_read', which means that repeatable read isolation level is used. In addition, exclusive locks are taken only during schema snapshot. Using a value of 'exclusive' ensures that the connector holds the exclusive lock (and thus prevents any reads and updates) for all captured tables during the entire snapshot duration. When 'snapshot' is specified, connector runs the initial snapshot in SNAPSHOT isolation level, which guarantees snapshot consistency. In addition, neither table nor row-level locks are held. When 'read_committed' is specified, connector runs the initial snapshot in READ COMMITTED isolation level. No long-running locks are taken, so that initial snapshot does not prevent other transactions from updating table rows. Snapshot consistency is not guaranteed.In 'read_uncommitted' mode neither table nor row-level locks are acquired, but connector does not guarantee snapshot consistency." },
-    "snapshotLockTimeoutMs": { "index": 65, "kind": "parameter", "displayName": "Snapshot Lock Timeout Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
-    "snapshotMaxThreads": { "index": 66, "kind": "parameter", "displayName": "Snapshot Max Threads", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
-    "snapshotMode": { "index": 67, "kind": "parameter", "displayName": "Snapshot Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the transaction log.; 'initial_only': The connector performs a snapshot as it does for the 'initial' option, but after the connector completes the snapshot, it stops, and does not stream changes from the transaction log.; 'schema_only': If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures only the schema (table structures), but not any table data. After the snapshot completes, the connector begins to stream changes from the transaction log." },
-    "snapshotSelectStatementOverrides": { "index": 68, "kind": "parameter", "displayName": "Snapshot Select Statement Overrides", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
-    "snapshotTablesOrderByRowCount": { "index": 69, "kind": "parameter", "displayName": "Snapshot Tables Order By Row Count", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
-    "sourceinfoStructMaker": { "index": 70, "kind": "parameter", "displayName": "Sourceinfo Struct Maker", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.sqlserver.SqlServerSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
-    "tableExcludeList": { "index": 71, "kind": "parameter", "displayName": "Table Exclude List", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
-    "tableIgnoreBuiltin": { "index": 72, "kind": "parameter", "displayName": "Table Ignore Builtin", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
-    "tableIncludeList": { "index": 73, "kind": "parameter", "displayName": "Table Include List", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
-    "timePrecisionMode": { "index": 74, "kind": "parameter", "displayName": "Time Precision Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
-    "tombstonesOnDelete": { "index": 75, "kind": "parameter", "displayName": "Tombstones On Delete", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
-    "topicNamingStrategy": { "index": 76, "kind": "parameter", "displayName": "Topic Naming Strategy", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
-    "topicPrefix": { "index": 77, "kind": "parameter", "displayName": "Topic Prefix", "group": "sqlserver", "label": "consumer,sqlserver", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
+    "dataQueryMode": { "index": 27, "kind": "parameter", "displayName": "Data Query Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "function", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls how the connector queries CDC data. The default is 'function', which means the data is queried by means of calling cdc.fn_cdc_get_all_changes_# function. The value of 'direct' makes the connector to query the change tables directly." },
+    "datatypePropagateSourceType": { "index": 28, "kind": "parameter", "displayName": "Datatype Propagate Source Type", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions matching the database-specific data type names that adds the data type's original type and original length as parameters to the corresponding field schemas in the emitted change records." },
+    "decimalHandlingMode": { "index": 29, "kind": "parameter", "displayName": "Decimal Handling Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "precise", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how DECIMAL and NUMERIC columns should be represented in change events, including: 'precise' (the default) uses java.math.BigDecimal to represent values, which are encoded in the change events using a binary representation and Kafka Connect's 'org.apache.kafka.connect.data.Decimal' type; 'string' uses string to represent values; 'double' represents values using Java's 'double', which may not offer the precision but will be far easier to use in consumers." },
+    "errorsMaxRetries": { "index": 30, "kind": "parameter", "displayName": "Errors Max Retries", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of retries on connection errors before failing (-1 = no limit, 0 = disabled, 0 = num of retries)." },
+    "eventProcessingFailureHandlingMode": { "index": 31, "kind": "parameter", "displayName": "Event Processing Failure Handling Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "fail", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how failures during processing of events (i.e. when encountering a corrupted event) should be handled, including: 'fail' (the default) an exception indicating the problematic event and its position is raised, causing the connector to be stopped; 'warn' the problematic event and its position will be logged and the event will be skipped; 'ignore' the problematic event will be skipped." },
+    "heartbeatActionQuery": { "index": 32, "kind": "parameter", "displayName": "Heartbeat Action Query", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The query executed with every heartbeat." },
+    "heartbeatIntervalMs": { "index": 33, "kind": "parameter", "displayName": "Heartbeat Interval Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Length of an interval in milli-seconds in in which the connector periodically sends heartbeat messages to a heartbeat topic. Use 0 to disable heartbeat messages. Disabled by default." },
+    "heartbeatTopicsPrefix": { "index": 34, "kind": "parameter", "displayName": "Heartbeat Topics Prefix", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "__debezium-heartbeat", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The prefix that is used to name heartbeat topics.Defaults to __debezium-heartbeat." },
+    "includeSchemaChanges": { "index": 35, "kind": "parameter", "displayName": "Include Schema Changes", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector should publish changes in the database schema to a Kafka topic with the same name as the database server ID. Each schema change will be recorded using a key that contains the database name and whose value include logical description of the new schema and optionally the DDL statement(s). The default is 'true'. This is independent of how the connector internally records database schema history." },
+    "includeSchemaComments": { "index": 36, "kind": "parameter", "displayName": "Include Schema Comments", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether the connector parse table and column's comment to metadata object. Note: Enable this option will bring the implications on memory usage. The number and size of ColumnImpl objects is what largely impacts how much memory is consumed by the Debezium connectors, and adding a String to each of them can potentially be quite heavy. The default is 'false'." },
+    "incrementalSnapshotAllowSchemaChanges": { "index": 37, "kind": "parameter", "displayName": "Incremental Snapshot Allow Schema Changes", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Detect schema change during an incremental snapshot and re-select a current chunk to avoid locking DDLs. Note that changes to a primary key are not supported and can cause incorrect results if performed during an incremental snapshot. Another limitation is that if a schema change affects only columns' default values, then the change won't be detected until the DDL is processed from the binlog stream. This doesn't affect the snapshot events' values, but the schema of snapshot events may have outdated defaults." },
+    "incrementalSnapshotChunkSize": { "index": 38, "kind": "parameter", "displayName": "Incremental Snapshot Chunk Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1024, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum size of chunk (number of documents\/rows) for incremental snapshotting" },
+    "incrementalSnapshotOptionRecompile": { "index": 39, "kind": "parameter", "displayName": "Incremental Snapshot Option Recompile", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Add OPTION(RECOMPILE) on each SELECT statement during the incremental snapshot process. This prevents parameter sniffing but can cause CPU pressure on the source database." },
+    "incrementalSnapshotWatermarkingStrategy": { "index": 40, "kind": "parameter", "displayName": "Incremental Snapshot Watermarking Strategy", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "INSERT_INSERT", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify the strategy used for watermarking during an incremental snapshot: 'insert_insert' both open and close signal is written into signal data collection (default); 'insert_delete' only open signal is written on signal data collection, the close will delete the relative open signal;" },
+    "maxBatchSize": { "index": 41, "kind": "parameter", "displayName": "Max Batch Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 2048, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of each batch of source records. Defaults to 2048." },
+    "maxIterationTransactions": { "index": 42, "kind": "parameter", "displayName": "Max Iteration Transactions", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property can be used to reduce the connector memory usage footprint when changes are streamed from multiple tables per database." },
+    "maxQueueSize": { "index": 43, "kind": "parameter", "displayName": "Max Queue Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 8192, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue for change events read from the database log but not yet recorded or forwarded. Defaults to 8192, and should always be larger than the maximum batch size." },
+    "maxQueueSizeInBytes": { "index": 44, "kind": "parameter", "displayName": "Max Queue Size In Bytes", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Maximum size of the queue in bytes for change events read from the database log but not yet recorded or forwarded. Defaults to 0. Mean the feature is not enabled" },
+    "messageKeyColumns": { "index": 45, "kind": "parameter", "displayName": "Message Key Columns", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A semicolon-separated list of expressions that match fully-qualified tables and column(s) to be used as message key. Each expression must match the pattern ':', where the table names could be defined as (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connector, and the key columns are a comma-separated list of columns representing the custom key. For any table without an explicit key configuration the table's primary key column(s) will be used as message key. Example: dbserver1.inventory.orderlines:orderId,orderLineId;dbserver1.inventory.orders:id" },
+    "notificationEnabledChannels": { "index": 46, "kind": "parameter", "displayName": "Notification Enabled Channels", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of notification channels names that are enabled." },
+    "notificationSinkTopicName": { "index": 47, "kind": "parameter", "displayName": "Notification Sink Topic Name", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the topic for the notifications. This is required in case 'sink' is in the list of enabled channels" },
+    "pollIntervalMs": { "index": 48, "kind": "parameter", "displayName": "Poll Interval Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "500ms", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait for new change events to appear after receiving no events, given in milliseconds. Defaults to 500 ms." },
+    "postProcessors": { "index": 49, "kind": "parameter", "displayName": "Post Processors", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Optional list of post processors. The processors are defined using '.type' config option and configured using options ''" },
+    "provideTransactionMetadata": { "index": 50, "kind": "parameter", "displayName": "Provide Transaction Metadata", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Enables transaction metadata extraction together with event counting" },
+    "retriableRestartConnectorWaitMs": { "index": 51, "kind": "parameter", "displayName": "Retriable Restart Connector Wait Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time to wait before restarting connector after retriable exception occurs. Defaults to 10000ms." },
+    "schemaHistoryInternal": { "index": 52, "kind": "parameter", "displayName": "Schema History Internal", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.storage.kafka.history.KafkaSchemaHistory", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SchemaHistory class that should be used to store and recover database schema changes. The configuration properties for the history are prefixed with the 'schema.history.internal.' string." },
+    "schemaHistoryInternalFileFilename": { "index": 53, "kind": "parameter", "displayName": "Schema History Internal File Filename", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The path to the file that will be used to record the database schema history" },
+    "schemaHistoryInternalSkipUnparseableDdl": { "index": 54, "kind": "parameter", "displayName": "Schema History Internal Skip Unparseable Ddl", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the action Debezium will take when it meets a DDL statement in binlog, that it cannot parse.By default the connector will stop operating but by changing the setting it can ignore the statements which it cannot parse. If skipping is enabled then Debezium can miss metadata changes." },
+    "schemaHistoryInternalStoreOnlyCapturedDatabasesDdl": { "index": 55, "kind": "parameter", "displayName": "Schema History Internal Store Only Captured Databases Ddl", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (true) only DDL that manipulates a table from captured schema\/database will be stored. If set to false, then Debezium will store all incoming DDL statements." },
+    "schemaHistoryInternalStoreOnlyCapturedTablesDdl": { "index": 56, "kind": "parameter", "displayName": "Schema History Internal Store Only Captured Tables Ddl", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls what DDL will Debezium store in database schema history. By default (false) Debezium will store all incoming DDL statements. If set to true, then only DDL that manipulates a captured table will be stored." },
+    "schemaNameAdjustmentMode": { "index": 57, "kind": "parameter", "displayName": "Schema Name Adjustment Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "none", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Specify how schema names should be adjusted for compatibility with the message converter used by the connector, including: 'avro' replaces the characters that cannot be used in the Avro type name with underscore; 'avro_unicode' replaces the underscore or characters that cannot be used in the Avro type name with corresponding unicode like _uxxxx. Note: _ is an escape sequence like backslash in Java;'none' does not apply any adjustment (default)" },
+    "signalDataCollection": { "index": 58, "kind": "parameter", "displayName": "Signal Data Collection", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the data collection that is used to send signals\/commands to Debezium. Signaling is disabled when not set." },
+    "signalEnabledChannels": { "index": 59, "kind": "parameter", "displayName": "Signal Enabled Channels", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "source", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "List of channels names that are enabled. Source channel is enabled by default" },
+    "signalPollIntervalMs": { "index": 60, "kind": "parameter", "displayName": "Signal Poll Interval Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5s", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Interval for looking for new signals in registered channels, given in milliseconds. Defaults to 5 seconds." },
+    "skippedOperations": { "index": 61, "kind": "parameter", "displayName": "Skipped Operations", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "t", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The comma-separated list of operations to skip during streaming, defined as: 'c' for inserts\/create; 'u' for updates; 'd' for deletes, 't' for truncates, and 'none' to indicate nothing skipped. By default, only truncate operations will be skipped." },
+    "snapshotDelayMs": { "index": 62, "kind": "parameter", "displayName": "Snapshot Delay Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "0ms", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms." },
+    "snapshotFetchSize": { "index": 63, "kind": "parameter", "displayName": "Snapshot Fetch Size", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of records that should be loaded into memory while performing a snapshot." },
+    "snapshotIncludeCollectionList": { "index": 64, "kind": "parameter", "displayName": "Snapshot Include Collection List", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This setting must be set to specify a list of tables\/collections whose snapshot must be taken on creating or restarting the connector." },
+    "snapshotIsolationMode": { "index": 65, "kind": "parameter", "displayName": "Snapshot Isolation Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "repeatable_read", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls which transaction isolation level is used and how long the connector locks the captured tables. The default is 'repeatable_read', which means that repeatable read isolation level is used. In addition, type of acquired lock during schema snapshot depends on snapshot.locking.mode property. Using a value of 'exclusive' ensures that the connector holds the type of lock specified with snapshot.locking.mode property (and thus prevents any reads and updates) for all captured tables during the entire snapshot duration. When 'snapshot' is specified, connector runs the initial snapshot in SNAPSHOT isolation level, which guarantees snapshot consistency. In addition, neither table nor row-level locks are held. When 'read_committed' is specified, connector runs the initial snapshot in READ COMMITTED isolation level. No long-running locks are taken, so that initial snapshot does not prevent other transactions from updating table rows. Snapshot consistency is not guaranteed.In 'read_uncommitted' mode neither table nor row-level locks are acquired, but connector does not guarantee snapshot consistency." },
+    "snapshotLockTimeoutMs": { "index": 66, "kind": "parameter", "displayName": "Snapshot Lock Timeout Ms", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "10s", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds" },
+    "snapshotMaxThreads": { "index": 67, "kind": "parameter", "displayName": "Snapshot Max Threads", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The maximum number of threads used to perform the snapshot. Defaults to 1." },
+    "snapshotMode": { "index": 68, "kind": "parameter", "displayName": "Snapshot Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "initial", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The criteria for running a snapshot upon startup of the connector. Select one of the following snapshot options: 'initial' (default): If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures the current full state of the configured tables. After the snapshot completes, the connector begins to stream changes from the transaction log.; 'initial_only': The connector performs a snapshot as it does for the 'initial' option, but after the connector completes the snapshot, it stops, and does not stream changes from the transaction log.; 'schema_only': If the connector does not detect any offsets for the logical server name, it runs a snapshot that captures only the schema (table structures), but not any table data. After the snapshot completes, the connector begins to stream changes from the transaction log." },
+    "snapshotModeConfigurationBasedSnapshotData": { "index": 69, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot Data", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not." },
+    "snapshotModeConfigurationBasedSnapshotOnDataError": { "index": 70, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot On Data Error", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotOnSchemaError": { "index": 71, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot On Schema Error", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error." },
+    "snapshotModeConfigurationBasedSnapshotSchema": { "index": 72, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Snapshot Schema", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not." },
+    "snapshotModeConfigurationBasedStartStream": { "index": 73, "kind": "parameter", "displayName": "Snapshot Mode Configuration Based Start Stream", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot." },
+    "snapshotModeCustomName": { "index": 74, "kind": "parameter", "displayName": "Snapshot Mode Custom Name", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot." },
+    "snapshotSelectStatementOverrides": { "index": 75, "kind": "parameter", "displayName": "Snapshot Select Statement Overrides", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted." },
+    "snapshotTablesOrderByRowCount": { "index": 76, "kind": "parameter", "displayName": "Snapshot Tables Order By Row Count", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "disabled", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Controls the order in which tables are processed in the initial snapshot. A descending value will order the tables by row count descending. A ascending value will order the tables by row count ascending. A value of disabled (the default) will disable ordering by row count." },
+    "sourceinfoStructMaker": { "index": 77, "kind": "parameter", "displayName": "Sourceinfo Struct Maker", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.connector.sqlserver.SqlServerSourceInfoStructMaker", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct." },
+    "tableExcludeList": { "index": 78, "kind": "parameter", "displayName": "Table Exclude List", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "A comma-separated list of regular expressions that match the fully-qualified names of tables to be excluded from monitoring" },
+    "tableIgnoreBuiltin": { "index": 79, "kind": "parameter", "displayName": "Table Ignore Builtin", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Flag specifying whether built-in tables should be ignored." },
+    "tableIncludeList": { "index": 80, "kind": "parameter", "displayName": "Table Include List", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The tables for which changes are to be captured" },
+    "timePrecisionMode": { "index": 81, "kind": "parameter", "displayName": "Time Precision Mode", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "adaptive", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Time, date, and timestamps can be represented with different kinds of precisions, including: 'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision; 'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond precision regardless of the database columns' precision." },
+    "tombstonesOnDelete": { "index": 82, "kind": "parameter", "displayName": "Tombstones On Delete", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Whether delete operations should be represented by a delete event and a subsequent tombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted." },
+    "topicNamingStrategy": { "index": 83, "kind": "parameter", "displayName": "Topic Naming Strategy", "group": "sqlserver", "label": "consumer,sqlserver", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "io.debezium.schema.SchemaTopicNamingStrategy", "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "The name of the TopicNamingStrategy class that should be used to determine the topic name for data change, schema change, transaction, heartbeat event etc." },
+    "topicPrefix": { "index": 84, "kind": "parameter", "displayName": "Topic Prefix", "group": "sqlserver", "label": "consumer,sqlserver", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.debezium.configuration.SqlServerConnectorEmbeddedDebeziumConfiguration", "configurationField": "configuration", "description": "Topic prefix that identifies and provides a namespace for the particular database server\/cluster is capturing changes. The topic prefix should be unique across all other connectors, since it is used as a prefix for all Kafka topic names that receive events emitted by this connector. Only alphanumeric characters, hyphens, dots and underscores must be accepted." }
   }
 }
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/grpc.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/grpc.json
index aebe218..cad341d 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/grpc.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/grpc.json
@@ -43,30 +43,41 @@
     "consumerStrategy": { "index": 6, "kind": "parameter", "displayName": "Consumer Strategy", "group": "consumer", "label": "consumer", "required": false, "type": "object", "javaType": "org.apache.camel.component.grpc.GrpcConsumerStrategy", "enum": [ "AGGREGATION", "PROPAGATION", "DELEGATION" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "PROPAGATION", "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "This option specifies the top-level strategy for processing service requests and responses in streaming mode. If an aggregation strategy is selected, all requests will be accumulated in the list, then transferred to the flow, and the accumulated responses will be sent to the sender. If a propagation strategy is selected, request is sent to the stream, and the response will be immediately sent back to the sender. If a delegation strategy is selected, request is sent to the stream, but no response generated under the assumption that all necessary responses will be sent at another part of route. Delegation strategy always comes with routeControlledStreamObserver=true to be able to achieve the assumption." },
     "forwardOnCompleted": { "index": 7, "kind": "parameter", "displayName": "Forward On Completed", "group": "consumer", "label": "consumer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Determines if onCompleted events should be pushed to the Camel route." },
     "forwardOnError": { "index": 8, "kind": "parameter", "displayName": "Forward On Error", "group": "consumer", "label": "consumer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Determines if onError events should be pushed to the Camel route. Exceptions will be set as message body." },
-    "maxConcurrentCallsPerConnection": { "index": 9, "kind": "parameter", "displayName": "Max Concurrent Calls Per Connection", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 2147483647, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "The maximum number of concurrent calls permitted for each incoming server connection" },
-    "routeControlledStreamObserver": { "index": 10, "kind": "parameter", "displayName": "Route Controlled Stream Observer", "group": "consumer", "label": "consumer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Lets the route to take control over stream observer. If this value is set to true, then the response observer of gRPC call will be set with the name GrpcConstants.GRPC_RESPONSE_OBSERVER in the Exchange object. Please note that the stream observer's onNext(), onError(), onCompleted() methods should be called in the route." },
-    "bridgeErrorHandler": { "index": 11, "kind": "parameter", "displayName": "Bridge Error Handler", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions (if possible) occurred while the Camel consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. Important: This is only possible if the 3rd party component allows Camel to be alerted if an exception was thrown. Some components handle this internally only, and therefore bridgeErrorHandler is not possible. In other situations we may improve the Camel component to hook into the 3rd party component and make this possible for future releases. 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." },
-    "exceptionHandler": { "index": 12, "kind": "parameter", "displayName": "Exception Handler", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "object", "javaType": "org.apache.camel.spi.ExceptionHandler", "optionalPrefix": "consumer.", "deprecated": false, "autowired": false, "secret": false, "description": "To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the consumer will deal with exceptions, that will be logged at WARN or ERROR level and ignored." },
-    "exchangePattern": { "index": 13, "kind": "parameter", "displayName": "Exchange Pattern", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "object", "javaType": "org.apache.camel.ExchangePattern", "enum": [ "InOnly", "InOut" ], "deprecated": false, "autowired": false, "secret": false, "description": "Sets the exchange pattern when the consumer creates an exchange." },
-    "autoDiscoverClientInterceptors": { "index": 14, "kind": "parameter", "displayName": "Auto Discover Client Interceptors", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Setting the autoDiscoverClientInterceptors mechanism, if true, the component will look for a ClientInterceptor instance in the registry automatically otherwise it will skip that checking." },
-    "inheritExchangePropertiesForReplies": { "index": 15, "kind": "parameter", "displayName": "Inherit Exchange Properties For Replies", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Copies exchange properties from original exchange to all exchanges created for route defined by streamRepliesTo." },
-    "method": { "index": 16, "kind": "parameter", "displayName": "Method", "group": "producer", "label": "producer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "gRPC method name" },
-    "producerStrategy": { "index": 17, "kind": "parameter", "displayName": "Producer Strategy", "group": "producer", "label": "producer", "required": false, "type": "object", "javaType": "org.apache.camel.component.grpc.GrpcProducerStrategy", "enum": [ "SIMPLE", "STREAMING" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "SIMPLE", "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "The mode used to communicate with a remote gRPC server. In SIMPLE mode a single exchange is translated into a remote procedure call. In STREAMING mode all exchanges will be sent within the same request (input and output of the recipient gRPC service must be of type 'stream')." },
-    "streamRepliesTo": { "index": 18, "kind": "parameter", "displayName": "Stream Replies To", "group": "producer", "label": "producer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "When using STREAMING client mode, it indicates the endpoint where responses should be forwarded." },
-    "toRouteControlledStreamObserver": { "index": 19, "kind": "parameter", "displayName": "To Route Controlled Stream Observer", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Expects that exchange property GrpcConstants.GRPC_RESPONSE_OBSERVER is set. Takes its value and calls onNext, onError and onComplete on that StreamObserver. All other gRPC parameters are ignored." },
-    "userAgent": { "index": 20, "kind": "parameter", "displayName": "User Agent", "group": "producer", "label": "producer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "The user agent header passed to the server" },
-    "lazyStartProducer": { "index": 21, "kind": "parameter", "displayName": "Lazy Start Producer", "group": "producer (advanced)", "label": "producer,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing." },
-    "synchronous": { "index": 22, "kind": "parameter", "displayName": "Synchronous", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Sets whether synchronous processing should be strictly used" },
-    "authenticationType": { "index": 23, "kind": "parameter", "displayName": "Authentication Type", "group": "security", "label": "security", "required": false, "type": "object", "javaType": "org.apache.camel.component.grpc.GrpcAuthType", "enum": [ "NONE", "GOOGLE", "JWT" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "NONE", "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Authentication method type in advance to the SSL\/TLS negotiation" },
-    "jwtAlgorithm": { "index": 24, "kind": "parameter", "displayName": "Jwt Algorithm", "group": "security", "label": "security", "required": false, "type": "object", "javaType": "org.apache.camel.component.grpc.auth.jwt.JwtAlgorithm", "enum": [ "HMAC256", "HMAC384", "HMAC512" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "HMAC256", "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "JSON Web Token sign algorithm" },
-    "jwtIssuer": { "index": 25, "kind": "parameter", "displayName": "Jwt Issuer", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "JSON Web Token issuer" },
-    "jwtSecret": { "index": 26, "kind": "parameter", "displayName": "Jwt Secret", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "JSON Web Token secret" },
-    "jwtSubject": { "index": 27, "kind": "parameter", "displayName": "Jwt Subject", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "JSON Web Token subject" },
-    "keyCertChainResource": { "index": 28, "kind": "parameter", "displayName": "Key Cert Chain Resource", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "supportFileReference": true, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "The X.509 certificate chain file resource in PEM format link" },
-    "keyPassword": { "index": 29, "kind": "parameter", "displayName": "Key Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "The PKCS#8 private key file password" },
-    "keyResource": { "index": 30, "kind": "parameter", "displayName": "Key Resource", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "supportFileReference": true, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "The PKCS#8 private key file resource in PEM format link" },
-    "negotiationType": { "index": 31, "kind": "parameter", "displayName": "Negotiation Type", "group": "security", "label": "security", "required": false, "type": "object", "javaType": "io.grpc.netty.NegotiationType", "enum": [ "TLS", "PLAINTEXT_UPGRADE", "PLAINTEXT" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "PLAINTEXT", "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Identifies the security negotiation type used for HTTP\/2 communication" },
-    "serviceAccountResource": { "index": 32, "kind": "parameter", "displayName": "Service Account Resource", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "supportFileReference": true, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Service Account key file in JSON format resource link supported by the Google Cloud SDK" },
-    "trustCertCollectionResource": { "index": 33, "kind": "parameter", "displayName": "Trust Cert Collection Resource", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "supportFileReference": true, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "The trusted certificates collection file resource in PEM format for verifying the remote endpoint's certificate" }
+    "initialFlowControlWindow": { "index": 9, "kind": "parameter", "displayName": "Initial Flow Control Window", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 1048576, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Sets the initial flow control window in bytes." },
+    "keepAliveTime": { "index": 10, "kind": "parameter", "displayName": "Keep Alive Time", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 7200000, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Sets a custom keepalive time in milliseconds, the delay time for sending next keepalive ping. A value of Long.MAX_VALUE or a value greater or equal to NettyServerBuilder.AS_LARGE_AS_INFINITE will disable keepalive." },
+    "keepAliveTimeout": { "index": 11, "kind": "parameter", "displayName": "Keep Alive Timeout", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 20000, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Sets a custom keepalive timeout in milliseconds, the timeout for keepalive ping requests." },
+    "maxConcurrentCallsPerConnection": { "index": 12, "kind": "parameter", "displayName": "Max Concurrent Calls Per Connection", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 2147483647, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "The maximum number of concurrent calls permitted for each incoming server connection. Defaults to no limit." },
+    "maxConnectionAge": { "index": 13, "kind": "parameter", "displayName": "Max Connection Age", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 9223372036854775807, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Sets a custom max connection age in milliseconds. Connections lasting longer than which will be gracefully terminated. A random jitter of \/-10% will be added to the value. A value of Long.MAX_VALUE (the default) or a value greater or equal to NettyServerBuilder.AS_LARGE_AS_INFINITE will disable max connection age." },
+    "maxConnectionAgeGrace": { "index": 14, "kind": "parameter", "displayName": "Max Connection Age Grace", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 9223372036854775807, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Sets a custom grace time in milliseconds for the graceful connection termination. A value of Long.MAX_VALUE (the default) or a value greater or equal to NettyServerBuilder.AS_LARGE_AS_INFINITE is considered infinite." },
+    "maxConnectionIdle": { "index": 15, "kind": "parameter", "displayName": "Max Connection Idle", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 9223372036854775807, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Sets a custom max connection idle time in milliseconds. Connection being idle for longer than which will be gracefully terminated. A value of Long.MAX_VALUE (the default) or a value greater or equal to NettyServerBuilder.AS_LARGE_AS_INFINITE will disable max connection idle" },
+    "maxInboundMetadataSize": { "index": 16, "kind": "parameter", "displayName": "Max Inbound Metadata Size", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 8192, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Sets the maximum size of metadata allowed to be received. The default is 8 KiB." },
+    "maxRstFramesPerWindow": { "index": 17, "kind": "parameter", "displayName": "Max Rst Frames Per Window", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Limits the rate of incoming RST_STREAM frames per connection to maxRstFramesPerWindow per maxRstPeriodSeconds. This option MUST be used in conjunction with maxRstPeriodSeconds for it to be effective." },
+    "maxRstPeriodSeconds": { "index": 18, "kind": "parameter", "displayName": "Max Rst Period Seconds", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 0, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Limits the rate of incoming RST_STREAM frames per maxRstPeriodSeconds. This option MUST be used in conjunction with maxRstFramesPerWindow for it to be effective." },
+    "permitKeepAliveTime": { "index": 19, "kind": "parameter", "displayName": "Permit Keep Alive Time", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 300000, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Sets the most aggressive keep-alive time in milliseconds that clients are permitted to configure. The server will try to detect clients exceeding this rate and will forcefully close the connection." },
+    "permitKeepAliveWithoutCalls": { "index": 20, "kind": "parameter", "displayName": "Permit Keep Alive Without Calls", "group": "consumer", "label": "consumer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Sets whether to allow clients to send keep-alive HTTP\/ 2 PINGs even if there are no outstanding RPCs on the connection." },
+    "routeControlledStreamObserver": { "index": 21, "kind": "parameter", "displayName": "Route Controlled Stream Observer", "group": "consumer", "label": "consumer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Lets the route to take control over stream observer. If this value is set to true, then the response observer of gRPC call will be set with the name GrpcConstants.GRPC_RESPONSE_OBSERVER in the Exchange object. Please note that the stream observer's onNext(), onError(), onCompleted() methods should be called in the route." },
+    "bridgeErrorHandler": { "index": 22, "kind": "parameter", "displayName": "Bridge Error Handler", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions (if possible) occurred while the Camel consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. Important: This is only possible if the 3rd party component allows Camel to be alerted if an exception was thrown. Some components handle this internally only, and therefore bridgeErrorHandler is not possible. In other situations we may improve the Camel component to hook into the 3rd party component and make this possible for future releases. 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." },
+    "exceptionHandler": { "index": 23, "kind": "parameter", "displayName": "Exception Handler", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "object", "javaType": "org.apache.camel.spi.ExceptionHandler", "optionalPrefix": "consumer.", "deprecated": false, "autowired": false, "secret": false, "description": "To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the consumer will deal with exceptions, that will be logged at WARN or ERROR level and ignored." },
+    "exchangePattern": { "index": 24, "kind": "parameter", "displayName": "Exchange Pattern", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "object", "javaType": "org.apache.camel.ExchangePattern", "enum": [ "InOnly", "InOut" ], "deprecated": false, "autowired": false, "secret": false, "description": "Sets the exchange pattern when the consumer creates an exchange." },
+    "autoDiscoverClientInterceptors": { "index": 25, "kind": "parameter", "displayName": "Auto Discover Client Interceptors", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Setting the autoDiscoverClientInterceptors mechanism, if true, the component will look for a ClientInterceptor instance in the registry automatically otherwise it will skip that checking." },
+    "inheritExchangePropertiesForReplies": { "index": 26, "kind": "parameter", "displayName": "Inherit Exchange Properties For Replies", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Copies exchange properties from original exchange to all exchanges created for route defined by streamRepliesTo." },
+    "method": { "index": 27, "kind": "parameter", "displayName": "Method", "group": "producer", "label": "producer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "gRPC method name" },
+    "producerStrategy": { "index": 28, "kind": "parameter", "displayName": "Producer Strategy", "group": "producer", "label": "producer", "required": false, "type": "object", "javaType": "org.apache.camel.component.grpc.GrpcProducerStrategy", "enum": [ "SIMPLE", "STREAMING" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "SIMPLE", "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "The mode used to communicate with a remote gRPC server. In SIMPLE mode a single exchange is translated into a remote procedure call. In STREAMING mode all exchanges will be sent within the same request (input and output of the recipient gRPC service must be of type 'stream')." },
+    "streamRepliesTo": { "index": 29, "kind": "parameter", "displayName": "Stream Replies To", "group": "producer", "label": "producer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "When using STREAMING client mode, it indicates the endpoint where responses should be forwarded." },
+    "toRouteControlledStreamObserver": { "index": 30, "kind": "parameter", "displayName": "To Route Controlled Stream Observer", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Expects that exchange property GrpcConstants.GRPC_RESPONSE_OBSERVER is set. Takes its value and calls onNext, onError and onComplete on that StreamObserver. All other gRPC parameters are ignored." },
+    "userAgent": { "index": 31, "kind": "parameter", "displayName": "User Agent", "group": "producer", "label": "producer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "The user agent header passed to the server" },
+    "lazyStartProducer": { "index": 32, "kind": "parameter", "displayName": "Lazy Start Producer", "group": "producer (advanced)", "label": "producer,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing." },
+    "synchronous": { "index": 33, "kind": "parameter", "displayName": "Synchronous", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Sets whether synchronous processing should be strictly used" },
+    "authenticationType": { "index": 34, "kind": "parameter", "displayName": "Authentication Type", "group": "security", "label": "security", "required": false, "type": "object", "javaType": "org.apache.camel.component.grpc.GrpcAuthType", "enum": [ "NONE", "GOOGLE", "JWT" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "NONE", "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Authentication method type in advance to the SSL\/TLS negotiation" },
+    "jwtAlgorithm": { "index": 35, "kind": "parameter", "displayName": "Jwt Algorithm", "group": "security", "label": "security", "required": false, "type": "object", "javaType": "org.apache.camel.component.grpc.auth.jwt.JwtAlgorithm", "enum": [ "HMAC256", "HMAC384", "HMAC512" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "HMAC256", "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "JSON Web Token sign algorithm" },
+    "jwtIssuer": { "index": 36, "kind": "parameter", "displayName": "Jwt Issuer", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "JSON Web Token issuer" },
+    "jwtSecret": { "index": 37, "kind": "parameter", "displayName": "Jwt Secret", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "JSON Web Token secret" },
+    "jwtSubject": { "index": 38, "kind": "parameter", "displayName": "Jwt Subject", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "JSON Web Token subject" },
+    "keyCertChainResource": { "index": 39, "kind": "parameter", "displayName": "Key Cert Chain Resource", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "supportFileReference": true, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "The X.509 certificate chain file resource in PEM format link" },
+    "keyPassword": { "index": 40, "kind": "parameter", "displayName": "Key Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "The PKCS#8 private key file password" },
+    "keyResource": { "index": 41, "kind": "parameter", "displayName": "Key Resource", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "supportFileReference": true, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "The PKCS#8 private key file resource in PEM format link" },
+    "negotiationType": { "index": 42, "kind": "parameter", "displayName": "Negotiation Type", "group": "security", "label": "security", "required": false, "type": "object", "javaType": "io.grpc.netty.NegotiationType", "enum": [ "TLS", "PLAINTEXT_UPGRADE", "PLAINTEXT" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "PLAINTEXT", "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Identifies the security negotiation type used for HTTP\/2 communication" },
+    "serviceAccountResource": { "index": 43, "kind": "parameter", "displayName": "Service Account Resource", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "supportFileReference": true, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "Service Account key file in JSON format resource link supported by the Google Cloud SDK" },
+    "trustCertCollectionResource": { "index": 44, "kind": "parameter", "displayName": "Trust Cert Collection Resource", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "supportFileReference": true, "configurationClass": "org.apache.camel.component.grpc.GrpcConfiguration", "configurationField": "configuration", "description": "The trusted certificates collection file resource in PEM format for verifying the remote endpoint's certificate" }
   }
 }
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/validator.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/validator.json
index 7d98ffe..81dd7dc 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/validator.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/validator.json
@@ -35,7 +35,7 @@
     "lazyStartProducer": { "index": 4, "kind": "parameter", "displayName": "Lazy Start Producer", "group": "producer (advanced)", "label": "producer,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing." },
     "errorHandler": { "index": 5, "kind": "parameter", "displayName": "Error Handler", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.support.processor.validation.ValidatorErrorHandler", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom org.apache.camel.processor.validation.ValidatorErrorHandler. The default error handler captures the errors and throws an exception." },
     "resourceResolver": { "index": 6, "kind": "parameter", "displayName": "Resource Resolver", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.w3c.dom.ls.LSResourceResolver", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom LSResourceResolver. Do not use together with resourceResolverFactory" },
-    "resourceResolverFactory": { "index": 7, "kind": "parameter", "displayName": "Resource Resolver Factory", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.validator.ValidatorResourceResolverFactory", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom LSResourceResolver which depends on a dynamic endpoint resource URI. The default resource resolver factory resturns a resource resolver which can read files from the class path and file system. Do not use together with resourceResolver." },
+    "resourceResolverFactory": { "index": 7, "kind": "parameter", "displayName": "Resource Resolver Factory", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.validator.ValidatorResourceResolverFactory", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom LSResourceResolver which depends on a dynamic endpoint resource URI. The default resource resolver factory returns a resource resolver which can read files from the class path and file system. Do not use together with resourceResolver." },
     "schemaFactory": { "index": 8, "kind": "parameter", "displayName": "Schema Factory", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "javax.xml.validation.SchemaFactory", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom javax.xml.validation.SchemaFactory" },
     "schemaLanguage": { "index": 9, "kind": "parameter", "displayName": "Schema Language", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "http:\/\/www.w3.org\/2001\/XMLSchema", "description": "Configures the W3C XML Schema Namespace URI." },
     "useSharedSchema": { "index": 10, "kind": "parameter", "displayName": "Use Shared Schema", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether the Schema instance should be shared or not. This option is introduced to work around a JDK 1.6.x bug. Xerces should not have this issue." }
diff --git a/components-starter/camel-debezium-db2-starter/src/main/docs/debezium-db2.json b/components-starter/camel-debezium-db2-starter/src/main/docs/debezium-db2.json
index 9218cce..2d572f2 100644
--- a/components-starter/camel-debezium-db2-starter/src/main/docs/debezium-db2.json
+++ b/components-starter/camel-debezium-db2-starter/src/main/docs/debezium-db2.json
@@ -413,6 +413,47 @@
       "defaultValue": "initial"
     },
     {
+      "name": "camel.component.debezium-db2.snapshot-mode-configuration-based-snapshot-data",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumDb2ComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-db2.snapshot-mode-configuration-based-snapshot-on-data-error",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumDb2ComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-db2.snapshot-mode-configuration-based-snapshot-on-schema-error",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumDb2ComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-db2.snapshot-mode-configuration-based-snapshot-schema",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumDb2ComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-db2.snapshot-mode-configuration-based-start-stream",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumDb2ComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-db2.snapshot-mode-custom-name",
+      "type": "java.lang.String",
+      "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumDb2ComponentConfiguration"
+    },
+    {
       "name": "camel.component.debezium-db2.snapshot-select-statement-overrides",
       "type": "java.lang.String",
       "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted.",
diff --git a/components-starter/camel-debezium-db2-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumDb2ComponentConfiguration.java b/components-starter/camel-debezium-db2-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumDb2ComponentConfiguration.java
index d97dd16..f0115db 100644
--- a/components-starter/camel-debezium-db2-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumDb2ComponentConfiguration.java
+++ b/components-starter/camel-debezium-db2-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumDb2ComponentConfiguration.java
@@ -396,6 +396,40 @@
      */
     private String snapshotMode = "initial";
     /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the data should be snapshotted or not.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotData = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the data should be snapshotted or not in case of
+     * error.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotOnDataError = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the schema should be snapshotted or not in case of
+     * error.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotOnSchemaError = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the schema should be snapshotted or not.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotSchema = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the stream should start or not after snapshot.
+     */
+    private Boolean snapshotModeConfigurationBasedStartStream = false;
+    /**
+     * When 'snapshot.mode' is set as custom, this setting must be set to
+     * specify a the name of the custom implementation provided in the 'name()'
+     * method. The implementations must implement the 'Snapshotter' interface
+     * and is called on each app boot to determine whether to do a snapshot.
+     */
+    private String snapshotModeCustomName;
+    /**
      * This property contains a comma-separated list of fully-qualified tables
      * (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the
      * specific connectors. Select statements for the individual tables are
@@ -954,6 +988,59 @@
         this.snapshotMode = snapshotMode;
     }
 
+    public Boolean getSnapshotModeConfigurationBasedSnapshotData() {
+        return snapshotModeConfigurationBasedSnapshotData;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotData(
+            Boolean snapshotModeConfigurationBasedSnapshotData) {
+        this.snapshotModeConfigurationBasedSnapshotData = snapshotModeConfigurationBasedSnapshotData;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotOnDataError() {
+        return snapshotModeConfigurationBasedSnapshotOnDataError;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotOnDataError(
+            Boolean snapshotModeConfigurationBasedSnapshotOnDataError) {
+        this.snapshotModeConfigurationBasedSnapshotOnDataError = snapshotModeConfigurationBasedSnapshotOnDataError;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotOnSchemaError() {
+        return snapshotModeConfigurationBasedSnapshotOnSchemaError;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotOnSchemaError(
+            Boolean snapshotModeConfigurationBasedSnapshotOnSchemaError) {
+        this.snapshotModeConfigurationBasedSnapshotOnSchemaError = snapshotModeConfigurationBasedSnapshotOnSchemaError;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotSchema() {
+        return snapshotModeConfigurationBasedSnapshotSchema;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotSchema(
+            Boolean snapshotModeConfigurationBasedSnapshotSchema) {
+        this.snapshotModeConfigurationBasedSnapshotSchema = snapshotModeConfigurationBasedSnapshotSchema;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedStartStream() {
+        return snapshotModeConfigurationBasedStartStream;
+    }
+
+    public void setSnapshotModeConfigurationBasedStartStream(
+            Boolean snapshotModeConfigurationBasedStartStream) {
+        this.snapshotModeConfigurationBasedStartStream = snapshotModeConfigurationBasedStartStream;
+    }
+
+    public String getSnapshotModeCustomName() {
+        return snapshotModeCustomName;
+    }
+
+    public void setSnapshotModeCustomName(String snapshotModeCustomName) {
+        this.snapshotModeCustomName = snapshotModeCustomName;
+    }
+
     public String getSnapshotSelectStatementOverrides() {
         return snapshotSelectStatementOverrides;
     }
diff --git a/components-starter/camel-debezium-mongodb-starter/src/main/docs/debezium-mongodb.json b/components-starter/camel-debezium-mongodb-starter/src/main/docs/debezium-mongodb.json
index f5e1926..f3ba13d 100644
--- a/components-starter/camel-debezium-mongodb-starter/src/main/docs/debezium-mongodb.json
+++ b/components-starter/camel-debezium-mongodb-starter/src/main/docs/debezium-mongodb.json
@@ -196,13 +196,6 @@
       "defaultValue": 10000
     },
     {
-      "name": "camel.component.debezium-mongodb.mongodb-connection-mode",
-      "type": "java.lang.String",
-      "description": "The method used to connect to MongoDB cluster. Options include: 'replica_set' to individually connect to each replica set \/ shard 'sharded' (the default) to connect via single connection obtained from connection string",
-      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMongodbComponentConfiguration",
-      "defaultValue": "sharded"
-    },
-    {
       "name": "camel.component.debezium-mongodb.mongodb-connection-string",
       "type": "java.lang.String",
       "description": "Database connection string.",
@@ -439,6 +432,47 @@
       "defaultValue": "initial"
     },
     {
+      "name": "camel.component.debezium-mongodb.snapshot-mode-configuration-based-snapshot-data",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMongodbComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-mongodb.snapshot-mode-configuration-based-snapshot-on-data-error",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMongodbComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-mongodb.snapshot-mode-configuration-based-snapshot-on-schema-error",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMongodbComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-mongodb.snapshot-mode-configuration-based-snapshot-schema",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMongodbComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-mongodb.snapshot-mode-configuration-based-start-stream",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMongodbComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-mongodb.snapshot-mode-custom-name",
+      "type": "java.lang.String",
+      "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMongodbComponentConfiguration"
+    },
+    {
       "name": "camel.component.debezium-mongodb.sourceinfo-struct-maker",
       "type": "java.lang.String",
       "description": "The name of the SourceInfoStructMaker class that returns SourceInfo schema and struct.",
diff --git a/components-starter/camel-debezium-mongodb-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumMongodbComponentConfiguration.java b/components-starter/camel-debezium-mongodb-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumMongodbComponentConfiguration.java
index 98a125b..466ccaf 100644
--- a/components-starter/camel-debezium-mongodb-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumMongodbComponentConfiguration.java
+++ b/components-starter/camel-debezium-mongodb-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumMongodbComponentConfiguration.java
@@ -244,13 +244,6 @@
      */
     private String mongodbAuthsource = "admin";
     /**
-     * The method used to connect to MongoDB cluster. Options include:
-     * 'replica_set' to individually connect to each replica set / shard
-     * 'sharded' (the default) to connect via single connection obtained from
-     * connection string
-     */
-    private String mongodbConnectionMode = "sharded";
-    /**
      * Database connection string.
      */
     private String mongodbConnectionString;
@@ -406,6 +399,40 @@
      */
     private String snapshotMode = "initial";
     /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the data should be snapshotted or not.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotData = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the data should be snapshotted or not in case of
+     * error.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotOnDataError = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the schema should be snapshotted or not in case of
+     * error.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotOnSchemaError = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the schema should be snapshotted or not.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotSchema = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the stream should start or not after snapshot.
+     */
+    private Boolean snapshotModeConfigurationBasedStartStream = false;
+    /**
+     * When 'snapshot.mode' is set as custom, this setting must be set to
+     * specify a the name of the custom implementation provided in the 'name()'
+     * method. The implementations must implement the 'Snapshotter' interface
+     * and is called on each app boot to determine whether to do a snapshot.
+     */
+    private String snapshotModeCustomName;
+    /**
      * The name of the SourceInfoStructMaker class that returns SourceInfo
      * schema and struct.
      */
@@ -701,14 +728,6 @@
         this.mongodbAuthsource = mongodbAuthsource;
     }
 
-    public String getMongodbConnectionMode() {
-        return mongodbConnectionMode;
-    }
-
-    public void setMongodbConnectionMode(String mongodbConnectionMode) {
-        this.mongodbConnectionMode = mongodbConnectionMode;
-    }
-
     public String getMongodbConnectionString() {
         return mongodbConnectionString;
     }
@@ -949,6 +968,59 @@
         this.snapshotMode = snapshotMode;
     }
 
+    public Boolean getSnapshotModeConfigurationBasedSnapshotData() {
+        return snapshotModeConfigurationBasedSnapshotData;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotData(
+            Boolean snapshotModeConfigurationBasedSnapshotData) {
+        this.snapshotModeConfigurationBasedSnapshotData = snapshotModeConfigurationBasedSnapshotData;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotOnDataError() {
+        return snapshotModeConfigurationBasedSnapshotOnDataError;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotOnDataError(
+            Boolean snapshotModeConfigurationBasedSnapshotOnDataError) {
+        this.snapshotModeConfigurationBasedSnapshotOnDataError = snapshotModeConfigurationBasedSnapshotOnDataError;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotOnSchemaError() {
+        return snapshotModeConfigurationBasedSnapshotOnSchemaError;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotOnSchemaError(
+            Boolean snapshotModeConfigurationBasedSnapshotOnSchemaError) {
+        this.snapshotModeConfigurationBasedSnapshotOnSchemaError = snapshotModeConfigurationBasedSnapshotOnSchemaError;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotSchema() {
+        return snapshotModeConfigurationBasedSnapshotSchema;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotSchema(
+            Boolean snapshotModeConfigurationBasedSnapshotSchema) {
+        this.snapshotModeConfigurationBasedSnapshotSchema = snapshotModeConfigurationBasedSnapshotSchema;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedStartStream() {
+        return snapshotModeConfigurationBasedStartStream;
+    }
+
+    public void setSnapshotModeConfigurationBasedStartStream(
+            Boolean snapshotModeConfigurationBasedStartStream) {
+        this.snapshotModeConfigurationBasedStartStream = snapshotModeConfigurationBasedStartStream;
+    }
+
+    public String getSnapshotModeCustomName() {
+        return snapshotModeCustomName;
+    }
+
+    public void setSnapshotModeCustomName(String snapshotModeCustomName) {
+        this.snapshotModeCustomName = snapshotModeCustomName;
+    }
+
     public String getSourceinfoStructMaker() {
         return sourceinfoStructMaker;
     }
diff --git a/components-starter/camel-debezium-mysql-starter/src/main/docs/debezium-mysql.json b/components-starter/camel-debezium-mysql-starter/src/main/docs/debezium-mysql.json
index 41d5195..58711cf 100644
--- a/components-starter/camel-debezium-mysql-starter/src/main/docs/debezium-mysql.json
+++ b/components-starter/camel-debezium-mysql-starter/src/main/docs/debezium-mysql.json
@@ -613,6 +613,47 @@
       "defaultValue": "initial"
     },
     {
+      "name": "camel.component.debezium-mysql.snapshot-mode-configuration-based-snapshot-data",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMySqlComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-mysql.snapshot-mode-configuration-based-snapshot-on-data-error",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMySqlComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-mysql.snapshot-mode-configuration-based-snapshot-on-schema-error",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMySqlComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-mysql.snapshot-mode-configuration-based-snapshot-schema",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMySqlComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-mysql.snapshot-mode-configuration-based-start-stream",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMySqlComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-mysql.snapshot-mode-custom-name",
+      "type": "java.lang.String",
+      "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMySqlComponentConfiguration"
+    },
+    {
       "name": "camel.component.debezium-mysql.snapshot-new-tables",
       "type": "java.lang.String",
       "description": "BETA FEATURE: On connector restart, the connector will check if there have been any new tables added to the configuration, and snapshot them. There is presently only two options: 'off': Default behavior. Do not snapshot new tables. 'parallel': The snapshot of the new tables will occur in parallel to the continued binlog reading of the old tables. When the snapshot completes, an independent binlog reader will begin reading the events for the new tables until it catches up to present time. At this point, both old and new binlog readers will be momentarily halted and new binlog reader will start that will read the binlog for all configured tables. The parallel binlog reader will have a configured server id of 10000 the primary binlog reader's server id.",
@@ -620,6 +661,19 @@
       "defaultValue": "off"
     },
     {
+      "name": "camel.component.debezium-mysql.snapshot-query-mode",
+      "type": "java.lang.String",
+      "description": "Controls query used during the snapshot",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMySqlComponentConfiguration",
+      "defaultValue": "select_all"
+    },
+    {
+      "name": "camel.component.debezium-mysql.snapshot-query-mode-custom-name",
+      "type": "java.lang.String",
+      "description": "When 'snapshot.query.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'SnapshotterQuery' interface and is called to determine how to build queries during snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumMySqlComponentConfiguration"
+    },
+    {
       "name": "camel.component.debezium-mysql.snapshot-select-statement-overrides",
       "type": "java.lang.String",
       "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted.",
diff --git a/components-starter/camel-debezium-mysql-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumMySqlComponentConfiguration.java b/components-starter/camel-debezium-mysql-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumMySqlComponentConfiguration.java
index 9701b7d..8ff62d9 100644
--- a/components-starter/camel-debezium-mysql-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumMySqlComponentConfiguration.java
+++ b/components-starter/camel-debezium-mysql-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumMySqlComponentConfiguration.java
@@ -629,6 +629,40 @@
      */
     private String snapshotMode = "initial";
     /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the data should be snapshotted or not.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotData = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the data should be snapshotted or not in case of
+     * error.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotOnDataError = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the schema should be snapshotted or not in case of
+     * error.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotOnSchemaError = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the schema should be snapshotted or not.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotSchema = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the stream should start or not after snapshot.
+     */
+    private Boolean snapshotModeConfigurationBasedStartStream = false;
+    /**
+     * When 'snapshot.mode' is set as custom, this setting must be set to
+     * specify a the name of the custom implementation provided in the 'name()'
+     * method. The implementations must implement the 'Snapshotter' interface
+     * and is called on each app boot to determine whether to do a snapshot.
+     */
+    private String snapshotModeCustomName;
+    /**
      * BETA FEATURE: On connector restart, the connector will check if there
      * have been any new tables added to the configuration, and snapshot them.
      * There is presently only two options: 'off': Default behavior. Do not
@@ -643,6 +677,18 @@
      */
     private String snapshotNewTables = "off";
     /**
+     * Controls query used during the snapshot
+     */
+    private String snapshotQueryMode = "select_all";
+    /**
+     * When 'snapshot.query.mode' is set as custom, this setting must be set to
+     * specify a the name of the custom implementation provided in the 'name()'
+     * method. The implementations must implement the 'SnapshotterQuery'
+     * interface and is called to determine how to build queries during
+     * snapshot.
+     */
+    private String snapshotQueryModeCustomName;
+    /**
      * This property contains a comma-separated list of fully-qualified tables
      * (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the
      * specific connectors. Select statements for the individual tables are
@@ -1445,6 +1491,59 @@
         this.snapshotMode = snapshotMode;
     }
 
+    public Boolean getSnapshotModeConfigurationBasedSnapshotData() {
+        return snapshotModeConfigurationBasedSnapshotData;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotData(
+            Boolean snapshotModeConfigurationBasedSnapshotData) {
+        this.snapshotModeConfigurationBasedSnapshotData = snapshotModeConfigurationBasedSnapshotData;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotOnDataError() {
+        return snapshotModeConfigurationBasedSnapshotOnDataError;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotOnDataError(
+            Boolean snapshotModeConfigurationBasedSnapshotOnDataError) {
+        this.snapshotModeConfigurationBasedSnapshotOnDataError = snapshotModeConfigurationBasedSnapshotOnDataError;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotOnSchemaError() {
+        return snapshotModeConfigurationBasedSnapshotOnSchemaError;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotOnSchemaError(
+            Boolean snapshotModeConfigurationBasedSnapshotOnSchemaError) {
+        this.snapshotModeConfigurationBasedSnapshotOnSchemaError = snapshotModeConfigurationBasedSnapshotOnSchemaError;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotSchema() {
+        return snapshotModeConfigurationBasedSnapshotSchema;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotSchema(
+            Boolean snapshotModeConfigurationBasedSnapshotSchema) {
+        this.snapshotModeConfigurationBasedSnapshotSchema = snapshotModeConfigurationBasedSnapshotSchema;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedStartStream() {
+        return snapshotModeConfigurationBasedStartStream;
+    }
+
+    public void setSnapshotModeConfigurationBasedStartStream(
+            Boolean snapshotModeConfigurationBasedStartStream) {
+        this.snapshotModeConfigurationBasedStartStream = snapshotModeConfigurationBasedStartStream;
+    }
+
+    public String getSnapshotModeCustomName() {
+        return snapshotModeCustomName;
+    }
+
+    public void setSnapshotModeCustomName(String snapshotModeCustomName) {
+        this.snapshotModeCustomName = snapshotModeCustomName;
+    }
+
     public String getSnapshotNewTables() {
         return snapshotNewTables;
     }
@@ -1453,6 +1552,23 @@
         this.snapshotNewTables = snapshotNewTables;
     }
 
+    public String getSnapshotQueryMode() {
+        return snapshotQueryMode;
+    }
+
+    public void setSnapshotQueryMode(String snapshotQueryMode) {
+        this.snapshotQueryMode = snapshotQueryMode;
+    }
+
+    public String getSnapshotQueryModeCustomName() {
+        return snapshotQueryModeCustomName;
+    }
+
+    public void setSnapshotQueryModeCustomName(
+            String snapshotQueryModeCustomName) {
+        this.snapshotQueryModeCustomName = snapshotQueryModeCustomName;
+    }
+
     public String getSnapshotSelectStatementOverrides() {
         return snapshotSelectStatementOverrides;
     }
diff --git a/components-starter/camel-debezium-oracle-starter/src/main/docs/debezium-oracle.json b/components-starter/camel-debezium-oracle-starter/src/main/docs/debezium-oracle.json
index 49c0ab9..13ef141 100644
--- a/components-starter/camel-debezium-oracle-starter/src/main/docs/debezium-oracle.json
+++ b/components-starter/camel-debezium-oracle-starter/src/main/docs/debezium-oracle.json
@@ -20,6 +20,19 @@
       "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumOracleComponentConfiguration"
     },
     {
+      "name": "camel.component.debezium-oracle.archive-destination-name",
+      "type": "java.lang.String",
+      "description": "Sets the specific archive log destination as the source for reading archive logs.When not set, the connector will automatically select the first LOCAL and VALID destination.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumOracleComponentConfiguration"
+    },
+    {
+      "name": "camel.component.debezium-oracle.archive-log-hours",
+      "type": "java.lang.Long",
+      "description": "The number of hours in the past from SYSDATE to mine archive logs. Using 0 mines all available archive logs",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumOracleComponentConfiguration",
+      "defaultValue": 0
+    },
+    {
       "name": "camel.component.debezium-oracle.autowired-enabled",
       "type": "java.lang.Boolean",
       "description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which then gets configured on the component. This can be used for automatic configuring JDBC data sources, JMS connection factories, AWS Clients, etc.",
@@ -240,19 +253,6 @@
       "defaultValue": false
     },
     {
-      "name": "camel.component.debezium-oracle.log-mining-archive-destination-name",
-      "type": "java.lang.String",
-      "description": "Sets the specific archive log destination as the source for reading archive logs.When not set, the connector will automatically select the first LOCAL and VALID destination.",
-      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumOracleComponentConfiguration"
-    },
-    {
-      "name": "camel.component.debezium-oracle.log-mining-archive-log-hours",
-      "type": "java.lang.Long",
-      "description": "The number of hours in the past from SYSDATE to mine archive logs. Using 0 mines all available archive logs",
-      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumOracleComponentConfiguration",
-      "defaultValue": 0
-    },
-    {
       "name": "camel.component.debezium-oracle.log-mining-archive-log-only-mode",
       "type": "java.lang.Boolean",
       "description": "When set to 'false', the default, the connector will mine both archive log and redo logs to emit change events. When set to 'true', the connector will only mine archive logs. There are circumstances where its advantageous to only mine archive logs and accept latency in event emission due to frequent revolving redo logs.",
@@ -346,6 +346,13 @@
       "defaultValue": "LOG_MINING_FLUSH"
     },
     {
+      "name": "camel.component.debezium-oracle.log-mining-include-redo-sql",
+      "type": "java.lang.Boolean",
+      "description": "When enabled, the transaction log REDO SQL will be included in the source information block.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumOracleComponentConfiguration",
+      "defaultValue": false
+    },
+    {
       "name": "camel.component.debezium-oracle.log-mining-query-filter-mode",
       "type": "java.lang.String",
       "description": "Specifies how the filter configuration is applied to the LogMiner database query. none - The query does not apply any schema or table filters, all filtering is at runtime by the connector. in - The query uses SQL in-clause expressions to specify the schema or table filters. regex - The query uses Oracle REGEXP_LIKE expressions to specify the schema or table filters.",
@@ -651,6 +658,13 @@
       "defaultValue": "t"
     },
     {
+      "name": "camel.component.debezium-oracle.snapshot-database-errors-max-retries",
+      "type": "java.lang.Integer",
+      "description": "The number of attempts to retry database errors during snapshots before failing.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumOracleComponentConfiguration",
+      "defaultValue": 0
+    },
+    {
       "name": "camel.component.debezium-oracle.snapshot-delay-ms",
       "type": "java.lang.Long",
       "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms. The option is a long type.",
@@ -704,6 +718,47 @@
       "defaultValue": "initial"
     },
     {
+      "name": "camel.component.debezium-oracle.snapshot-mode-configuration-based-snapshot-data",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumOracleComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-oracle.snapshot-mode-configuration-based-snapshot-on-data-error",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumOracleComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-oracle.snapshot-mode-configuration-based-snapshot-on-schema-error",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumOracleComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-oracle.snapshot-mode-configuration-based-snapshot-schema",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumOracleComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-oracle.snapshot-mode-configuration-based-start-stream",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumOracleComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-oracle.snapshot-mode-custom-name",
+      "type": "java.lang.String",
+      "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumOracleComponentConfiguration"
+    },
+    {
       "name": "camel.component.debezium-oracle.snapshot-select-statement-overrides",
       "type": "java.lang.String",
       "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted.",
diff --git a/components-starter/camel-debezium-oracle-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumOracleComponentConfiguration.java b/components-starter/camel-debezium-oracle-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumOracleComponentConfiguration.java
index 2c19f42..2ddae60 100644
--- a/components-starter/camel-debezium-oracle-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumOracleComponentConfiguration.java
+++ b/components-starter/camel-debezium-oracle-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumOracleComponentConfiguration.java
@@ -129,6 +129,17 @@
      */
     private Boolean autowiredEnabled = true;
     /**
+     * Sets the specific archive log destination as the source for reading
+     * archive logs.When not set, the connector will automatically select the
+     * first LOCAL and VALID destination.
+     */
+    private String archiveDestinationName;
+    /**
+     * The number of hours in the past from SYSDATE to mine archive logs. Using
+     * 0 mines all available archive logs
+     */
+    private Long archiveLogHours = 0L;
+    /**
      * Specify how binary (blob, binary, etc.) columns should be represented in
      * change events, including: 'bytes' represents binary data as byte array
      * (default); 'base64' represents binary data as base64-encoded string;
@@ -291,17 +302,6 @@
      */
     private Boolean lobEnabled = false;
     /**
-     * Sets the specific archive log destination as the source for reading
-     * archive logs.When not set, the connector will automatically select the
-     * first LOCAL and VALID destination.
-     */
-    private String logMiningArchiveDestinationName;
-    /**
-     * The number of hours in the past from SYSDATE to mine archive logs. Using
-     * 0 mines all available archive logs
-     */
-    private Long logMiningArchiveLogHours = 0L;
-    /**
      * When set to 'false', the default, the connector will mine both archive
      * log and redo logs to emit change events. When set to 'true', the
      * connector will only mine archive logs. There are circumstances where its
@@ -379,6 +379,11 @@
      */
     private String logMiningFlushTableName = "LOG_MINING_FLUSH";
     /**
+     * When enabled, the transaction log REDO SQL will be included in the source
+     * information block.
+     */
+    private Boolean logMiningIncludeRedoSql = false;
+    /**
      * Specifies how the filter configuration is applied to the LogMiner
      * database query. none - The query does not apply any schema or table
      * filters, all filtering is at runtime by the connector. in - The query
@@ -603,6 +608,11 @@
      */
     private String skippedOperations = "t";
     /**
+     * The number of attempts to retry database errors during snapshots before
+     * failing.
+     */
+    private Integer snapshotDatabaseErrorsMaxRetries = 0;
+    /**
      * A delay period before a snapshot will begin, given in milliseconds.
      * Defaults to 0 ms. The option is a long type.
      */
@@ -668,6 +678,40 @@
      */
     private String snapshotMode = "initial";
     /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the data should be snapshotted or not.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotData = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the data should be snapshotted or not in case of
+     * error.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotOnDataError = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the schema should be snapshotted or not in case of
+     * error.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotOnSchemaError = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the schema should be snapshotted or not.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotSchema = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the stream should start or not after snapshot.
+     */
+    private Boolean snapshotModeConfigurationBasedStartStream = false;
+    /**
+     * When 'snapshot.mode' is set as custom, this setting must be set to
+     * specify a the name of the custom implementation provided in the 'name()'
+     * method. The implementations must implement the 'Snapshotter' interface
+     * and is called on each app boot to determine whether to do a snapshot.
+     */
+    private String snapshotModeCustomName;
+    /**
      * This property contains a comma-separated list of fully-qualified tables
      * (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the
      * specific connectors. Select statements for the individual tables are
@@ -856,6 +900,22 @@
         this.autowiredEnabled = autowiredEnabled;
     }
 
+    public String getArchiveDestinationName() {
+        return archiveDestinationName;
+    }
+
+    public void setArchiveDestinationName(String archiveDestinationName) {
+        this.archiveDestinationName = archiveDestinationName;
+    }
+
+    public Long getArchiveLogHours() {
+        return archiveLogHours;
+    }
+
+    public void setArchiveLogHours(Long archiveLogHours) {
+        this.archiveLogHours = archiveLogHours;
+    }
+
     public String getBinaryHandlingMode() {
         return binaryHandlingMode;
     }
@@ -1075,23 +1135,6 @@
         this.lobEnabled = lobEnabled;
     }
 
-    public String getLogMiningArchiveDestinationName() {
-        return logMiningArchiveDestinationName;
-    }
-
-    public void setLogMiningArchiveDestinationName(
-            String logMiningArchiveDestinationName) {
-        this.logMiningArchiveDestinationName = logMiningArchiveDestinationName;
-    }
-
-    public Long getLogMiningArchiveLogHours() {
-        return logMiningArchiveLogHours;
-    }
-
-    public void setLogMiningArchiveLogHours(Long logMiningArchiveLogHours) {
-        this.logMiningArchiveLogHours = logMiningArchiveLogHours;
-    }
-
     public Boolean getLogMiningArchiveLogOnlyMode() {
         return logMiningArchiveLogOnlyMode;
     }
@@ -1212,6 +1255,14 @@
         this.logMiningFlushTableName = logMiningFlushTableName;
     }
 
+    public Boolean getLogMiningIncludeRedoSql() {
+        return logMiningIncludeRedoSql;
+    }
+
+    public void setLogMiningIncludeRedoSql(Boolean logMiningIncludeRedoSql) {
+        this.logMiningIncludeRedoSql = logMiningIncludeRedoSql;
+    }
+
     public String getLogMiningQueryFilterMode() {
         return logMiningQueryFilterMode;
     }
@@ -1528,6 +1579,15 @@
         this.skippedOperations = skippedOperations;
     }
 
+    public Integer getSnapshotDatabaseErrorsMaxRetries() {
+        return snapshotDatabaseErrorsMaxRetries;
+    }
+
+    public void setSnapshotDatabaseErrorsMaxRetries(
+            Integer snapshotDatabaseErrorsMaxRetries) {
+        this.snapshotDatabaseErrorsMaxRetries = snapshotDatabaseErrorsMaxRetries;
+    }
+
     public Long getSnapshotDelayMs() {
         return snapshotDelayMs;
     }
@@ -1594,6 +1654,59 @@
         this.snapshotMode = snapshotMode;
     }
 
+    public Boolean getSnapshotModeConfigurationBasedSnapshotData() {
+        return snapshotModeConfigurationBasedSnapshotData;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotData(
+            Boolean snapshotModeConfigurationBasedSnapshotData) {
+        this.snapshotModeConfigurationBasedSnapshotData = snapshotModeConfigurationBasedSnapshotData;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotOnDataError() {
+        return snapshotModeConfigurationBasedSnapshotOnDataError;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotOnDataError(
+            Boolean snapshotModeConfigurationBasedSnapshotOnDataError) {
+        this.snapshotModeConfigurationBasedSnapshotOnDataError = snapshotModeConfigurationBasedSnapshotOnDataError;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotOnSchemaError() {
+        return snapshotModeConfigurationBasedSnapshotOnSchemaError;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotOnSchemaError(
+            Boolean snapshotModeConfigurationBasedSnapshotOnSchemaError) {
+        this.snapshotModeConfigurationBasedSnapshotOnSchemaError = snapshotModeConfigurationBasedSnapshotOnSchemaError;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotSchema() {
+        return snapshotModeConfigurationBasedSnapshotSchema;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotSchema(
+            Boolean snapshotModeConfigurationBasedSnapshotSchema) {
+        this.snapshotModeConfigurationBasedSnapshotSchema = snapshotModeConfigurationBasedSnapshotSchema;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedStartStream() {
+        return snapshotModeConfigurationBasedStartStream;
+    }
+
+    public void setSnapshotModeConfigurationBasedStartStream(
+            Boolean snapshotModeConfigurationBasedStartStream) {
+        this.snapshotModeConfigurationBasedStartStream = snapshotModeConfigurationBasedStartStream;
+    }
+
+    public String getSnapshotModeCustomName() {
+        return snapshotModeCustomName;
+    }
+
+    public void setSnapshotModeCustomName(String snapshotModeCustomName) {
+        this.snapshotModeCustomName = snapshotModeCustomName;
+    }
+
     public String getSnapshotSelectStatementOverrides() {
         return snapshotSelectStatementOverrides;
     }
diff --git a/components-starter/camel-debezium-postgres-starter/src/main/docs/debezium-postgres.json b/components-starter/camel-debezium-postgres-starter/src/main/docs/debezium-postgres.json
index f31ede6..ec0a804 100644
--- a/components-starter/camel-debezium-postgres-starter/src/main/docs/debezium-postgres.json
+++ b/components-starter/camel-debezium-postgres-starter/src/main/docs/debezium-postgres.json
@@ -535,12 +535,6 @@
       "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumPostgresComponentConfiguration"
     },
     {
-      "name": "camel.component.debezium-postgres.snapshot-custom-class",
-      "type": "java.lang.String",
-      "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a fully qualified class name to load (via the default class loader). This class must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot and how to build queries.",
-      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumPostgresComponentConfiguration"
-    },
-    {
       "name": "camel.component.debezium-postgres.snapshot-delay-ms",
       "type": "java.lang.Long",
       "description": "A delay period before a snapshot will begin, given in milliseconds. Defaults to 0 ms. The option is a long type.",
@@ -567,6 +561,19 @@
       "defaultValue": 10000
     },
     {
+      "name": "camel.component.debezium-postgres.snapshot-locking-mode",
+      "type": "java.lang.String",
+      "description": "Controls how the connector holds locks on tables while performing the schema snapshot. The 'shared' which means the connector will hold a table lock that prevents exclusive table access for just the initial portion of the snapshot while the database schemas and other metadata are being read. The remaining work in a snapshot involves selecting all rows from each table, and this is done using a flashback query that requires no locks. However, in some cases it may be desirable to avoid locks entirely which can be done by specifying 'none'. This mode is only safe to use if no schema changes are happening while the snapshot is taken.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumPostgresComponentConfiguration",
+      "defaultValue": "none"
+    },
+    {
+      "name": "camel.component.debezium-postgres.snapshot-locking-mode-custom-name",
+      "type": "java.lang.String",
+      "description": "When 'snapshot.locking.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'SnapshotterLocking' interface and is called to determine how to lock tables during schema snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumPostgresComponentConfiguration"
+    },
+    {
       "name": "camel.component.debezium-postgres.snapshot-max-threads",
       "type": "java.lang.Integer",
       "description": "The maximum number of threads used to perform the snapshot. Defaults to 1.",
@@ -581,6 +588,60 @@
       "defaultValue": "initial"
     },
     {
+      "name": "camel.component.debezium-postgres.snapshot-mode-configuration-based-snapshot-data",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumPostgresComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-postgres.snapshot-mode-configuration-based-snapshot-on-data-error",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumPostgresComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-postgres.snapshot-mode-configuration-based-snapshot-on-schema-error",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumPostgresComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-postgres.snapshot-mode-configuration-based-snapshot-schema",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumPostgresComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-postgres.snapshot-mode-configuration-based-start-stream",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumPostgresComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-postgres.snapshot-mode-custom-name",
+      "type": "java.lang.String",
+      "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumPostgresComponentConfiguration"
+    },
+    {
+      "name": "camel.component.debezium-postgres.snapshot-query-mode",
+      "type": "java.lang.String",
+      "description": "Controls query used during the snapshot",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumPostgresComponentConfiguration",
+      "defaultValue": "select_all"
+    },
+    {
+      "name": "camel.component.debezium-postgres.snapshot-query-mode-custom-name",
+      "type": "java.lang.String",
+      "description": "When 'snapshot.query.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'SnapshotterQuery' interface and is called to determine how to build queries during snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumPostgresComponentConfiguration"
+    },
+    {
       "name": "camel.component.debezium-postgres.snapshot-select-statement-overrides",
       "type": "java.lang.String",
       "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted.",
diff --git a/components-starter/camel-debezium-postgres-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumPostgresComponentConfiguration.java b/components-starter/camel-debezium-postgres-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumPostgresComponentConfiguration.java
index 35b37ae..b31b864 100644
--- a/components-starter/camel-debezium-postgres-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumPostgresComponentConfiguration.java
+++ b/components-starter/camel-debezium-postgres-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumPostgresComponentConfiguration.java
@@ -535,14 +535,6 @@
      */
     private String slotStreamParams;
     /**
-     * When 'snapshot.mode' is set as custom, this setting must be set to
-     * specify a fully qualified class name to load (via the default class
-     * loader). This class must implement the 'Snapshotter' interface and is
-     * called on each app boot to determine whether to do a snapshot and how to
-     * build queries.
-     */
-    private String snapshotCustomClass;
-    /**
      * A delay period before a snapshot will begin, given in milliseconds.
      * Defaults to 0 ms. The option is a long type.
      */
@@ -558,6 +550,26 @@
      */
     private String snapshotIncludeCollectionList;
     /**
+     * Controls how the connector holds locks on tables while performing the
+     * schema snapshot. The 'shared' which means the connector will hold a table
+     * lock that prevents exclusive table access for just the initial portion of
+     * the snapshot while the database schemas and other metadata are being
+     * read. The remaining work in a snapshot involves selecting all rows from
+     * each table, and this is done using a flashback query that requires no
+     * locks. However, in some cases it may be desirable to avoid locks entirely
+     * which can be done by specifying 'none'. This mode is only safe to use if
+     * no schema changes are happening while the snapshot is taken.
+     */
+    private String snapshotLockingMode = "none";
+    /**
+     * When 'snapshot.locking.mode' is set as custom, this setting must be set
+     * to specify a the name of the custom implementation provided in the
+     * 'name()' method. The implementations must implement the
+     * 'SnapshotterLocking' interface and is called to determine how to lock
+     * tables during schema snapshot.
+     */
+    private String snapshotLockingModeCustomName;
+    /**
      * The maximum number of millis to wait for table locks at the beginning of
      * a snapshot. If locks cannot be acquired in this time frame, the snapshot
      * will be aborted. Defaults to 10 seconds. The option is a long type.
@@ -589,6 +601,52 @@
      */
     private String snapshotMode = "initial";
     /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the data should be snapshotted or not.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotData = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the data should be snapshotted or not in case of
+     * error.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotOnDataError = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the schema should be snapshotted or not in case of
+     * error.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotOnSchemaError = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the schema should be snapshotted or not.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotSchema = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the stream should start or not after snapshot.
+     */
+    private Boolean snapshotModeConfigurationBasedStartStream = false;
+    /**
+     * When 'snapshot.mode' is set as custom, this setting must be set to
+     * specify a the name of the custom implementation provided in the 'name()'
+     * method. The implementations must implement the 'Snapshotter' interface
+     * and is called on each app boot to determine whether to do a snapshot.
+     */
+    private String snapshotModeCustomName;
+    /**
+     * Controls query used during the snapshot
+     */
+    private String snapshotQueryMode = "select_all";
+    /**
+     * When 'snapshot.query.mode' is set as custom, this setting must be set to
+     * specify a the name of the custom implementation provided in the 'name()'
+     * method. The implementations must implement the 'SnapshotterQuery'
+     * interface and is called to determine how to build queries during
+     * snapshot.
+     */
+    private String snapshotQueryModeCustomName;
+    /**
      * This property contains a comma-separated list of fully-qualified tables
      * (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the
      * specific connectors. Select statements for the individual tables are
@@ -1320,14 +1378,6 @@
         this.slotStreamParams = slotStreamParams;
     }
 
-    public String getSnapshotCustomClass() {
-        return snapshotCustomClass;
-    }
-
-    public void setSnapshotCustomClass(String snapshotCustomClass) {
-        this.snapshotCustomClass = snapshotCustomClass;
-    }
-
     public Long getSnapshotDelayMs() {
         return snapshotDelayMs;
     }
@@ -1353,6 +1403,23 @@
         this.snapshotIncludeCollectionList = snapshotIncludeCollectionList;
     }
 
+    public String getSnapshotLockingMode() {
+        return snapshotLockingMode;
+    }
+
+    public void setSnapshotLockingMode(String snapshotLockingMode) {
+        this.snapshotLockingMode = snapshotLockingMode;
+    }
+
+    public String getSnapshotLockingModeCustomName() {
+        return snapshotLockingModeCustomName;
+    }
+
+    public void setSnapshotLockingModeCustomName(
+            String snapshotLockingModeCustomName) {
+        this.snapshotLockingModeCustomName = snapshotLockingModeCustomName;
+    }
+
     public Long getSnapshotLockTimeoutMs() {
         return snapshotLockTimeoutMs;
     }
@@ -1377,6 +1444,76 @@
         this.snapshotMode = snapshotMode;
     }
 
+    public Boolean getSnapshotModeConfigurationBasedSnapshotData() {
+        return snapshotModeConfigurationBasedSnapshotData;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotData(
+            Boolean snapshotModeConfigurationBasedSnapshotData) {
+        this.snapshotModeConfigurationBasedSnapshotData = snapshotModeConfigurationBasedSnapshotData;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotOnDataError() {
+        return snapshotModeConfigurationBasedSnapshotOnDataError;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotOnDataError(
+            Boolean snapshotModeConfigurationBasedSnapshotOnDataError) {
+        this.snapshotModeConfigurationBasedSnapshotOnDataError = snapshotModeConfigurationBasedSnapshotOnDataError;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotOnSchemaError() {
+        return snapshotModeConfigurationBasedSnapshotOnSchemaError;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotOnSchemaError(
+            Boolean snapshotModeConfigurationBasedSnapshotOnSchemaError) {
+        this.snapshotModeConfigurationBasedSnapshotOnSchemaError = snapshotModeConfigurationBasedSnapshotOnSchemaError;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotSchema() {
+        return snapshotModeConfigurationBasedSnapshotSchema;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotSchema(
+            Boolean snapshotModeConfigurationBasedSnapshotSchema) {
+        this.snapshotModeConfigurationBasedSnapshotSchema = snapshotModeConfigurationBasedSnapshotSchema;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedStartStream() {
+        return snapshotModeConfigurationBasedStartStream;
+    }
+
+    public void setSnapshotModeConfigurationBasedStartStream(
+            Boolean snapshotModeConfigurationBasedStartStream) {
+        this.snapshotModeConfigurationBasedStartStream = snapshotModeConfigurationBasedStartStream;
+    }
+
+    public String getSnapshotModeCustomName() {
+        return snapshotModeCustomName;
+    }
+
+    public void setSnapshotModeCustomName(String snapshotModeCustomName) {
+        this.snapshotModeCustomName = snapshotModeCustomName;
+    }
+
+    public String getSnapshotQueryMode() {
+        return snapshotQueryMode;
+    }
+
+    public void setSnapshotQueryMode(String snapshotQueryMode) {
+        this.snapshotQueryMode = snapshotQueryMode;
+    }
+
+    public String getSnapshotQueryModeCustomName() {
+        return snapshotQueryModeCustomName;
+    }
+
+    public void setSnapshotQueryModeCustomName(
+            String snapshotQueryModeCustomName) {
+        this.snapshotQueryModeCustomName = snapshotQueryModeCustomName;
+    }
+
     public String getSnapshotSelectStatementOverrides() {
         return snapshotSelectStatementOverrides;
     }
diff --git a/components-starter/camel-debezium-sqlserver-starter/src/main/docs/debezium-sqlserver.json b/components-starter/camel-debezium-sqlserver-starter/src/main/docs/debezium-sqlserver.json
index 46e1fa3..6b03925 100644
--- a/components-starter/camel-debezium-sqlserver-starter/src/main/docs/debezium-sqlserver.json
+++ b/components-starter/camel-debezium-sqlserver-starter/src/main/docs/debezium-sqlserver.json
@@ -82,6 +82,13 @@
       "sourceType": "org.apache.camel.spring.boot.ComponentConfigurationPropertiesCommon$CustomizerProperties"
     },
     {
+      "name": "camel.component.debezium-sqlserver.data-query-mode",
+      "type": "java.lang.String",
+      "description": "Controls how the connector queries CDC data. The default is 'function', which means the data is queried by means of calling cdc.fn_cdc_get_all_changes_# function. The value of 'direct' makes the connector to query the change tables directly.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumSqlserverComponentConfiguration",
+      "defaultValue": "function"
+    },
+    {
       "name": "camel.component.debezium-sqlserver.database-hostname",
       "type": "java.lang.String",
       "description": "Resolvable hostname or IP address of the database server.",
@@ -441,7 +448,7 @@
     {
       "name": "camel.component.debezium-sqlserver.snapshot-isolation-mode",
       "type": "java.lang.String",
-      "description": "Controls which transaction isolation level is used and how long the connector locks the captured tables. The default is 'repeatable_read', which means that repeatable read isolation level is used. In addition, exclusive locks are taken only during schema snapshot. Using a value of 'exclusive' ensures that the connector holds the exclusive lock (and thus prevents any reads and updates) for all captured tables during the entire snapshot duration. When 'snapshot' is specified, connector runs the initial snapshot in SNAPSHOT isolation level, which guarantees snapshot consistency. In addition, neither table nor row-level locks are held. When 'read_committed' is specified, connector runs the initial snapshot in READ COMMITTED isolation level. No long-running locks are taken, so that initial snapshot does not prevent other transactions from updating table rows. Snapshot consistency is not guaranteed.In 'read_uncommitted' mode neither table nor row-level locks are acquired, but connector does not guarantee snapshot consistency.",
+      "description": "Controls which transaction isolation level is used and how long the connector locks the captured tables. The default is 'repeatable_read', which means that repeatable read isolation level is used. In addition, type of acquired lock during schema snapshot depends on snapshot.locking.mode property. Using a value of 'exclusive' ensures that the connector holds the type of lock specified with snapshot.locking.mode property (and thus prevents any reads and updates) for all captured tables during the entire snapshot duration. When 'snapshot' is specified, connector runs the initial snapshot in SNAPSHOT isolation level, which guarantees snapshot consistency. In addition, neither table nor row-level locks are held. When 'read_committed' is specified, connector runs the initial snapshot in READ COMMITTED isolation level. No long-running locks are taken, so that initial snapshot does not prevent other transactions from updating table rows. Snapshot consistency is not guaranteed.In 'read_uncommitted' mode neither table nor row-level locks are acquired, but connector does not guarantee snapshot consistency.",
       "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumSqlserverComponentConfiguration",
       "defaultValue": "repeatable_read"
     },
@@ -467,6 +474,47 @@
       "defaultValue": "initial"
     },
     {
+      "name": "camel.component.debezium-sqlserver.snapshot-mode-configuration-based-snapshot-data",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumSqlserverComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-sqlserver.snapshot-mode-configuration-based-snapshot-on-data-error",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the data should be snapshotted or not in case of error.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumSqlserverComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-sqlserver.snapshot-mode-configuration-based-snapshot-on-schema-error",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not in case of error.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumSqlserverComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-sqlserver.snapshot-mode-configuration-based-snapshot-schema",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the schema should be snapshotted or not.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumSqlserverComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-sqlserver.snapshot-mode-configuration-based-start-stream",
+      "type": "java.lang.Boolean",
+      "description": "When 'snapshot.mode' is set as configuration_based, this setting permits to specify whenever the stream should start or not after snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumSqlserverComponentConfiguration",
+      "defaultValue": false
+    },
+    {
+      "name": "camel.component.debezium-sqlserver.snapshot-mode-custom-name",
+      "type": "java.lang.String",
+      "description": "When 'snapshot.mode' is set as custom, this setting must be set to specify a the name of the custom implementation provided in the 'name()' method. The implementations must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot.",
+      "sourceType": "org.apache.camel.component.debezium.springboot.DebeziumSqlserverComponentConfiguration"
+    },
+    {
       "name": "camel.component.debezium-sqlserver.snapshot-select-statement-overrides",
       "type": "java.lang.String",
       "description": "This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connectors. Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME.TABLE_NAME', respectively. The value of those properties is the select statement to use when retrieving data from the specific table during snapshotting. A possible use case for large append-only tables is setting a specific point where to start (resume) snapshotting, in case a previous snapshotting was interrupted.",
diff --git a/components-starter/camel-debezium-sqlserver-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumSqlserverComponentConfiguration.java b/components-starter/camel-debezium-sqlserver-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumSqlserverComponentConfiguration.java
index 5ad09f4..5a3db19 100644
--- a/components-starter/camel-debezium-sqlserver-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumSqlserverComponentConfiguration.java
+++ b/components-starter/camel-debezium-sqlserver-starter/src/main/java/org/apache/camel/component/debezium/springboot/DebeziumSqlserverComponentConfiguration.java
@@ -190,6 +190,13 @@
      */
     private String databaseUser;
     /**
+     * Controls how the connector queries CDC data. The default is 'function',
+     * which means the data is queried by means of calling
+     * cdc.fn_cdc_get_all_changes_# function. The value of 'direct' makes the
+     * connector to query the change tables directly.
+     */
+    private String dataQueryMode = "function";
+    /**
      * A comma-separated list of regular expressions matching the
      * database-specific data type names that adds the data type's original type
      * and original length as parameters to the corresponding field schemas in
@@ -427,18 +434,19 @@
      * Controls which transaction isolation level is used and how long the
      * connector locks the captured tables. The default is 'repeatable_read',
      * which means that repeatable read isolation level is used. In addition,
-     * exclusive locks are taken only during schema snapshot. Using a value of
-     * 'exclusive' ensures that the connector holds the exclusive lock (and thus
-     * prevents any reads and updates) for all captured tables during the entire
-     * snapshot duration. When 'snapshot' is specified, connector runs the
-     * initial snapshot in SNAPSHOT isolation level, which guarantees snapshot
-     * consistency. In addition, neither table nor row-level locks are held.
-     * When 'read_committed' is specified, connector runs the initial snapshot
-     * in READ COMMITTED isolation level. No long-running locks are taken, so
-     * that initial snapshot does not prevent other transactions from updating
-     * table rows. Snapshot consistency is not guaranteed.In 'read_uncommitted'
-     * mode neither table nor row-level locks are acquired, but connector does
-     * not guarantee snapshot consistency.
+     * type of acquired lock during schema snapshot depends on
+     * snapshot.locking.mode property. Using a value of 'exclusive' ensures that
+     * the connector holds the type of lock specified with snapshot.locking.mode
+     * property (and thus prevents any reads and updates) for all captured
+     * tables during the entire snapshot duration. When 'snapshot' is specified,
+     * connector runs the initial snapshot in SNAPSHOT isolation level, which
+     * guarantees snapshot consistency. In addition, neither table nor row-level
+     * locks are held. When 'read_committed' is specified, connector runs the
+     * initial snapshot in READ COMMITTED isolation level. No long-running locks
+     * are taken, so that initial snapshot does not prevent other transactions
+     * from updating table rows. Snapshot consistency is not guaranteed.In
+     * 'read_uncommitted' mode neither table nor row-level locks are acquired,
+     * but connector does not guarantee snapshot consistency.
      */
     private String snapshotIsolationMode = "repeatable_read";
     /**
@@ -469,6 +477,40 @@
      */
     private String snapshotMode = "initial";
     /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the data should be snapshotted or not.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotData = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the data should be snapshotted or not in case of
+     * error.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotOnDataError = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the schema should be snapshotted or not in case of
+     * error.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotOnSchemaError = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the schema should be snapshotted or not.
+     */
+    private Boolean snapshotModeConfigurationBasedSnapshotSchema = false;
+    /**
+     * When 'snapshot.mode' is set as configuration_based, this setting permits
+     * to specify whenever the stream should start or not after snapshot.
+     */
+    private Boolean snapshotModeConfigurationBasedStartStream = false;
+    /**
+     * When 'snapshot.mode' is set as custom, this setting must be set to
+     * specify a the name of the custom implementation provided in the 'name()'
+     * method. The implementations must implement the 'Snapshotter' interface
+     * and is called on each app boot to determine whether to do a snapshot.
+     */
+    private String snapshotModeCustomName;
+    /**
      * This property contains a comma-separated list of fully-qualified tables
      * (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the
      * specific connectors. Select statements for the individual tables are
@@ -752,6 +794,14 @@
         this.databaseUser = databaseUser;
     }
 
+    public String getDataQueryMode() {
+        return dataQueryMode;
+    }
+
+    public void setDataQueryMode(String dataQueryMode) {
+        this.dataQueryMode = dataQueryMode;
+    }
+
     public String getDatatypePropagateSourceType() {
         return datatypePropagateSourceType;
     }
@@ -1093,6 +1143,59 @@
         this.snapshotMode = snapshotMode;
     }
 
+    public Boolean getSnapshotModeConfigurationBasedSnapshotData() {
+        return snapshotModeConfigurationBasedSnapshotData;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotData(
+            Boolean snapshotModeConfigurationBasedSnapshotData) {
+        this.snapshotModeConfigurationBasedSnapshotData = snapshotModeConfigurationBasedSnapshotData;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotOnDataError() {
+        return snapshotModeConfigurationBasedSnapshotOnDataError;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotOnDataError(
+            Boolean snapshotModeConfigurationBasedSnapshotOnDataError) {
+        this.snapshotModeConfigurationBasedSnapshotOnDataError = snapshotModeConfigurationBasedSnapshotOnDataError;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotOnSchemaError() {
+        return snapshotModeConfigurationBasedSnapshotOnSchemaError;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotOnSchemaError(
+            Boolean snapshotModeConfigurationBasedSnapshotOnSchemaError) {
+        this.snapshotModeConfigurationBasedSnapshotOnSchemaError = snapshotModeConfigurationBasedSnapshotOnSchemaError;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedSnapshotSchema() {
+        return snapshotModeConfigurationBasedSnapshotSchema;
+    }
+
+    public void setSnapshotModeConfigurationBasedSnapshotSchema(
+            Boolean snapshotModeConfigurationBasedSnapshotSchema) {
+        this.snapshotModeConfigurationBasedSnapshotSchema = snapshotModeConfigurationBasedSnapshotSchema;
+    }
+
+    public Boolean getSnapshotModeConfigurationBasedStartStream() {
+        return snapshotModeConfigurationBasedStartStream;
+    }
+
+    public void setSnapshotModeConfigurationBasedStartStream(
+            Boolean snapshotModeConfigurationBasedStartStream) {
+        this.snapshotModeConfigurationBasedStartStream = snapshotModeConfigurationBasedStartStream;
+    }
+
+    public String getSnapshotModeCustomName() {
+        return snapshotModeCustomName;
+    }
+
+    public void setSnapshotModeCustomName(String snapshotModeCustomName) {
+        this.snapshotModeCustomName = snapshotModeCustomName;
+    }
+
     public String getSnapshotSelectStatementOverrides() {
         return snapshotSelectStatementOverrides;
     }
diff --git a/tooling/camel-spring-boot-dependencies/pom.xml b/tooling/camel-spring-boot-dependencies/pom.xml
index 78f4876..f1dddbc 100644
--- a/tooling/camel-spring-boot-dependencies/pom.xml
+++ b/tooling/camel-spring-boot-dependencies/pom.xml
@@ -54,157 +54,157 @@
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-all</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-alts</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-android</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-api</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-auth</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-benchmarks</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-binder</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-census</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-context</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-core</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-cronet</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-gcp-observability</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-googleapis</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-grpclb</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-inprocess</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-interop-testing</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-netty</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-netty-shaded</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-okhttp</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-protobuf</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-protobuf-lite</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-rls</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-services</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-servlet</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-servlet-jakarta</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-stub</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-testing</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-testing-proto</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-util</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>grpc-xds</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
       </dependency>
       <dependency>
         <groupId>io.grpc</groupId>
         <artifactId>protoc-gen-grpc-java</artifactId>
-        <version>1.62.2</version>
+        <version>1.63.0</version>
         <type>pom</type>
       </dependency>
       <dependency>