DBZ-2527 Add missing ListOfRegex validator to all regex list fields and fix dependent fields to not include @Deprecated whitelist/blacklist fields

This commit is contained in:
rkerner 2020-09-14 18:33:41 +02:00 committed by Gunnar Morling
parent 385a873172
commit 011c3be948
2 changed files with 23 additions and 19 deletions

View File

@ -41,7 +41,7 @@ public class MySqlConnectorConfig extends RelationalDatabaseConnectorConfig {
/**
* The set of predefined BigIntUnsignedHandlingMode options or aliases.
*/
public static enum BigIntUnsignedHandlingMode implements EnumeratedValue {
public enum BigIntUnsignedHandlingMode implements EnumeratedValue {
/**
* Represent {@code BIGINT UNSIGNED} values as precise {@link BigDecimal} values, which are
* represented in change events in a binary form. This is precise but difficult to use.
@ -609,7 +609,7 @@ public static GtidNewChannelPosition parse(String value, String defaultValue) {
"Password to unlock the keystore file (store password) specified by 'ssl.trustore' configuration property or the 'javax.net.ssl.trustStore' system or JVM property.");
public static final Field TABLES_IGNORE_BUILTIN = RelationalDatabaseConnectorConfig.TABLE_IGNORE_BUILTIN
.withDependents(DATABASE_INCLUDE_LIST_NAME, DATABASE_WHITELIST_NAME);
.withDependents(DATABASE_INCLUDE_LIST_NAME);
public static final Field JDBC_DRIVER = Field.create("database.jdbc.driver")
.withDisplayName("Jdbc Driver Class Name")
@ -629,7 +629,7 @@ public static GtidNewChannelPosition parse(String value, String defaultValue) {
.withType(Type.LIST)
.withWidth(Width.LONG)
.withImportance(Importance.HIGH)
.withDependents(TABLE_INCLUDE_LIST_NAME, TABLE_WHITELIST_NAME)
.withDependents(TABLE_INCLUDE_LIST_NAME)
.withDescription("The databases for which changes are to be captured");
/**
@ -642,7 +642,7 @@ public static GtidNewChannelPosition parse(String value, String defaultValue) {
.withWidth(Width.LONG)
.withImportance(Importance.LOW)
.withInvisibleRecommender()
.withDependents(TABLE_INCLUDE_LIST_NAME, TABLE_WHITELIST_NAME)
.withDependents(TABLE_INCLUDE_LIST_NAME)
.withDescription("The databases for which changes are to be captured (deprecated, use \"" + DATABASE_INCLUDE_LIST.name() + "\" instead)");
/**
@ -683,7 +683,7 @@ public static GtidNewChannelPosition parse(String value, String defaultValue) {
.withType(Type.LIST)
.withWidth(Width.LONG)
.withImportance(Importance.HIGH)
.withDependents(TABLE_INCLUDE_LIST_NAME, TABLE_WHITELIST_NAME)
.withDependents(TABLE_INCLUDE_LIST_NAME)
.withDescription("The source UUIDs used to include GTID ranges when determine the starting position in the MySQL server's binlog.");
/**

View File

@ -174,7 +174,7 @@ public static DecimalHandlingMode parse(String value, String defaultValue) {
*/
public static final Field TABLE_EXCLUDE_LIST = Field.create(TABLE_EXCLUDE_LIST_NAME)
.withDisplayName("Exclude Tables")
.withType(Type.STRING)
.withType(Type.LIST)
.withWidth(Width.LONG)
.withImportance(Importance.MEDIUM)
.withValidation(Field::isListOfRegex, RelationalDatabaseConnectorConfig::validateTableExcludeList)
@ -187,7 +187,7 @@ public static DecimalHandlingMode parse(String value, String defaultValue) {
@Deprecated
public static final Field TABLE_BLACKLIST = Field.create(TABLE_BLACKLIST_NAME)
.withDisplayName("Deprecated: Exclude Tables")
.withType(Type.STRING)
.withType(Type.LIST)
.withWidth(Width.LONG)
.withImportance(Importance.LOW)
.withValidation(Field::isListOfRegex, RelationalDatabaseConnectorConfig::validateTableExcludeList)
@ -213,10 +213,10 @@ public static DecimalHandlingMode parse(String value, String defaultValue) {
*/
public static final Field COLUMN_EXCLUDE_LIST = Field.create("column.exclude.list")
.withDisplayName("Exclude Columns")
.withType(Type.STRING)
.withType(Type.LIST)
.withWidth(Width.LONG)
.withImportance(Importance.MEDIUM)
.withValidation(RelationalDatabaseConnectorConfig::validateColumnExcludeList)
.withValidation(Field::isListOfRegex, RelationalDatabaseConnectorConfig::validateColumnExcludeList)
.withDescription("Regular expressions matching columns to exclude from change events");
/**
@ -225,10 +225,10 @@ public static DecimalHandlingMode parse(String value, String defaultValue) {
@Deprecated
public static final Field COLUMN_BLACKLIST = Field.create("column.blacklist")
.withDisplayName("Deprecated: Exclude Columns")
.withType(Type.STRING)
.withType(Type.LIST)
.withWidth(Width.LONG)
.withImportance(Importance.LOW)
.withValidation(RelationalDatabaseConnectorConfig::validateColumnExcludeList)
.withValidation(Field::isListOfRegex, RelationalDatabaseConnectorConfig::validateColumnExcludeList)
.withInvisibleRecommender()
.withDescription("Regular expressions matching columns to exclude from change events (deprecated, use \"" + COLUMN_EXCLUDE_LIST.name() + "\" instead)");
@ -240,9 +240,10 @@ public static DecimalHandlingMode parse(String value, String defaultValue) {
*/
public static final Field COLUMN_INCLUDE_LIST = Field.create("column.include.list")
.withDisplayName("Include Columns")
.withType(Type.STRING)
.withType(Type.LIST)
.withWidth(Width.LONG)
.withImportance(Importance.MEDIUM)
.withValidation(Field::isListOfRegex, RelationalDatabaseConnectorConfig::validateColumnExcludeList)
.withDescription("Regular expressions matching columns to include in change events");
/**
@ -251,9 +252,10 @@ public static DecimalHandlingMode parse(String value, String defaultValue) {
@Deprecated
public static final Field COLUMN_WHITELIST = Field.create("column.whitelist")
.withDisplayName("Deprecated: Include Columns")
.withType(Type.STRING)
.withType(Type.LIST)
.withWidth(Width.LONG)
.withImportance(Importance.LOW)
.withValidation(Field::isListOfRegex, RelationalDatabaseConnectorConfig::validateColumnExcludeList)
.withInvisibleRecommender()
.withDescription("Regular expressions matching columns to include in change events (deprecated, use \"" + COLUMN_INCLUDE_LIST.name() + "\" instead)");
@ -303,7 +305,8 @@ public static DecimalHandlingMode parse(String value, String defaultValue) {
.withType(Type.LIST)
.withWidth(Width.LONG)
.withImportance(Importance.HIGH)
.withDependents(TABLE_INCLUDE_LIST_NAME, TABLE_WHITELIST_NAME)
.withValidation(Field::isListOfRegex)
.withDependents(TABLE_INCLUDE_LIST_NAME)
.withDescription("The schemas for which events should be captured");
/**
@ -315,7 +318,8 @@ public static DecimalHandlingMode parse(String value, String defaultValue) {
.withType(Type.LIST)
.withWidth(Width.LONG)
.withImportance(Importance.LOW)
.withDependents(TABLE_INCLUDE_LIST_NAME, TABLE_WHITELIST_NAME)
.withValidation(Field::isListOfRegex)
.withDependents(TABLE_INCLUDE_LIST_NAME)
.withInvisibleRecommender()
.withDescription("The schemas for which events should be captured (deprecated, use \"" + SCHEMA_INCLUDE_LIST.name() + "\" instead)");
@ -325,10 +329,10 @@ public static DecimalHandlingMode parse(String value, String defaultValue) {
*/
public static final Field SCHEMA_EXCLUDE_LIST = Field.create(SCHEMA_EXCLUDE_LIST_NAME)
.withDisplayName("Exclude Schemas")
.withType(Type.STRING)
.withType(Type.LIST)
.withWidth(Width.LONG)
.withImportance(Importance.MEDIUM)
.withValidation(RelationalDatabaseConnectorConfig::validateSchemaExcludeList)
.withValidation(Field::isListOfRegex, RelationalDatabaseConnectorConfig::validateSchemaExcludeList)
.withInvisibleRecommender()
.withDescription("The schemas for which events must not be captured");
@ -338,10 +342,10 @@ public static DecimalHandlingMode parse(String value, String defaultValue) {
@Deprecated
public static final Field SCHEMA_BLACKLIST = Field.create("schema.blacklist")
.withDisplayName("Deprecated: Exclude Schemas")
.withType(Type.STRING)
.withType(Type.LIST)
.withWidth(Width.LONG)
.withImportance(Importance.LOW)
.withValidation(RelationalDatabaseConnectorConfig::validateSchemaExcludeList)
.withValidation(Field::isListOfRegex, RelationalDatabaseConnectorConfig::validateSchemaExcludeList)
.withInvisibleRecommender()
.withDescription("The schemas for which events must not be captured (deprecated, use \"" + SCHEMA_EXCLUDE_LIST.name() + "\" instead)");