Class JdbcSinkConnectorConfig

java.lang.Object
io.debezium.connector.jdbc.JdbcSinkConnectorConfig

public class JdbcSinkConnectorConfig extends Object
Connector configuration for the JDBC sink.
Author:
Hossein Torabi
  • Field Details

    • LOGGER

      private static final org.slf4j.Logger LOGGER
    • HIBERNATE_PREFIX

      private static final String HIBERNATE_PREFIX
      See Also:
    • DEFAULT_DATABASE_TIME_ZONE

      private static final String DEFAULT_DATABASE_TIME_ZONE
      See Also:
    • CONNECTION_URL

      public static final String CONNECTION_URL
      See Also:
    • CONNECTION_USER

      public static final String CONNECTION_USER
      See Also:
    • CONNECTION_PASSWORD

      public static final String CONNECTION_PASSWORD
      See Also:
    • CONNECTION_POOL_MIN_SIZE

      public static final String CONNECTION_POOL_MIN_SIZE
      See Also:
    • CONNECTION_POOL_MAX_SIZE

      public static final String CONNECTION_POOL_MAX_SIZE
      See Also:
    • CONNECTION_POOL_ACQUIRE_INCREMENT

      public static final String CONNECTION_POOL_ACQUIRE_INCREMENT
      See Also:
    • CONNECTION_POOL_TIMEOUT

      public static final String CONNECTION_POOL_TIMEOUT
      See Also:
    • INSERT_MODE

      public static final String INSERT_MODE
      See Also:
    • DELETE_ENABLED

      public static final String DELETE_ENABLED
      See Also:
    • TRUNCATE_ENABLED

      public static final String TRUNCATE_ENABLED
      See Also:
    • TABLE_NAME_FORMAT

      public static final String TABLE_NAME_FORMAT
      See Also:
    • PRIMARY_KEY_MODE

      public static final String PRIMARY_KEY_MODE
      See Also:
    • PRIMARY_KEY_FIELDS

      public static final String PRIMARY_KEY_FIELDS
      See Also:
    • SCHEMA_EVOLUTION

      public static final String SCHEMA_EVOLUTION
      See Also:
    • QUOTE_IDENTIFIERS

      public static final String QUOTE_IDENTIFIERS
      See Also:
    • DATA_TYPE_MAPPING

      public static final String DATA_TYPE_MAPPING
      See Also:
    • TABLE_NAMING_STRATEGY

      public static final String TABLE_NAMING_STRATEGY
      See Also:
    • COLUMN_NAMING_STRATEGY

      public static final String COLUMN_NAMING_STRATEGY
      See Also:
    • DATABASE_TIME_ZONE

      public static final String DATABASE_TIME_ZONE
      See Also:
    • POSTGRES_POSTGIS_SCHEMA

      public static final String POSTGRES_POSTGIS_SCHEMA
      See Also:
    • SQLSERVER_IDENTITY_INSERT

      public static final String SQLSERVER_IDENTITY_INSERT
      See Also:
    • CONNECTION_URL_FIELD

      public static final io.debezium.config.Field CONNECTION_URL_FIELD
    • CONNECTION_USER_FIELD

      public static final io.debezium.config.Field CONNECTION_USER_FIELD
    • CONNECTION_PASSWORD_FIELD

      public static final io.debezium.config.Field CONNECTION_PASSWORD_FIELD
    • CONNECTION_POOL_MIN_SIZE_FIELD

      public static final io.debezium.config.Field CONNECTION_POOL_MIN_SIZE_FIELD
    • CONNECTION_POOL_MAX_SIZE_FIELD

      public static final io.debezium.config.Field CONNECTION_POOL_MAX_SIZE_FIELD
    • CONNECTION_POOL_ACQUIRE_INCREMENT_FIELD

      public static final io.debezium.config.Field CONNECTION_POOL_ACQUIRE_INCREMENT_FIELD
    • CONNECTION_POOL_TIMEOUT_FIELD

      public static final io.debezium.config.Field CONNECTION_POOL_TIMEOUT_FIELD
    • INSERT_MODE_FIELD

      public static final io.debezium.config.Field INSERT_MODE_FIELD
    • DELETE_ENABLED_FIELD

      public static final io.debezium.config.Field DELETE_ENABLED_FIELD
    • TRUNCATE_ENABLED_FIELD

      public static final io.debezium.config.Field TRUNCATE_ENABLED_FIELD
    • TABLE_NAME_FORMAT_FIELD

      public static final io.debezium.config.Field TABLE_NAME_FORMAT_FIELD
    • PRIMARY_KEY_MODE_FIELD

      public static final io.debezium.config.Field PRIMARY_KEY_MODE_FIELD
    • PRIMARY_KEY_FIELDS_FIELD

      public static final io.debezium.config.Field PRIMARY_KEY_FIELDS_FIELD
    • DATABASE_TIME_ZONE_FIELD

      public static final io.debezium.config.Field DATABASE_TIME_ZONE_FIELD
    • SCHEMA_EVOLUTION_FIELD

      public static final io.debezium.config.Field SCHEMA_EVOLUTION_FIELD
    • QUOTE_IDENTIFIERS_FIELD

      public static final io.debezium.config.Field QUOTE_IDENTIFIERS_FIELD
    • TABLE_NAMING_STRATEGY_FIELD

      public static final io.debezium.config.Field TABLE_NAMING_STRATEGY_FIELD
    • COLUMN_NAMING_STRATEGY_FIELD

      public static final io.debezium.config.Field COLUMN_NAMING_STRATEGY_FIELD
    • POSTGRES_POSTGIS_SCHEMA_FIELD

      public static final io.debezium.config.Field POSTGRES_POSTGIS_SCHEMA_FIELD
    • SQLSERVER_IDENTITY_INSERT_FIELD

      public static final io.debezium.config.Field SQLSERVER_IDENTITY_INSERT_FIELD
    • CONFIG_DEFINITION

      protected static final io.debezium.config.ConfigDefinition CONFIG_DEFINITION
    • ALL_FIELDS

      public static io.debezium.config.Field.Set ALL_FIELDS
      The set of Fields defined as part of this configuration.
    • config

      private final io.debezium.config.Configuration config
    • insertMode

      private final JdbcSinkConnectorConfig.InsertMode insertMode
    • deleteEnabled

      private final boolean deleteEnabled
    • truncateEnabled

      private final boolean truncateEnabled
    • tableNameFormat

      private final String tableNameFormat
    • primaryKeyMode

      private final JdbcSinkConnectorConfig.PrimaryKeyMode primaryKeyMode
    • primaryKeyFields

      private final Set<String> primaryKeyFields
    • schemaEvolutionMode

      private final JdbcSinkConnectorConfig.SchemaEvolutionMode schemaEvolutionMode
    • quoteIdentifiers

      private final boolean quoteIdentifiers
    • tableNamingStrategy

      private final TableNamingStrategy tableNamingStrategy
    • columnNamingStrategy

      private final ColumnNamingStrategy columnNamingStrategy
    • databaseTimezone

      private final String databaseTimezone
    • postgresPostgisSchema

      private final String postgresPostgisSchema
    • sqlServerIdentityInsert

      private final boolean sqlServerIdentityInsert
  • Constructor Details

    • JdbcSinkConnectorConfig

      public JdbcSinkConnectorConfig(Map<String,String> props)
  • Method Details

    • validate

      public void validate()
    • validateAndRecord

      public boolean validateAndRecord(Iterable<io.debezium.config.Field> fields, Consumer<String> problems)
    • configDef

      protected static org.apache.kafka.common.config.ConfigDef configDef()
    • getInsertMode

      public JdbcSinkConnectorConfig.InsertMode getInsertMode()
    • isDeleteEnabled

      public boolean isDeleteEnabled()
    • isTruncateEnabled

      public boolean isTruncateEnabled()
    • getTableNameFormat

      public String getTableNameFormat()
    • getPrimaryKeyMode

      public JdbcSinkConnectorConfig.PrimaryKeyMode getPrimaryKeyMode()
    • getPrimaryKeyFields

      public Set<String> getPrimaryKeyFields()
    • getSchemaEvolutionMode

      public JdbcSinkConnectorConfig.SchemaEvolutionMode getSchemaEvolutionMode()
    • isQuoteIdentifiers

      public boolean isQuoteIdentifiers()
    • isSqlServerIdentityInsert

      public boolean isSqlServerIdentityInsert()
    • getTableNamingStrategy

      public TableNamingStrategy getTableNamingStrategy()
    • getColumnNamingStrategy

      public ColumnNamingStrategy getColumnNamingStrategy()
    • getDatabaseTimeZone

      public String getDatabaseTimeZone()
    • getPostgresPostgisSchema

      public String getPostgresPostgisSchema()
    • getHibernateConfiguration

      public org.hibernate.cfg.Configuration getHibernateConfiguration()
      makes Configuration from connector config
      Returns:
      Configuration
    • getContextName

      public String getContextName()
    • getConnectorName

      public String getConnectorName()
    • validateInsertMode

      private static int validateInsertMode(io.debezium.config.Configuration config, io.debezium.config.Field field, io.debezium.config.Field.ValidationOutput problems)
    • validateDeleteEnabled

      private static int validateDeleteEnabled(io.debezium.config.Configuration config, io.debezium.config.Field field, io.debezium.config.Field.ValidationOutput problems)