private static void defineThroughputControlConfig()

in sdk/cosmos/azure-cosmos-kafka-connect/src/main/java/com/azure/cosmos/kafka/connect/implementation/KafkaCosmosConfig.java [478:684]


    private static void defineThroughputControlConfig(ConfigDef result) {
        final String throughputControlGroupName = "throughput control";
        int throughputControlGroupOrder = 0;

        // For optional config, need to provide a default value
        result
            .define(
                THROUGHPUT_CONTROL_ENABLED,
                ConfigDef.Type.BOOLEAN,
                DEFAULT_THROUGHPUT_CONTROL_ENABLED,
                ConfigDef.Importance.MEDIUM,
                THROUGHPUT_CONTROL_ENABLED_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.MEDIUM,
                THROUGHPUT_CONTROL_ENABLED_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_ACCOUNT_ENDPOINT,
                ConfigDef.Type.STRING,
                DEFAULT_THROUGHPUT_CONTROL_ACCOUNT_ENDPOINT,
                ConfigDef.Importance.LOW,
                THROUGHPUT_CONTROL_ACCOUNT_ENDPOINT_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.LONG,
                THROUGHPUT_CONTROL_ACCOUNT_ENDPOINT_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_ACCOUNT_AZURE_ENVIRONMENT,
                ConfigDef.Type.STRING,
                DEFAULT_THROUGHPUT_CONTROL_ACCOUNT_AZURE_ENVIRONMENT,
                new AzureEnvironmentValidator(),
                ConfigDef.Importance.LOW,
                THROUGHPUT_CONTROL_ACCOUNT_AZURE_ENVIRONMENT_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.LONG,
                THROUGHPUT_CONTROL_ACCOUNT_AZURE_ENVIRONMENT_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_ACCOUNT_TENANT_ID,
                ConfigDef.Type.STRING,
                DEFAULT_THROUGHPUT_CONTROL_ACCOUNT_TENANT_ID,
                ConfigDef.Importance.LOW,
                THROUGHPUT_CONTROL_ACCOUNT_TENANT_ID_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.LONG,
                THROUGHPUT_CONTROL_ACCOUNT_TENANT_ID_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_AUTH_TYPE,
                ConfigDef.Type.STRING,
                DEFAULT_THROUGHPUT_CONTROL_AUTH_TYPE,
                new AuthTypeValidator(),
                ConfigDef.Importance.LOW,
                THROUGHPUT_CONTROL_AUTH_TYPE_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.MEDIUM,
                THROUGHPUT_CONTROL_AUTH_TYPE_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_ACCOUNT_KEY,
                ConfigDef.Type.PASSWORD,
                DEFAULT_THROUGHPUT_CONTROL_ACCOUNT_KEY,
                ConfigDef.Importance.LOW,
                THROUGHPUT_CONTROL_ACCOUNT_KEY_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.LONG,
                THROUGHPUT_CONTROL_ACCOUNT_KEY_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_AAD_CLIENT_ID,
                ConfigDef.Type.STRING,
                DEFAULT_THROUGHPUT_CONTROL_AAD_CLIENT_ID,
                ConfigDef.Importance.LOW,
                THROUGHPUT_CONTROL_AAD_CLIENT_ID_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.MEDIUM,
                THROUGHPUT_CONTROL_AAD_CLIENT_ID_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_AAD_CLIENT_SECRET,
                ConfigDef.Type.PASSWORD,
                DEFAULT_THROUGHPUT_CONTROL_AAD_CLIENT_SECRET,
                ConfigDef.Importance.LOW,
                THROUGHPUT_CONTROL_AAD_CLIENT_SECRET_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.MEDIUM,
                THROUGHPUT_CONTROL_AAD_CLIENT_SECRET_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_PREFERRED_REGIONS_LIST,
                ConfigDef.Type.STRING,
                DEFAULT_THROUGHPUT_CONTROL_PREFERRED_REGIONS_LIST,
                ConfigDef.Importance.LOW,
                THROUGHPUT_CONTROL_PREFERRED_REGIONS_LIST_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.LONG,
                THROUGHPUT_CONTROL_PREFERRED_REGIONS_LIST_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_USE_GATEWAY_MODE,
                ConfigDef.Type.BOOLEAN,
                DEFAULT_THROUGHPUT_CONTROL_USE_GATEWAY_MODE,
                ConfigDef.Importance.LOW,
                THROUGHPUT_CONTROL_USE_GATEWAY_MODE_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.MEDIUM,
                THROUGHPUT_CONTROL_USE_GATEWAY_MODE_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_GROUP_NAME,
                ConfigDef.Type.STRING,
                DEFAULT_THROUGHPUT_CONTROL_GROUP_NAME,
                ConfigDef.Importance.MEDIUM,
                THROUGHPUT_CONTROL_GROUP_NAME_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.LONG,
                THROUGHPUT_CONTROL_GROUP_NAME_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_TARGET_THROUGHPUT,
                ConfigDef.Type.INT,
                DEFAULT_THROUGHPUT_CONTROL_TARGET_THROUGHPUT,
                ConfigDef.Importance.MEDIUM,
                THROUGHPUT_CONTROL_TARGET_THROUGHPUT_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.MEDIUM,
                THROUGHPUT_CONTROL_TARGET_THROUGHPUT_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_TARGET_THROUGHPUT_THRESHOLD,
                ConfigDef.Type.DOUBLE,
                DEFAULT_THROUGHPUT_CONTROL_TARGET_THROUGHPUT_THRESHOLD,
                ConfigDef.Importance.MEDIUM,
                THROUGHPUT_CONTROL_TARGET_THROUGHPUT_THRESHOLD_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.MEDIUM,
                THROUGHPUT_CONTROL_TARGET_THROUGHPUT_THRESHOLD_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_GLOBAL_CONTROL_DATABASE,
                ConfigDef.Type.STRING,
                DEFAULT_THROUGHPUT_CONTROL_GLOBAL_CONTROL_DATABASE,
                ConfigDef.Importance.MEDIUM,
                THROUGHPUT_CONTROL_GLOBAL_CONTROL_DATABASE_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.LONG,
                THROUGHPUT_CONTROL_GLOBAL_CONTROL_DATABASE_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_GLOBAL_CONTROL_CONTAINER,
                ConfigDef.Type.STRING,
                DEFAULT_THROUGHPUT_CONTROL_GLOBAL_CONTROL_CONTAINER,
                ConfigDef.Importance.MEDIUM,
                THROUGHPUT_CONTROL_GLOBAL_CONTROL_CONTAINER_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.LONG,
                THROUGHPUT_CONTROL_GLOBAL_CONTROL_CONTAINER_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_PRIORITY_LEVEL,
                ConfigDef.Type.STRING,
                DEFAULT_THROUGHPUT_CONTROL_PRIORITY_LEVEL,
                ConfigDef.Importance.MEDIUM,
                THROUGHPUT_CONTROL_PRIORITY_LEVEL_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.MEDIUM,
                THROUGHPUT_CONTROL_PRIORITY_LEVEL_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_GLOBAL_CONTROL_RENEW_INTERVAL_IN_MS,
                ConfigDef.Type.INT,
                DEFAULT_THROUGHPUT_CONTROL_GLOBAL_CONTROL_RENEW_INTERVAL_IN_MS,
                ConfigDef.Importance.LOW,
                THROUGHPUT_CONTROL_GLOBAL_CONTROL_RENEW_INTERVAL_IN_MS_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.MEDIUM,
                THROUGHPUT_CONTROL_GLOBAL_CONTROL_RENEW_INTERVAL_IN_MS_DISPLAY
            )
            .define(
                THROUGHPUT_CONTROL_GLOBAL_CONTROL_EXPIRE_INTERVAL_IN_MS,
                ConfigDef.Type.INT,
                DEFAULT_THROUGHPUT_CONTROL_GLOBAL_CONTROL_EXPIRE_INTERVAL_IN_MS,
                ConfigDef.Importance.LOW,
                THROUGHPUT_CONTROL_GLOBAL_CONTROL_EXPIRE_INTERVAL_IN_MS_DOC,
                throughputControlGroupName,
                throughputControlGroupOrder++,
                ConfigDef.Width.MEDIUM,
                THROUGHPUT_CONTROL_GLOBAL_CONTROL_EXPIRE_INTERVAL_IN_MS_DISPLAY
            );
    }