| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| package org.apache.camel.builder.endpoint.dsl; |
| |
| import javax.annotation.Generated; |
| import org.apache.camel.ExchangePattern; |
| import org.apache.camel.builder.EndpointConsumerBuilder; |
| import org.apache.camel.builder.EndpointProducerBuilder; |
| import org.apache.camel.builder.endpoint.AbstractEndpointBuilder; |
| import org.apache.camel.spi.ExceptionHandler; |
| |
| /** |
| * Represents a Debezium SQL Server endpoint which is used to capture changes in |
| * SQL Server database so that that applications can see those changes and |
| * respond to them. |
| * |
| * Generated by camel-package-maven-plugin - do not edit this file! |
| */ |
| @Generated("org.apache.camel.maven.packaging.EndpointDslMojo") |
| public interface DebeziumSqlserverEndpointBuilderFactory { |
| |
| |
| /** |
| * Builder for endpoint for the Debezium SQL Server Connector component. |
| */ |
| public interface DebeziumSqlserverEndpointBuilder |
| extends |
| EndpointConsumerBuilder { |
| default AdvancedDebeziumSqlserverEndpointBuilder advanced() { |
| return (AdvancedDebeziumSqlserverEndpointBuilder) this; |
| } |
| /** |
| * Allows for bridging the consumer to the Camel routing Error Handler, |
| * which mean any exceptions occurred while the consumer is trying to |
| * pickup incoming messages, or the likes, will now be processed as a |
| * message and handled by the routing Error Handler. By default the |
| * consumer will use the org.apache.camel.spi.ExceptionHandler to deal |
| * with exceptions, that will be logged at WARN or ERROR level and |
| * ignored. |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder bridgeErrorHandler( |
| boolean bridgeErrorHandler) { |
| doSetProperty("bridgeErrorHandler", bridgeErrorHandler); |
| return this; |
| } |
| /** |
| * Allows for bridging the consumer to the Camel routing Error Handler, |
| * which mean any exceptions occurred while the consumer is trying to |
| * pickup incoming messages, or the likes, will now be processed as a |
| * message and handled by the routing Error Handler. By default the |
| * consumer will use the org.apache.camel.spi.ExceptionHandler to deal |
| * with exceptions, that will be logged at WARN or ERROR level and |
| * ignored. |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder bridgeErrorHandler( |
| String bridgeErrorHandler) { |
| doSetProperty("bridgeErrorHandler", bridgeErrorHandler); |
| return this; |
| } |
| /** |
| * The Converter class that should be used to serialize and deserialize |
| * key data for offsets. The default is JSON converter. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder internalKeyConverter( |
| String internalKeyConverter) { |
| doSetProperty("internalKeyConverter", internalKeyConverter); |
| return this; |
| } |
| /** |
| * The Converter class that should be used to serialize and deserialize |
| * value data for offsets. The default is JSON converter. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder internalValueConverter( |
| String internalValueConverter) { |
| doSetProperty("internalValueConverter", internalValueConverter); |
| return this; |
| } |
| /** |
| * The name of the Java class of the commit policy. It defines when |
| * offsets commit has to be triggered based on the number of events |
| * processed and the time elapsed since the last commit. This class must |
| * implement the interface 'OffsetCommitPolicy'. The default is a |
| * periodic commit policy based upon time intervals. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder offsetCommitPolicy( |
| String offsetCommitPolicy) { |
| doSetProperty("offsetCommitPolicy", offsetCommitPolicy); |
| return this; |
| } |
| /** |
| * Maximum number of milliseconds to wait for records to flush and |
| * partition offset data to be committed to offset storage before |
| * cancelling the process and restoring the offset data to be committed |
| * in a future attempt. The default is 5 seconds. |
| * |
| * The option is a: <code>long</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder offsetCommitTimeoutMs( |
| long offsetCommitTimeoutMs) { |
| doSetProperty("offsetCommitTimeoutMs", offsetCommitTimeoutMs); |
| return this; |
| } |
| /** |
| * Maximum number of milliseconds to wait for records to flush and |
| * partition offset data to be committed to offset storage before |
| * cancelling the process and restoring the offset data to be committed |
| * in a future attempt. The default is 5 seconds. |
| * |
| * The option will be converted to a <code>long</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder offsetCommitTimeoutMs( |
| String offsetCommitTimeoutMs) { |
| doSetProperty("offsetCommitTimeoutMs", offsetCommitTimeoutMs); |
| return this; |
| } |
| /** |
| * Interval at which to try committing offsets. The default is 1 minute. |
| * |
| * The option is a: <code>long</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder offsetFlushIntervalMs( |
| long offsetFlushIntervalMs) { |
| doSetProperty("offsetFlushIntervalMs", offsetFlushIntervalMs); |
| return this; |
| } |
| /** |
| * Interval at which to try committing offsets. The default is 1 minute. |
| * |
| * The option will be converted to a <code>long</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder offsetFlushIntervalMs( |
| String offsetFlushIntervalMs) { |
| doSetProperty("offsetFlushIntervalMs", offsetFlushIntervalMs); |
| return this; |
| } |
| /** |
| * The name of the Java class that is responsible for persistence of |
| * connector offsets. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder offsetStorage( |
| String offsetStorage) { |
| doSetProperty("offsetStorage", offsetStorage); |
| return this; |
| } |
| /** |
| * Path to file where offsets are to be stored. Required when |
| * offset.storage is set to the FileOffsetBackingStore. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder offsetStorageFileName( |
| String offsetStorageFileName) { |
| doSetProperty("offsetStorageFileName", offsetStorageFileName); |
| return this; |
| } |
| /** |
| * The number of partitions used when creating the offset storage topic. |
| * Required when offset.storage is set to the 'KafkaOffsetBackingStore'. |
| * |
| * The option is a: <code>int</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder offsetStoragePartitions( |
| int offsetStoragePartitions) { |
| doSetProperty("offsetStoragePartitions", offsetStoragePartitions); |
| return this; |
| } |
| /** |
| * The number of partitions used when creating the offset storage topic. |
| * Required when offset.storage is set to the 'KafkaOffsetBackingStore'. |
| * |
| * The option will be converted to a <code>int</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder offsetStoragePartitions( |
| String offsetStoragePartitions) { |
| doSetProperty("offsetStoragePartitions", offsetStoragePartitions); |
| return this; |
| } |
| /** |
| * Replication factor used when creating the offset storage topic. |
| * Required when offset.storage is set to the KafkaOffsetBackingStore. |
| * |
| * The option is a: <code>int</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder offsetStorageReplicationFactor( |
| int offsetStorageReplicationFactor) { |
| doSetProperty("offsetStorageReplicationFactor", offsetStorageReplicationFactor); |
| return this; |
| } |
| /** |
| * Replication factor used when creating the offset storage topic. |
| * Required when offset.storage is set to the KafkaOffsetBackingStore. |
| * |
| * The option will be converted to a <code>int</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder offsetStorageReplicationFactor( |
| String offsetStorageReplicationFactor) { |
| doSetProperty("offsetStorageReplicationFactor", offsetStorageReplicationFactor); |
| return this; |
| } |
| /** |
| * The name of the Kafka topic where offsets are to be stored. Required |
| * when offset.storage is set to the KafkaOffsetBackingStore. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: consumer |
| */ |
| default DebeziumSqlserverEndpointBuilder offsetStorageTopic( |
| String offsetStorageTopic) { |
| doSetProperty("offsetStorageTopic", offsetStorageTopic); |
| return this; |
| } |
| /** |
| * Description is not available here, please check Debezium website for |
| * corresponding key 'column.blacklist' description. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder columnBlacklist( |
| String columnBlacklist) { |
| doSetProperty("columnBlacklist", columnBlacklist); |
| return this; |
| } |
| /** |
| * The name of the database the connector should be monitoring. When |
| * working with a multi-tenant set-up, must be set to the CDB name. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databaseDbname( |
| String databaseDbname) { |
| doSetProperty("databaseDbname", databaseDbname); |
| return this; |
| } |
| /** |
| * The name of the DatabaseHistory class that should be used to store |
| * and recover database schema changes. The configuration properties for |
| * the history are prefixed with the 'database.history.' string. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databaseHistory( |
| String databaseHistory) { |
| doSetProperty("databaseHistory", databaseHistory); |
| return this; |
| } |
| /** |
| * The path to the file that will be used to record the database |
| * history. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databaseHistoryFileFilename( |
| String databaseHistoryFileFilename) { |
| doSetProperty("databaseHistoryFileFilename", databaseHistoryFileFilename); |
| return this; |
| } |
| /** |
| * A list of host/port pairs that the connector will use for |
| * establishing the initial connection to the Kafka cluster for |
| * retrieving database schema history previously stored by the |
| * connector. This should point to the same Kafka cluster used by the |
| * Kafka Connect process. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databaseHistoryKafkaBootstrapServers( |
| String databaseHistoryKafkaBootstrapServers) { |
| doSetProperty("databaseHistoryKafkaBootstrapServers", databaseHistoryKafkaBootstrapServers); |
| return this; |
| } |
| /** |
| * The number of attempts in a row that no data are returned from Kafka |
| * before recover completes. The maximum amount of time to wait after |
| * receiving no data is (recovery.attempts) x |
| * (recovery.poll.interval.ms). |
| * |
| * The option is a: <code>int</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databaseHistoryKafkaRecoveryAttempts( |
| int databaseHistoryKafkaRecoveryAttempts) { |
| doSetProperty("databaseHistoryKafkaRecoveryAttempts", databaseHistoryKafkaRecoveryAttempts); |
| return this; |
| } |
| /** |
| * The number of attempts in a row that no data are returned from Kafka |
| * before recover completes. The maximum amount of time to wait after |
| * receiving no data is (recovery.attempts) x |
| * (recovery.poll.interval.ms). |
| * |
| * The option will be converted to a <code>int</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databaseHistoryKafkaRecoveryAttempts( |
| String databaseHistoryKafkaRecoveryAttempts) { |
| doSetProperty("databaseHistoryKafkaRecoveryAttempts", databaseHistoryKafkaRecoveryAttempts); |
| return this; |
| } |
| /** |
| * The number of milliseconds to wait while polling for persisted data |
| * during recovery. |
| * |
| * The option is a: <code>int</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databaseHistoryKafkaRecoveryPollIntervalMs( |
| int databaseHistoryKafkaRecoveryPollIntervalMs) { |
| doSetProperty("databaseHistoryKafkaRecoveryPollIntervalMs", databaseHistoryKafkaRecoveryPollIntervalMs); |
| return this; |
| } |
| /** |
| * The number of milliseconds to wait while polling for persisted data |
| * during recovery. |
| * |
| * The option will be converted to a <code>int</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databaseHistoryKafkaRecoveryPollIntervalMs( |
| String databaseHistoryKafkaRecoveryPollIntervalMs) { |
| doSetProperty("databaseHistoryKafkaRecoveryPollIntervalMs", databaseHistoryKafkaRecoveryPollIntervalMs); |
| return this; |
| } |
| /** |
| * The name of the topic for the database schema history. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databaseHistoryKafkaTopic( |
| String databaseHistoryKafkaTopic) { |
| doSetProperty("databaseHistoryKafkaTopic", databaseHistoryKafkaTopic); |
| return this; |
| } |
| /** |
| * Resolvable hostname or IP address of the SQL Server database server. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databaseHostname( |
| String databaseHostname) { |
| doSetProperty("databaseHostname", databaseHostname); |
| return this; |
| } |
| /** |
| * Password of the SQL Server database user to be used when connecting |
| * to the database. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Required: true |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databasePassword( |
| String databasePassword) { |
| doSetProperty("databasePassword", databasePassword); |
| return this; |
| } |
| /** |
| * Port of the SQL Server database server. |
| * |
| * The option is a: <code>int</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databasePort(int databasePort) { |
| doSetProperty("databasePort", databasePort); |
| return this; |
| } |
| /** |
| * Port of the SQL Server database server. |
| * |
| * The option will be converted to a <code>int</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databasePort( |
| String databasePort) { |
| doSetProperty("databasePort", databasePort); |
| return this; |
| } |
| /** |
| * Unique name that identifies the database server and all recorded |
| * offsets, and that is used as a prefix for all schemas and topics. |
| * Each distinct installation should have a separate namespace and be |
| * monitored by at most one Debezium connector. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Required: true |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databaseServerName( |
| String databaseServerName) { |
| doSetProperty("databaseServerName", databaseServerName); |
| return this; |
| } |
| /** |
| * Name of the SQL Server database user to be used when connecting to |
| * the database. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder databaseUser( |
| String databaseUser) { |
| doSetProperty("databaseUser", databaseUser); |
| return this; |
| } |
| /** |
| * 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. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder decimalHandlingMode( |
| String decimalHandlingMode) { |
| doSetProperty("decimalHandlingMode", decimalHandlingMode); |
| return this; |
| } |
| /** |
| * 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. |
| * |
| * The option is a: <code>int</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder heartbeatIntervalMs( |
| int heartbeatIntervalMs) { |
| doSetProperty("heartbeatIntervalMs", heartbeatIntervalMs); |
| return this; |
| } |
| /** |
| * 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. |
| * |
| * The option will be converted to a <code>int</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder heartbeatIntervalMs( |
| String heartbeatIntervalMs) { |
| doSetProperty("heartbeatIntervalMs", heartbeatIntervalMs); |
| return this; |
| } |
| /** |
| * The prefix that is used to name heartbeat topics.Defaults to |
| * __debezium-heartbeat. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder heartbeatTopicsPrefix( |
| String heartbeatTopicsPrefix) { |
| doSetProperty("heartbeatTopicsPrefix", heartbeatTopicsPrefix); |
| return this; |
| } |
| /** |
| * Maximum size of each batch of source records. Defaults to 2048. |
| * |
| * The option is a: <code>int</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder maxBatchSize(int maxBatchSize) { |
| doSetProperty("maxBatchSize", maxBatchSize); |
| return this; |
| } |
| /** |
| * Maximum size of each batch of source records. Defaults to 2048. |
| * |
| * The option will be converted to a <code>int</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder maxBatchSize( |
| String maxBatchSize) { |
| doSetProperty("maxBatchSize", maxBatchSize); |
| return this; |
| } |
| /** |
| * 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. |
| * |
| * The option is a: <code>int</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder maxQueueSize(int maxQueueSize) { |
| doSetProperty("maxQueueSize", maxQueueSize); |
| return this; |
| } |
| /** |
| * 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. |
| * |
| * The option will be converted to a <code>int</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder maxQueueSize( |
| String maxQueueSize) { |
| doSetProperty("maxQueueSize", maxQueueSize); |
| return this; |
| } |
| /** |
| * 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. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder messageKeyColumns( |
| String messageKeyColumns) { |
| doSetProperty("messageKeyColumns", messageKeyColumns); |
| return this; |
| } |
| /** |
| * Frequency in milliseconds to wait for new change events to appear |
| * after receiving no events. Defaults to 500ms. |
| * |
| * The option is a: <code>long</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder pollIntervalMs( |
| long pollIntervalMs) { |
| doSetProperty("pollIntervalMs", pollIntervalMs); |
| return this; |
| } |
| /** |
| * Frequency in milliseconds to wait for new change events to appear |
| * after receiving no events. Defaults to 500ms. |
| * |
| * The option will be converted to a <code>long</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder pollIntervalMs( |
| String pollIntervalMs) { |
| doSetProperty("pollIntervalMs", pollIntervalMs); |
| return this; |
| } |
| /** |
| * The number of milliseconds to delay before a snapshot will begin. |
| * |
| * The option is a: <code>long</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder snapshotDelayMs( |
| long snapshotDelayMs) { |
| doSetProperty("snapshotDelayMs", snapshotDelayMs); |
| return this; |
| } |
| /** |
| * The number of milliseconds to delay before a snapshot will begin. |
| * |
| * The option will be converted to a <code>long</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder snapshotDelayMs( |
| String snapshotDelayMs) { |
| doSetProperty("snapshotDelayMs", snapshotDelayMs); |
| return this; |
| } |
| /** |
| * The maximum number of records that should be loaded into memory while |
| * performing a snapshot. |
| * |
| * The option is a: <code>int</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder snapshotFetchSize( |
| int snapshotFetchSize) { |
| doSetProperty("snapshotFetchSize", snapshotFetchSize); |
| return this; |
| } |
| /** |
| * The maximum number of records that should be loaded into memory while |
| * performing a snapshot. |
| * |
| * The option will be converted to a <code>int</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder snapshotFetchSize( |
| String snapshotFetchSize) { |
| doSetProperty("snapshotFetchSize", snapshotFetchSize); |
| return this; |
| } |
| /** |
| * 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: <code>long</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder snapshotLockTimeoutMs( |
| long snapshotLockTimeoutMs) { |
| doSetProperty("snapshotLockTimeoutMs", snapshotLockTimeoutMs); |
| return this; |
| } |
| /** |
| * 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 will be converted to a <code>long</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder snapshotLockTimeoutMs( |
| String snapshotLockTimeoutMs) { |
| doSetProperty("snapshotLockTimeoutMs", snapshotLockTimeoutMs); |
| return this; |
| } |
| /** |
| * 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; 'initial_schema_only' to specify the connector |
| * should run a snapshot of the schema when no offsets are available for |
| * the logical server name. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder snapshotMode( |
| String snapshotMode) { |
| doSetProperty("snapshotMode", snapshotMode); |
| return this; |
| } |
| /** |
| * This property contains a comma-separated list of fully-qualified |
| * tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on |
| * thespecific 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. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder snapshotSelectStatementOverrides( |
| String snapshotSelectStatementOverrides) { |
| doSetProperty("snapshotSelectStatementOverrides", snapshotSelectStatementOverrides); |
| return this; |
| } |
| /** |
| * A version of the format of the publicly visible source part in the |
| * message. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder sourceStructVersion( |
| String sourceStructVersion) { |
| doSetProperty("sourceStructVersion", sourceStructVersion); |
| return this; |
| } |
| /** |
| * Description is not available here, please check Debezium website for |
| * corresponding key 'table.blacklist' description. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder tableBlacklist( |
| String tableBlacklist) { |
| doSetProperty("tableBlacklist", tableBlacklist); |
| return this; |
| } |
| /** |
| * Flag specifying whether built-in tables should be ignored. |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder tableIgnoreBuiltin( |
| boolean tableIgnoreBuiltin) { |
| doSetProperty("tableIgnoreBuiltin", tableIgnoreBuiltin); |
| return this; |
| } |
| /** |
| * Flag specifying whether built-in tables should be ignored. |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder tableIgnoreBuiltin( |
| String tableIgnoreBuiltin) { |
| doSetProperty("tableIgnoreBuiltin", tableIgnoreBuiltin); |
| return this; |
| } |
| /** |
| * The tables for which changes are to be captured. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder tableWhitelist( |
| String tableWhitelist) { |
| doSetProperty("tableWhitelist", tableWhitelist); |
| return this; |
| } |
| /** |
| * 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 . |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: sqlserver |
| */ |
| default DebeziumSqlserverEndpointBuilder timePrecisionMode( |
| String timePrecisionMode) { |
| doSetProperty("timePrecisionMode", timePrecisionMode); |
| return this; |
| } |
| } |
| |
| /** |
| * Advanced builder for endpoint for the Debezium SQL Server Connector |
| * component. |
| */ |
| public interface AdvancedDebeziumSqlserverEndpointBuilder |
| extends |
| EndpointConsumerBuilder { |
| default DebeziumSqlserverEndpointBuilder basic() { |
| return (DebeziumSqlserverEndpointBuilder) this; |
| } |
| /** |
| * To let the consumer use a custom ExceptionHandler. Notice if the |
| * option bridgeErrorHandler is enabled then this option is not in use. |
| * By default the consumer will deal with exceptions, that will be |
| * logged at WARN or ERROR level and ignored. |
| * |
| * The option is a: <code>org.apache.camel.spi.ExceptionHandler</code> |
| * type. |
| * |
| * Group: consumer (advanced) |
| */ |
| default AdvancedDebeziumSqlserverEndpointBuilder exceptionHandler( |
| ExceptionHandler exceptionHandler) { |
| doSetProperty("exceptionHandler", exceptionHandler); |
| return this; |
| } |
| /** |
| * To let the consumer use a custom ExceptionHandler. Notice if the |
| * option bridgeErrorHandler is enabled then this option is not in use. |
| * By default the consumer will deal with exceptions, that will be |
| * logged at WARN or ERROR level and ignored. |
| * |
| * The option will be converted to a |
| * <code>org.apache.camel.spi.ExceptionHandler</code> type. |
| * |
| * Group: consumer (advanced) |
| */ |
| default AdvancedDebeziumSqlserverEndpointBuilder exceptionHandler( |
| String exceptionHandler) { |
| doSetProperty("exceptionHandler", exceptionHandler); |
| return this; |
| } |
| /** |
| * Sets the exchange pattern when the consumer creates an exchange. |
| * |
| * The option is a: <code>org.apache.camel.ExchangePattern</code> type. |
| * |
| * Group: consumer (advanced) |
| */ |
| default AdvancedDebeziumSqlserverEndpointBuilder exchangePattern( |
| ExchangePattern exchangePattern) { |
| doSetProperty("exchangePattern", exchangePattern); |
| return this; |
| } |
| /** |
| * Sets the exchange pattern when the consumer creates an exchange. |
| * |
| * The option will be converted to a |
| * <code>org.apache.camel.ExchangePattern</code> type. |
| * |
| * Group: consumer (advanced) |
| */ |
| default AdvancedDebeziumSqlserverEndpointBuilder exchangePattern( |
| String exchangePattern) { |
| doSetProperty("exchangePattern", exchangePattern); |
| return this; |
| } |
| /** |
| * Whether the endpoint should use basic property binding (Camel 2.x) or |
| * the newer property binding with additional capabilities. |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedDebeziumSqlserverEndpointBuilder basicPropertyBinding( |
| boolean basicPropertyBinding) { |
| doSetProperty("basicPropertyBinding", basicPropertyBinding); |
| return this; |
| } |
| /** |
| * Whether the endpoint should use basic property binding (Camel 2.x) or |
| * the newer property binding with additional capabilities. |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedDebeziumSqlserverEndpointBuilder basicPropertyBinding( |
| String basicPropertyBinding) { |
| doSetProperty("basicPropertyBinding", basicPropertyBinding); |
| return this; |
| } |
| /** |
| * Sets whether synchronous processing should be strictly used, or Camel |
| * is allowed to use asynchronous processing (if supported). |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedDebeziumSqlserverEndpointBuilder synchronous( |
| boolean synchronous) { |
| doSetProperty("synchronous", synchronous); |
| return this; |
| } |
| /** |
| * Sets whether synchronous processing should be strictly used, or Camel |
| * is allowed to use asynchronous processing (if supported). |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedDebeziumSqlserverEndpointBuilder synchronous( |
| String synchronous) { |
| doSetProperty("synchronous", synchronous); |
| return this; |
| } |
| } |
| /** |
| * Debezium SQL Server Connector (camel-debezium-sqlserver) |
| * Represents a Debezium SQL Server endpoint which is used to capture |
| * changes in SQL Server database so that that applications can see those |
| * changes and respond to them. |
| * |
| * Category: database,sql,sqlserver |
| * Available as of version: 3.0 |
| * Maven coordinates: org.apache.camel:camel-debezium-sqlserver |
| * |
| * Syntax: <code>debezium-sqlserver:name</code> |
| * |
| * Path parameter: name (required) |
| * Unique name for the connector. Attempting to register again with the same |
| * name will fail. |
| */ |
| default DebeziumSqlserverEndpointBuilder debeziumSqlserver(String path) { |
| class DebeziumSqlserverEndpointBuilderImpl extends AbstractEndpointBuilder implements DebeziumSqlserverEndpointBuilder, AdvancedDebeziumSqlserverEndpointBuilder { |
| public DebeziumSqlserverEndpointBuilderImpl(String path) { |
| super("debezium-sqlserver", path); |
| } |
| } |
| return new DebeziumSqlserverEndpointBuilderImpl(path); |
| } |
| } |