AWS SDK

AWS SDK

rev. beb16d68a5a725699d9777bc51c61fafe31c4a1d..c0f9fd09bc2af9b6000b8c3a00c72b6d9045c31d

Files changed:

tmp-codegen-diff/services/codebuild/build/tmp/jvmJar/MANIFEST.MF

@@ -1,0 +2,0 @@
    1         -
Manifest-Version: 1.0
    2         -

tmp-codegen-diff/services/codebuild/generated-src/main/kotlin/aws/sdk/kotlin/services/codebuild/CodeBuildClient.kt

@@ -116,116 +289,293 @@
  136    136   
import aws.sdk.kotlin.services.codebuild.model.UpdateReportGroupResponse
  137    137   
import aws.sdk.kotlin.services.codebuild.model.UpdateWebhookRequest
  138    138   
import aws.sdk.kotlin.services.codebuild.model.UpdateWebhookResponse
  139    139   
import aws.smithy.kotlin.runtime.auth.AuthSchemeId
  140    140   
import aws.smithy.kotlin.runtime.auth.awscredentials.CredentialsProvider
  141    141   
import aws.smithy.kotlin.runtime.auth.awscredentials.CredentialsProviderConfig
  142    142   
import aws.smithy.kotlin.runtime.awsprotocol.ClockSkewInterceptor
  143    143   
import aws.smithy.kotlin.runtime.client.AbstractSdkClientBuilder
  144    144   
import aws.smithy.kotlin.runtime.client.AbstractSdkClientFactory
  145    145   
import aws.smithy.kotlin.runtime.client.LogMode
         146  +
import aws.smithy.kotlin.runtime.client.LogRedactionConfig
  146    147   
import aws.smithy.kotlin.runtime.client.RetryClientConfig
  147    148   
import aws.smithy.kotlin.runtime.client.RetryStrategyClientConfig
  148    149   
import aws.smithy.kotlin.runtime.client.RetryStrategyClientConfigImpl
  149    150   
import aws.smithy.kotlin.runtime.client.SdkClient
  150    151   
import aws.smithy.kotlin.runtime.client.SdkClientConfig
  151    152   
import aws.smithy.kotlin.runtime.client.region.RegionProvider
  152    153   
import aws.smithy.kotlin.runtime.http.auth.AuthScheme
  153    154   
import aws.smithy.kotlin.runtime.http.auth.HttpAuthConfig
  154    155   
import aws.smithy.kotlin.runtime.http.config.HttpClientConfig
  155    156   
import aws.smithy.kotlin.runtime.http.config.HttpEngineConfig
  156    157   
import aws.smithy.kotlin.runtime.http.config.TimeoutConfig
  157    158   
import aws.smithy.kotlin.runtime.http.engine.HttpClientEngine
  158    159   
import aws.smithy.kotlin.runtime.http.engine.HttpEngineConfigImpl
  159    160   
import aws.smithy.kotlin.runtime.http.interceptors.HttpInterceptor
  160    161   
import aws.smithy.kotlin.runtime.net.url.Url
  161    162   
import aws.smithy.kotlin.runtime.retries.RetryStrategy
  162    163   
import aws.smithy.kotlin.runtime.retries.policy.RetryPolicy
  163    164   
import aws.smithy.kotlin.runtime.telemetry.Global
  164    165   
import aws.smithy.kotlin.runtime.telemetry.TelemetryConfig
  165    166   
import aws.smithy.kotlin.runtime.telemetry.TelemetryProvider
  166    167   
import aws.smithy.kotlin.runtime.util.LazyAsyncValue
  167    168   
import kotlin.collections.List
         169  +
import kotlin.collections.Set
  168    170   
import kotlin.jvm.JvmStatic
  169    171   
import kotlin.time.Duration
  170    172   
import kotlinx.coroutines.runBlocking
  171    173   
  172    174   
  173    175   
public const val ServiceId: String = "CodeBuild"
  174    176   
public const val SdkVersion: String = "1.6.105-SNAPSHOT"
  175    177   
public const val ServiceApiVersion: String = "2016-10-06"
  176    178   
  177    179   
/**
  178    180   
 * # CodeBuild
  179    181   
 * CodeBuild is a fully managed build service in the cloud. CodeBuild compiles your source code, runs unit tests, and produces artifacts that are ready to deploy. CodeBuild eliminates the need to provision, manage, and scale your own build servers. It provides prepackaged build environments for the most popular programming languages and build tools, such as Apache Maven, Gradle, and more. You can also fully customize build environments in CodeBuild to use your own build tools. CodeBuild scales automatically to meet peak build requests. You pay only for the build time you consume. For more information about CodeBuild, see the *[CodeBuild User Guide](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html).*
  180    182   
 */
  181    183   
public interface CodeBuildClient : SdkClient {
  182    184   
    /**
  183    185   
     * CodeBuildClient's configuration
  184    186   
     */
  185    187   
    public override val config: Config
  186    188   
  187    189   
    public companion object : AbstractAwsSdkClientFactory<Config, Config.Builder, CodeBuildClient, Builder>()
  188    190   
     {
  189    191   
        @JvmStatic
  190    192   
        override fun builder(): Builder = Builder()
  191    193   
  192    194   
        override fun finalizeConfig(builder: Builder) {
  193    195   
            super.finalizeConfig(builder)
  194    196   
            builder.config.interceptors.add(0, ClockSkewInterceptor())
  195    197   
        }
  196    198   
  197    199   
        override suspend fun finalizeEnvironmentalConfig(builder: Builder, sharedConfig: LazyAsyncValue<AwsSharedConfig>, activeProfile: LazyAsyncValue<AwsProfile>) {
  198    200   
            super.finalizeEnvironmentalConfig(builder, sharedConfig, activeProfile)
  199    201   
            builder.config.endpointUrl = builder.config.endpointUrl ?: resolveEndpointUrl(
  200    202   
                sharedConfig,
  201    203   
                "CodeBuild",
  202    204   
                "CODEBUILD",
  203    205   
                "codebuild",
  204    206   
            )
  205    207   
        }
  206    208   
    }
  207    209   
  208    210   
    public class Builder internal constructor(): AbstractSdkClientBuilder<Config, Config.Builder, CodeBuildClient>() {
  209    211   
        override val config: Config.Builder = Config.Builder()
  210    212   
        override fun newClient(config: Config): CodeBuildClient = DefaultCodeBuildClient(config)
  211    213   
    }
  212    214   
  213         -
    public class Config private constructor(builder: Builder) : AwsSdkClientConfig, CredentialsProviderConfig, HttpAuthConfig, HttpClientConfig, HttpEngineConfig by builder.buildHttpEngineConfig(), RetryClientConfig, RetryStrategyClientConfig by builder.buildRetryStrategyClientConfig(), SdkClientConfig, TelemetryConfig, TimeoutConfig {
         215  +
    public class Config private constructor(builder: Builder) : AwsSdkClientConfig, CredentialsProviderConfig, HttpAuthConfig, HttpClientConfig, HttpEngineConfig by builder.buildHttpEngineConfig(), LogRedactionConfig, RetryClientConfig, RetryStrategyClientConfig by builder.buildRetryStrategyClientConfig(), SdkClientConfig, TelemetryConfig, TimeoutConfig {
  214    216   
        override val clientName: String = builder.clientName
  215    217   
        override val region: String? = (builder.region ?: runBlocking { builder.regionProvider?.getRegion() ?: resolveRegion() })?.let { validateRegion(it) }
  216    218   
        override val regionProvider: RegionProvider = builder.regionProvider ?: DefaultRegionProviderChain()
  217    219   
        override val attemptTimeout: Duration? = builder.attemptTimeout
  218    220   
        override val authSchemePreference: kotlin.collections.List<aws.smithy.kotlin.runtime.auth.AuthSchemeId>? = builder.authSchemePreference
  219    221   
        override val authSchemes: kotlin.collections.List<aws.smithy.kotlin.runtime.http.auth.AuthScheme> = builder.authSchemes
  220    222   
        override val callTimeout: Duration? = builder.callTimeout
  221    223   
        override val credentialsProvider: CredentialsProvider = builder.credentialsProvider ?: DefaultChainCredentialsProvider(httpClient = httpClient, region = region).manage()
  222    224   
        public val endpointProvider: CodeBuildEndpointProvider = builder.endpointProvider ?: DefaultCodeBuildEndpointProvider()
  223    225   
        public val endpointUrl: Url? = builder.endpointUrl
  224    226   
        override val interceptors: kotlin.collections.List<aws.smithy.kotlin.runtime.http.interceptors.HttpInterceptor> = builder.interceptors
  225    227   
        override val logMode: LogMode = builder.logMode ?: LogMode.Default
         228  +
        override val logRedactedHeaders: kotlin.collections.Set<kotlin.String> = builder.logRedactedHeaders ?: emptySet()
  226    229   
        override val retryPolicy: RetryPolicy<Any?> = builder.retryPolicy ?: AwsRetryPolicy.Default
  227    230   
        override val telemetryProvider: TelemetryProvider = builder.telemetryProvider ?: TelemetryProvider.Global
  228    231   
        override val useDualStack: Boolean = builder.useDualStack ?: false
  229    232   
        override val useFips: Boolean = builder.useFips ?: false
  230    233   
        override val applicationId: String? = builder.applicationId
  231    234   
        public val authSchemeProvider: CodeBuildAuthSchemeProvider = builder.authSchemeProvider ?: DefaultCodeBuildAuthSchemeProvider(authSchemePreference = authSchemePreference)
  232    235   
        public companion object {
  233    236   
            public inline operator fun invoke(block: Builder.() -> kotlin.Unit): Config = Builder().apply(block).build()
  234    237   
        }
  235    238   
  236    239   
        public fun toBuilder(): Builder = Builder().apply {
  237    240   
            clientName = this@Config.clientName
  238    241   
            region = this@Config.region
  239    242   
            regionProvider = this@Config.regionProvider
  240    243   
            attemptTimeout = this@Config.attemptTimeout
  241    244   
            authSchemePreference = this@Config.authSchemePreference
  242    245   
            authSchemes = this@Config.authSchemes
  243    246   
            callTimeout = this@Config.callTimeout
  244    247   
            credentialsProvider = this@Config.credentialsProvider
  245    248   
            endpointProvider = this@Config.endpointProvider
  246    249   
            endpointUrl = this@Config.endpointUrl
  247    250   
            httpClient = this@Config.httpClient
  248    251   
            interceptors = this@Config.interceptors.toMutableList()
  249    252   
            logMode = this@Config.logMode
         253  +
            logRedactedHeaders = this@Config.logRedactedHeaders
  250    254   
            retryPolicy = this@Config.retryPolicy
  251    255   
            retryStrategy = this@Config.retryStrategy
  252    256   
            telemetryProvider = this@Config.telemetryProvider
  253    257   
            useDualStack = this@Config.useDualStack
  254    258   
            useFips = this@Config.useFips
  255    259   
            applicationId = this@Config.applicationId
  256    260   
            authSchemeProvider = this@Config.authSchemeProvider
  257    261   
        }
  258    262   
  259         -
        public class Builder : AwsSdkClientConfig.Builder, CredentialsProviderConfig.Builder, HttpAuthConfig.Builder, HttpClientConfig.Builder, HttpEngineConfig.Builder by HttpEngineConfigImpl.BuilderImpl(), RetryClientConfig.Builder, RetryStrategyClientConfig.Builder by RetryStrategyClientConfigImpl.BuilderImpl(), SdkClientConfig.Builder<Config>, TelemetryConfig.Builder, TimeoutConfig.Builder {
         263  +
        public class Builder : AwsSdkClientConfig.Builder, CredentialsProviderConfig.Builder, HttpAuthConfig.Builder, HttpClientConfig.Builder, HttpEngineConfig.Builder by HttpEngineConfigImpl.BuilderImpl(), LogRedactionConfig.Builder, RetryClientConfig.Builder, RetryStrategyClientConfig.Builder by RetryStrategyClientConfigImpl.BuilderImpl(), SdkClientConfig.Builder<Config>, TelemetryConfig.Builder, TimeoutConfig.Builder {
  260    264   
            /**
  261    265   
             * A reader-friendly name for the client.
  262    266   
             */
  263    267   
            override var clientName: String = "CodeBuild"
  264    268   
  265    269   
            /**
  266    270   
             * The AWS region (e.g. `us-west-2`) to make requests to. See about AWS
  267    271   
             * [global infrastructure](https://aws.amazon.com/about-aws/global-infrastructure/regions_az/) for more information.
  268    272   
             * When specified, this static region configuration takes precedence over other region resolution methods.
  269    273   
             *
@@ -333,337 +392,403 @@
  353    357   
             * raw requests or responses. Use this setting to opt-in to additional debug logging.
  354    358   
             *
  355    359   
             * This can be used to configure logging of requests, responses, retries, etc of SDK clients.
  356    360   
             *
  357    361   
             * **NOTE**: Logging of raw requests or responses may leak sensitive information! It may also have
  358    362   
             * performance considerations when dumping the request/response body. This is primarily a tool for
  359    363   
             * debug purposes.
  360    364   
             */
  361    365   
            override var logMode: LogMode? = null
  362    366   
         367  +
            /**
         368  +
             * Set of HTTP header names whose values will be replaced with "<REDACTED>" in
         369  +
             * request/response debug logging. Matching is case-insensitive. Empty by default
         370  +
             * (no headers are redacted).
         371  +
             */
         372  +
            override var logRedactedHeaders: kotlin.collections.Set<kotlin.String>? = null
         373  +
  363    374   
            /**
  364    375   
             * The policy to use for evaluating operation results and determining whether/how to retry.
  365    376   
             */
  366    377   
            override var retryPolicy: RetryPolicy<Any?>? = null
  367    378   
  368    379   
            /**
  369    380   
             * The telemetry provider used to instrument the SDK operations with. By default, the global telemetry
  370    381   
             * provider will be used.
  371    382   
             */
  372    383   
            override var telemetryProvider: TelemetryProvider? = null

tmp-codegen-diff/services/codebuild/generated-src/main/kotlin/aws/sdk/kotlin/services/codebuild/DefaultCodeBuildClient.kt

@@ -2184,2184 +2221,2222 @@
 2204   2204   
    }
 2205   2205   
 2206   2206   
    /**
 2207   2207   
     * merge the defaults configured for the service into the execution context before firing off a request
 2208   2208   
     */
 2209   2209   
    private fun mergeServiceDefaults(ctx: ExecutionContext) {
 2210   2210   
        ctx.putIfAbsentNotNull(HttpOperationContext.AttemptTimeout, config.attemptTimeout)
 2211   2211   
        ctx.putIfAbsentNotNull(HttpOperationContext.CallTimeout, config.callTimeout)
 2212   2212   
        ctx.putIfAbsent(SdkClientOption.ClientName, config.clientName)
 2213   2213   
        ctx.putIfAbsent(SdkClientOption.LogMode, config.logMode)
        2214  +
        ctx.putIfAbsent(SdkClientOption.LogRedactedHeaders, config.logRedactedHeaders)
 2214   2215   
        ctx.putIfAbsentNotNull(AwsAttributes.Region, config.region)
 2215   2216   
        ctx.putIfAbsentNotNull(AwsSigningAttributes.SigningRegion, config.region)
 2216   2217   
        ctx.putIfAbsent(AwsSigningAttributes.SigningService, "codebuild")
 2217   2218   
        ctx.putIfAbsent(AwsSigningAttributes.CredentialsProvider, config.credentialsProvider)
 2218   2219   
        ctx.putIfAbsentNotNull(AwsSdkClientOption.ApplicationId, config.applicationId)
 2219   2220   
    }
 2220   2221   
 2221   2222   
}

tmp-codegen-diff/services/dynamodb/build/tmp/jvmJar/MANIFEST.MF

@@ -1,0 +2,0 @@
    1         -
Manifest-Version: 1.0
    2         -

tmp-codegen-diff/services/dynamodb/generated-src/main/kotlin/aws/sdk/kotlin/services/dynamodb/DefaultDynamoDbClient.kt

@@ -2553,2553 +2591,2592 @@
 2573   2573   
    }
 2574   2574   
 2575   2575   
    /**
 2576   2576   
     * merge the defaults configured for the service into the execution context before firing off a request
 2577   2577   
     */
 2578   2578   
    private fun mergeServiceDefaults(ctx: ExecutionContext) {
 2579   2579   
        ctx.putIfAbsentNotNull(HttpOperationContext.AttemptTimeout, config.attemptTimeout)
 2580   2580   
        ctx.putIfAbsentNotNull(HttpOperationContext.CallTimeout, config.callTimeout)
 2581   2581   
        ctx.putIfAbsent(SdkClientOption.ClientName, config.clientName)
 2582   2582   
        ctx.putIfAbsent(SdkClientOption.LogMode, config.logMode)
        2583  +
        ctx.putIfAbsent(SdkClientOption.LogRedactedHeaders, config.logRedactedHeaders)
 2583   2584   
        ctx.putIfAbsentNotNull(SdkClientOption.IdempotencyTokenProvider, config.idempotencyTokenProvider)
 2584   2585   
        ctx.putIfAbsentNotNull(AwsAttributes.Region, config.region)
 2585   2586   
        ctx.putIfAbsentNotNull(AwsSigningAttributes.SigningRegion, config.region)
 2586   2587   
        ctx.putIfAbsent(AwsSigningAttributes.SigningService, "dynamodb")
 2587   2588   
        ctx.putIfAbsent(AwsSigningAttributes.CredentialsProvider, config.credentialsProvider)
 2588   2589   
        ctx.putIfAbsentNotNull(AwsSdkClientOption.ApplicationId, config.applicationId)
 2589   2590   
    }
 2590   2591   
 2591   2592   
}

tmp-codegen-diff/services/dynamodb/generated-src/main/kotlin/aws/sdk/kotlin/services/dynamodb/DynamoDbClient.kt

@@ -119,119 +309,313 @@
  139    139   
import aws.sdk.kotlin.services.dynamodb.model.UpdateTimeToLiveResponse
  140    140   
import aws.smithy.kotlin.runtime.auth.AuthSchemeId
  141    141   
import aws.smithy.kotlin.runtime.auth.awscredentials.CredentialsProvider
  142    142   
import aws.smithy.kotlin.runtime.auth.awscredentials.CredentialsProviderConfig
  143    143   
import aws.smithy.kotlin.runtime.awsprotocol.ClockSkewInterceptor
  144    144   
import aws.smithy.kotlin.runtime.client.AbstractSdkClientBuilder
  145    145   
import aws.smithy.kotlin.runtime.client.AbstractSdkClientFactory
  146    146   
import aws.smithy.kotlin.runtime.client.IdempotencyTokenConfig
  147    147   
import aws.smithy.kotlin.runtime.client.IdempotencyTokenProvider
  148    148   
import aws.smithy.kotlin.runtime.client.LogMode
         149  +
import aws.smithy.kotlin.runtime.client.LogRedactionConfig
  149    150   
import aws.smithy.kotlin.runtime.client.RetryClientConfig
  150    151   
import aws.smithy.kotlin.runtime.client.RetryStrategyClientConfig
  151    152   
import aws.smithy.kotlin.runtime.client.RetryStrategyClientConfigImpl
  152    153   
import aws.smithy.kotlin.runtime.client.SdkClient
  153    154   
import aws.smithy.kotlin.runtime.client.SdkClientConfig
  154    155   
import aws.smithy.kotlin.runtime.client.region.RegionProvider
  155    156   
import aws.smithy.kotlin.runtime.http.auth.AuthScheme
  156    157   
import aws.smithy.kotlin.runtime.http.auth.HttpAuthConfig
  157    158   
import aws.smithy.kotlin.runtime.http.config.HttpClientConfig
  158    159   
import aws.smithy.kotlin.runtime.http.config.HttpEngineConfig
  159    160   
import aws.smithy.kotlin.runtime.http.config.TimeoutConfig
  160    161   
import aws.smithy.kotlin.runtime.http.engine.HttpClientEngine
  161    162   
import aws.smithy.kotlin.runtime.http.engine.HttpEngineConfigImpl
  162    163   
import aws.smithy.kotlin.runtime.http.interceptors.HttpInterceptor
  163    164   
import aws.smithy.kotlin.runtime.net.url.Url
  164    165   
import aws.smithy.kotlin.runtime.retries.RetryStrategy
  165    166   
import aws.smithy.kotlin.runtime.retries.policy.RetryPolicy
  166    167   
import aws.smithy.kotlin.runtime.telemetry.Global
  167    168   
import aws.smithy.kotlin.runtime.telemetry.TelemetryConfig
  168    169   
import aws.smithy.kotlin.runtime.telemetry.TelemetryProvider
  169    170   
import aws.smithy.kotlin.runtime.util.LazyAsyncValue
  170    171   
import kotlin.collections.List
         172  +
import kotlin.collections.Set
  171    173   
import kotlin.jvm.JvmStatic
  172    174   
import kotlin.time.Duration
  173    175   
import kotlin.time.Duration.Companion.milliseconds
  174    176   
import kotlinx.coroutines.runBlocking
  175    177   
  176    178   
  177    179   
public const val ServiceId: String = "DynamoDB"
  178    180   
public const val SdkVersion: String = "1.6.105-SNAPSHOT"
  179    181   
public const val ServiceApiVersion: String = "2012-08-10"
  180    182   
  181    183   
/**
  182    184   
 * # Amazon DynamoDB
  183    185   
 * Amazon DynamoDB is a fully managed NoSQL database service that provides fast and predictable performance with seamless scalability. DynamoDB lets you offload the administrative burdens of operating and scaling a distributed database, so that you don't have to worry about hardware provisioning, setup and configuration, replication, software patching, or cluster scaling.
  184    186   
 *
  185    187   
 * With DynamoDB, you can create database tables that can store and retrieve any amount of data, and serve any level of request traffic. You can scale up or scale down your tables' throughput capacity without downtime or performance degradation, and use the Amazon Web Services Management Console to monitor resource utilization and performance metrics.
  186    188   
 *
  187    189   
 * DynamoDB automatically spreads the data and traffic for your tables over a sufficient number of servers to handle your throughput and storage requirements, while maintaining consistent and fast performance. All of your data is stored on solid state disks (SSDs) and automatically replicated across multiple Availability Zones in an Amazon Web Services Region, providing built-in high availability and data durability.
  188    190   
 */
  189    191   
public interface DynamoDbClient : SdkClient {
  190    192   
    /**
  191    193   
     * DynamoDbClient's configuration
  192    194   
     */
  193    195   
    public override val config: Config
  194    196   
  195    197   
    public companion object : AbstractAwsSdkClientFactory<Config, Config.Builder, DynamoDbClient, Builder>()
  196    198   
     {
  197    199   
        @JvmStatic
  198    200   
        override fun builder(): Builder = Builder()
  199    201   
  200    202   
        override fun finalizeConfig(builder: Builder) {
  201    203   
            super.finalizeConfig(builder)
  202    204   
            builder.config.interceptors.add(0, ClockSkewInterceptor())
  203    205   
        }
  204    206   
  205    207   
        override suspend fun finalizeEnvironmentalConfig(builder: Builder, sharedConfig: LazyAsyncValue<AwsSharedConfig>, activeProfile: LazyAsyncValue<AwsProfile>) {
  206    208   
            super.finalizeEnvironmentalConfig(builder, sharedConfig, activeProfile)
  207    209   
            builder.config.endpointUrl = builder.config.endpointUrl ?: resolveEndpointUrl(
  208    210   
                sharedConfig,
  209    211   
                "DynamoDb",
  210    212   
                "DYNAMODB",
  211    213   
                "dynamodb",
  212    214   
            )
  213    215   
            builder.config.accountIdEndpointMode = builder.config.accountIdEndpointMode ?: resolveAccountIdEndpointMode(profile = activeProfile)
  214    216   
            val epDiscoveryEnabled = resolveEndpointDiscoveryEnabled(profile = activeProfile, serviceRequiresEpDiscovery = false)
  215    217   
            builder.config.endpointDiscoverer = builder.config.endpointDiscoverer ?: if (epDiscoveryEnabled) DefaultDynamoDbEndpointDiscoverer() else null
  216    218   
        }
  217    219   
  218    220   
        override val defaultMaxAttempts: Int = 4
  219    221   
        override val defaultInitialDelay: Duration = 25.milliseconds
  220    222   
    }
  221    223   
  222    224   
    public class Builder internal constructor(): AbstractSdkClientBuilder<Config, Config.Builder, DynamoDbClient>() {
  223    225   
        override val config: Config.Builder = Config.Builder()
  224    226   
        override fun newClient(config: Config): DynamoDbClient = DefaultDynamoDbClient(config)
  225    227   
    }
  226    228   
  227         -
    public class Config private constructor(builder: Builder) : AwsSdkClientConfig, CredentialsProviderConfig, HttpAuthConfig, HttpClientConfig, HttpEngineConfig by builder.buildHttpEngineConfig(), IdempotencyTokenConfig, RetryClientConfig, RetryStrategyClientConfig by builder.buildRetryStrategyClientConfig(), SdkClientConfig, TelemetryConfig, TimeoutConfig {
         229  +
    public class Config private constructor(builder: Builder) : AwsSdkClientConfig, CredentialsProviderConfig, HttpAuthConfig, HttpClientConfig, HttpEngineConfig by builder.buildHttpEngineConfig(), IdempotencyTokenConfig, LogRedactionConfig, RetryClientConfig, RetryStrategyClientConfig by builder.buildRetryStrategyClientConfig(), SdkClientConfig, TelemetryConfig, TimeoutConfig {
  228    230   
        override val clientName: String = builder.clientName
  229    231   
        override val region: String? = (builder.region ?: runBlocking { builder.regionProvider?.getRegion() ?: resolveRegion() })?.let { validateRegion(it) }
  230    232   
        override val regionProvider: RegionProvider = builder.regionProvider ?: DefaultRegionProviderChain()
  231    233   
        public val accountIdEndpointMode: AccountIdEndpointMode = builder.accountIdEndpointMode ?: AccountIdEndpointMode.PREFERRED
  232    234   
        override val attemptTimeout: Duration? = builder.attemptTimeout
  233    235   
        override val authSchemePreference: kotlin.collections.List<aws.smithy.kotlin.runtime.auth.AuthSchemeId>? = builder.authSchemePreference
  234    236   
        override val authSchemes: kotlin.collections.List<aws.smithy.kotlin.runtime.http.auth.AuthScheme> = builder.authSchemes
  235    237   
        override val callTimeout: Duration? = builder.callTimeout
  236    238   
        override val credentialsProvider: CredentialsProvider = builder.credentialsProvider ?: DefaultChainCredentialsProvider(httpClient = httpClient, region = region).manage()
  237    239   
        public val endpointDiscoverer: DynamoDbEndpointDiscoverer? = builder.endpointDiscoverer
  238    240   
        public val endpointProvider: DynamoDbEndpointProvider = builder.endpointProvider ?: DefaultDynamoDbEndpointProvider()
  239    241   
        public val endpointUrl: Url? = builder.endpointUrl
  240    242   
        override val idempotencyTokenProvider: IdempotencyTokenProvider = builder.idempotencyTokenProvider ?: IdempotencyTokenProvider.Default
  241    243   
        override val interceptors: kotlin.collections.List<aws.smithy.kotlin.runtime.http.interceptors.HttpInterceptor> = builder.interceptors
  242    244   
        override val logMode: LogMode = builder.logMode ?: LogMode.Default
         245  +
        override val logRedactedHeaders: kotlin.collections.Set<kotlin.String> = builder.logRedactedHeaders ?: emptySet()
  243    246   
        override val retryPolicy: RetryPolicy<Any?> = builder.retryPolicy ?: AwsRetryPolicy.Default
  244    247   
        override val telemetryProvider: TelemetryProvider = builder.telemetryProvider ?: TelemetryProvider.Global
  245    248   
        override val useDualStack: Boolean = builder.useDualStack ?: false
  246    249   
        override val useFips: Boolean = builder.useFips ?: false
  247    250   
        override val applicationId: String? = builder.applicationId
  248    251   
        public val authSchemeProvider: DynamoDbAuthSchemeProvider = builder.authSchemeProvider ?: DefaultDynamoDbAuthSchemeProvider(authSchemePreference = authSchemePreference)
  249    252   
        public companion object {
  250    253   
            public inline operator fun invoke(block: Builder.() -> kotlin.Unit): Config = Builder().apply(block).build()
  251    254   
        }
  252    255   
  253    256   
        public fun toBuilder(): Builder = Builder().apply {
  254    257   
            clientName = this@Config.clientName
  255    258   
            region = this@Config.region
  256    259   
            regionProvider = this@Config.regionProvider
  257    260   
            accountIdEndpointMode = this@Config.accountIdEndpointMode
  258    261   
            attemptTimeout = this@Config.attemptTimeout
  259    262   
            authSchemePreference = this@Config.authSchemePreference
  260    263   
            authSchemes = this@Config.authSchemes
  261    264   
            callTimeout = this@Config.callTimeout
  262    265   
            credentialsProvider = this@Config.credentialsProvider
  263    266   
            endpointDiscoverer = this@Config.endpointDiscoverer
  264    267   
            endpointProvider = this@Config.endpointProvider
  265    268   
            endpointUrl = this@Config.endpointUrl
  266    269   
            httpClient = this@Config.httpClient
  267    270   
            idempotencyTokenProvider = this@Config.idempotencyTokenProvider
  268    271   
            interceptors = this@Config.interceptors.toMutableList()
  269    272   
            logMode = this@Config.logMode
         273  +
            logRedactedHeaders = this@Config.logRedactedHeaders
  270    274   
            retryPolicy = this@Config.retryPolicy
  271    275   
            retryStrategy = this@Config.retryStrategy
  272    276   
            telemetryProvider = this@Config.telemetryProvider
  273    277   
            useDualStack = this@Config.useDualStack
  274    278   
            useFips = this@Config.useFips
  275    279   
            applicationId = this@Config.applicationId
  276    280   
            authSchemeProvider = this@Config.authSchemeProvider
  277    281   
        }
  278    282   
  279         -
        public class Builder : AwsSdkClientConfig.Builder, CredentialsProviderConfig.Builder, HttpAuthConfig.Builder, HttpClientConfig.Builder, HttpEngineConfig.Builder by HttpEngineConfigImpl.BuilderImpl(), IdempotencyTokenConfig.Builder, RetryClientConfig.Builder, RetryStrategyClientConfig.Builder by RetryStrategyClientConfigImpl.BuilderImpl(), SdkClientConfig.Builder<Config>, TelemetryConfig.Builder, TimeoutConfig.Builder {
         283  +
        public class Builder : AwsSdkClientConfig.Builder, CredentialsProviderConfig.Builder, HttpAuthConfig.Builder, HttpClientConfig.Builder, HttpEngineConfig.Builder by HttpEngineConfigImpl.BuilderImpl(), IdempotencyTokenConfig.Builder, LogRedactionConfig.Builder, RetryClientConfig.Builder, RetryStrategyClientConfig.Builder by RetryStrategyClientConfigImpl.BuilderImpl(), SdkClientConfig.Builder<Config>, TelemetryConfig.Builder, TimeoutConfig.Builder {
  280    284   
            /**
  281    285   
             * A reader-friendly name for the client.
  282    286   
             */
  283    287   
            override var clientName: String = "DynamoDB"
  284    288   
  285    289   
            /**
  286    290   
             * The AWS region (e.g. `us-west-2`) to make requests to. See about AWS
  287    291   
             * [global infrastructure](https://aws.amazon.com/about-aws/global-infrastructure/regions_az/) for more information.
  288    292   
             * When specified, this static region configuration takes precedence over other region resolution methods.
  289    293   
             *
@@ -371,375 +430,441 @@
  391    395   
             * raw requests or responses. Use this setting to opt-in to additional debug logging.
  392    396   
             *
  393    397   
             * This can be used to configure logging of requests, responses, retries, etc of SDK clients.
  394    398   
             *
  395    399   
             * **NOTE**: Logging of raw requests or responses may leak sensitive information! It may also have
  396    400   
             * performance considerations when dumping the request/response body. This is primarily a tool for
  397    401   
             * debug purposes.
  398    402   
             */
  399    403   
            override var logMode: LogMode? = null
  400    404   
         405  +
            /**
         406  +
             * Set of HTTP header names whose values will be replaced with "<REDACTED>" in
         407  +
             * request/response debug logging. Matching is case-insensitive. Empty by default
         408  +
             * (no headers are redacted).
         409  +
             */
         410  +
            override var logRedactedHeaders: kotlin.collections.Set<kotlin.String>? = null
         411  +
  401    412   
            /**
  402    413   
             * The policy to use for evaluating operation results and determining whether/how to retry.
  403    414   
             */
  404    415   
            override var retryPolicy: RetryPolicy<Any?>? = null
  405    416   
  406    417   
            /**
  407    418   
             * The telemetry provider used to instrument the SDK operations with. By default, the global telemetry
  408    419   
             * provider will be used.
  409    420   
             */
  410    421   
            override var telemetryProvider: TelemetryProvider? = null

tmp-codegen-diff/services/ec2/build/tmp/jvmJar/MANIFEST.MF

@@ -1,0 +2,0 @@
    1         -
Manifest-Version: 1.0
    2         -

tmp-codegen-diff/services/ec2/generated-src/main/kotlin/aws/sdk/kotlin/services/ec2/DefaultEc2Client.kt

@@ -32870,32870 +32908,32909 @@
32890  32890   
    }
32891  32891   
32892  32892   
    /**
32893  32893   
     * merge the defaults configured for the service into the execution context before firing off a request
32894  32894   
     */
32895  32895   
    private fun mergeServiceDefaults(ctx: ExecutionContext) {
32896  32896   
        ctx.putIfAbsentNotNull(HttpOperationContext.AttemptTimeout, config.attemptTimeout)
32897  32897   
        ctx.putIfAbsentNotNull(HttpOperationContext.CallTimeout, config.callTimeout)
32898  32898   
        ctx.putIfAbsent(SdkClientOption.ClientName, config.clientName)
32899  32899   
        ctx.putIfAbsent(SdkClientOption.LogMode, config.logMode)
       32900  +
        ctx.putIfAbsent(SdkClientOption.LogRedactedHeaders, config.logRedactedHeaders)
32900  32901   
        ctx.putIfAbsentNotNull(SdkClientOption.IdempotencyTokenProvider, config.idempotencyTokenProvider)
32901  32902   
        ctx.putIfAbsentNotNull(AwsAttributes.Region, config.region)
32902  32903   
        ctx.putIfAbsentNotNull(AwsSigningAttributes.SigningRegion, config.region)
32903  32904   
        ctx.putIfAbsent(AwsSigningAttributes.SigningService, "ec2")
32904  32905   
        ctx.putIfAbsent(AwsSigningAttributes.CredentialsProvider, config.credentialsProvider)
32905  32906   
        ctx.putIfAbsentNotNull(AwsSdkClientOption.ApplicationId, config.applicationId)
32906  32907   
    }
32907  32908   
32908  32909   
}

tmp-codegen-diff/services/ec2/generated-src/main/kotlin/aws/sdk/kotlin/services/ec2/Ec2Client.kt

@@ -1540,1540 +1728,1732 @@
 1560   1560   
import aws.sdk.kotlin.services.ec2.model.WithdrawByoipCidrResponse
 1561   1561   
import aws.smithy.kotlin.runtime.auth.AuthSchemeId
 1562   1562   
import aws.smithy.kotlin.runtime.auth.awscredentials.CredentialsProvider
 1563   1563   
import aws.smithy.kotlin.runtime.auth.awscredentials.CredentialsProviderConfig
 1564   1564   
import aws.smithy.kotlin.runtime.awsprotocol.ClockSkewInterceptor
 1565   1565   
import aws.smithy.kotlin.runtime.client.AbstractSdkClientBuilder
 1566   1566   
import aws.smithy.kotlin.runtime.client.AbstractSdkClientFactory
 1567   1567   
import aws.smithy.kotlin.runtime.client.IdempotencyTokenConfig
 1568   1568   
import aws.smithy.kotlin.runtime.client.IdempotencyTokenProvider
 1569   1569   
import aws.smithy.kotlin.runtime.client.LogMode
        1570  +
import aws.smithy.kotlin.runtime.client.LogRedactionConfig
 1570   1571   
import aws.smithy.kotlin.runtime.client.RetryClientConfig
 1571   1572   
import aws.smithy.kotlin.runtime.client.RetryStrategyClientConfig
 1572   1573   
import aws.smithy.kotlin.runtime.client.RetryStrategyClientConfigImpl
 1573   1574   
import aws.smithy.kotlin.runtime.client.SdkClient
 1574   1575   
import aws.smithy.kotlin.runtime.client.SdkClientConfig
 1575   1576   
import aws.smithy.kotlin.runtime.client.region.RegionProvider
 1576   1577   
import aws.smithy.kotlin.runtime.http.auth.AuthScheme
 1577   1578   
import aws.smithy.kotlin.runtime.http.auth.HttpAuthConfig
 1578   1579   
import aws.smithy.kotlin.runtime.http.config.HttpClientConfig
 1579   1580   
import aws.smithy.kotlin.runtime.http.config.HttpEngineConfig
 1580   1581   
import aws.smithy.kotlin.runtime.http.config.TimeoutConfig
 1581   1582   
import aws.smithy.kotlin.runtime.http.engine.HttpClientEngine
 1582   1583   
import aws.smithy.kotlin.runtime.http.engine.HttpEngineConfigImpl
 1583   1584   
import aws.smithy.kotlin.runtime.http.interceptors.HttpInterceptor
 1584   1585   
import aws.smithy.kotlin.runtime.net.url.Url
 1585   1586   
import aws.smithy.kotlin.runtime.retries.RetryStrategy
 1586   1587   
import aws.smithy.kotlin.runtime.retries.policy.RetryPolicy
 1587   1588   
import aws.smithy.kotlin.runtime.telemetry.Global
 1588   1589   
import aws.smithy.kotlin.runtime.telemetry.TelemetryConfig
 1589   1590   
import aws.smithy.kotlin.runtime.telemetry.TelemetryProvider
 1590   1591   
import aws.smithy.kotlin.runtime.util.LazyAsyncValue
 1591   1592   
import kotlin.collections.List
        1593  +
import kotlin.collections.Set
 1592   1594   
import kotlin.jvm.JvmStatic
 1593   1595   
import kotlin.time.Duration
 1594   1596   
import kotlinx.coroutines.runBlocking
 1595   1597   
 1596   1598   
 1597   1599   
public const val ServiceId: String = "EC2"
 1598   1600   
public const val SdkVersion: String = "1.6.105-SNAPSHOT"
 1599   1601   
public const val ServiceApiVersion: String = "2016-11-15"
 1600   1602   
 1601   1603   
/**
 1602   1604   
 * # Amazon Elastic Compute Cloud
 1603   1605   
 * This is the *Amazon EC2 API Reference*. It provides descriptions, API request parameters, and the XML response for each of the Amazon EC2 Query API actions. Note that the Amazon EC2 API includes actions for Amazon EC2 plus additional services, such as Amazon EBS and Amazon VPC.
 1604   1606   
 *
 1605   1607   
 * **Learn more**
 1606   1608   
 * + To learn about using the Query API, see [Using the API for Amazon EC2](https://docs.aws.amazon.com/ec2/latest/devguide/ec2-low-level-api.html).
 1607   1609   
 * + To learn about the permissions required to call an Amazon EC2 API action, see [Actions, resources, and condition keys for Amazon EC2](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonec2.html).
 1608   1610   
 * + To get the list of API actions by service and resource, see [Actions by service](https://docs.aws.amazon.com/ec2/latest/devguide/OperationList-query.html).
 1609   1611   
 * + To get the alphabetical list of API actions, see .
 1610   1612   
 * + To get descriptions of the API error codes, see [Error codes for the Amazon EC2 API](https://docs.aws.amazon.com/ec2/latest/devguide/errors-overview.html).
 1611   1613   
 *
 1612   1614   
 * Alternatively, use one of the following methods to access the Amazon EC2 API, instead of using the Query API directly:
 1613   1615   
 * + [Amazon Web Services CLI Command Reference - ec2 commands](https://docs.aws.amazon.com/cli/latest/reference/ec2/)
 1614   1616   
 * + [CloudFormation - Amazon EC2 resource type reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/AWS_EC2.html)
 1615   1617   
 * + [Amazon Web Services Tools for PowerShell Cmdlet Reference - Amazon EC2 cmdlets](https://docs.aws.amazon.com/powershell/v5/reference/items/EC2_cmdlets.html)
 1616   1618   
 * + [Amazon Web Services SDKs](https://builder.aws.com/build/tools)
 1617   1619   
 */
 1618   1620   
public interface Ec2Client : SdkClient {
 1619   1621   
    /**
 1620   1622   
     * Ec2Client's configuration
 1621   1623   
     */
 1622   1624   
    public override val config: Config
 1623   1625   
 1624   1626   
    public companion object : AbstractAwsSdkClientFactory<Config, Config.Builder, Ec2Client, Builder>()
 1625   1627   
     {
 1626   1628   
        @JvmStatic
 1627   1629   
        override fun builder(): Builder = Builder()
 1628   1630   
 1629   1631   
        override fun finalizeConfig(builder: Builder) {
 1630   1632   
            super.finalizeConfig(builder)
 1631   1633   
            builder.config.interceptors.add(0, ClockSkewInterceptor())
 1632   1634   
        }
 1633   1635   
 1634   1636   
        override suspend fun finalizeEnvironmentalConfig(builder: Builder, sharedConfig: LazyAsyncValue<AwsSharedConfig>, activeProfile: LazyAsyncValue<AwsProfile>) {
 1635   1637   
            super.finalizeEnvironmentalConfig(builder, sharedConfig, activeProfile)
 1636   1638   
            builder.config.endpointUrl = builder.config.endpointUrl ?: resolveEndpointUrl(
 1637   1639   
                sharedConfig,
 1638   1640   
                "Ec2",
 1639   1641   
                "EC2",
 1640   1642   
                "ec2",
 1641   1643   
            )
 1642   1644   
        }
 1643   1645   
    }
 1644   1646   
 1645   1647   
    public class Builder internal constructor(): AbstractSdkClientBuilder<Config, Config.Builder, Ec2Client>() {
 1646   1648   
        override val config: Config.Builder = Config.Builder()
 1647   1649   
        override fun newClient(config: Config): Ec2Client = DefaultEc2Client(config)
 1648   1650   
    }
 1649   1651   
 1650         -
    public class Config private constructor(builder: Builder) : AwsSdkClientConfig, CredentialsProviderConfig, HttpAuthConfig, HttpClientConfig, HttpEngineConfig by builder.buildHttpEngineConfig(), IdempotencyTokenConfig, RetryClientConfig, RetryStrategyClientConfig by builder.buildRetryStrategyClientConfig(), SdkClientConfig, TelemetryConfig, TimeoutConfig {
        1652  +
    public class Config private constructor(builder: Builder) : AwsSdkClientConfig, CredentialsProviderConfig, HttpAuthConfig, HttpClientConfig, HttpEngineConfig by builder.buildHttpEngineConfig(), IdempotencyTokenConfig, LogRedactionConfig, RetryClientConfig, RetryStrategyClientConfig by builder.buildRetryStrategyClientConfig(), SdkClientConfig, TelemetryConfig, TimeoutConfig {
 1651   1653   
        override val clientName: String = builder.clientName
 1652   1654   
        override val region: String? = (builder.region ?: runBlocking { builder.regionProvider?.getRegion() ?: resolveRegion() })?.let { validateRegion(it) }
 1653   1655   
        override val regionProvider: RegionProvider = builder.regionProvider ?: DefaultRegionProviderChain()
 1654   1656   
        override val attemptTimeout: Duration? = builder.attemptTimeout
 1655   1657   
        override val authSchemePreference: kotlin.collections.List<aws.smithy.kotlin.runtime.auth.AuthSchemeId>? = builder.authSchemePreference
 1656   1658   
        override val authSchemes: kotlin.collections.List<aws.smithy.kotlin.runtime.http.auth.AuthScheme> = builder.authSchemes
 1657   1659   
        override val callTimeout: Duration? = builder.callTimeout
 1658   1660   
        override val credentialsProvider: CredentialsProvider = builder.credentialsProvider ?: DefaultChainCredentialsProvider(httpClient = httpClient, region = region).manage()
 1659   1661   
        public val endpointProvider: Ec2EndpointProvider = builder.endpointProvider ?: DefaultEc2EndpointProvider()
 1660   1662   
        public val endpointUrl: Url? = builder.endpointUrl
 1661   1663   
        override val idempotencyTokenProvider: IdempotencyTokenProvider = builder.idempotencyTokenProvider ?: IdempotencyTokenProvider.Default
 1662   1664   
        override val interceptors: kotlin.collections.List<aws.smithy.kotlin.runtime.http.interceptors.HttpInterceptor> = builder.interceptors
 1663   1665   
        override val logMode: LogMode = builder.logMode ?: LogMode.Default
        1666  +
        override val logRedactedHeaders: kotlin.collections.Set<kotlin.String> = builder.logRedactedHeaders ?: emptySet()
 1664   1667   
        override val retryPolicy: RetryPolicy<Any?> = builder.retryPolicy ?: AwsRetryPolicy.Default
 1665   1668   
        override val telemetryProvider: TelemetryProvider = builder.telemetryProvider ?: TelemetryProvider.Global
 1666   1669   
        override val useDualStack: Boolean = builder.useDualStack ?: false
 1667   1670   
        override val useFips: Boolean = builder.useFips ?: false
 1668   1671   
        override val applicationId: String? = builder.applicationId
 1669   1672   
        public val authSchemeProvider: Ec2AuthSchemeProvider = builder.authSchemeProvider ?: DefaultEc2AuthSchemeProvider(authSchemePreference = authSchemePreference)
 1670   1673   
        public companion object {
 1671   1674   
            public inline operator fun invoke(block: Builder.() -> kotlin.Unit): Config = Builder().apply(block).build()
 1672   1675   
        }
 1673   1676   
 1674   1677   
        public fun toBuilder(): Builder = Builder().apply {
 1675   1678   
            clientName = this@Config.clientName
 1676   1679   
            region = this@Config.region
 1677   1680   
            regionProvider = this@Config.regionProvider
 1678   1681   
            attemptTimeout = this@Config.attemptTimeout
 1679   1682   
            authSchemePreference = this@Config.authSchemePreference
 1680   1683   
            authSchemes = this@Config.authSchemes
 1681   1684   
            callTimeout = this@Config.callTimeout
 1682   1685   
            credentialsProvider = this@Config.credentialsProvider
 1683   1686   
            endpointProvider = this@Config.endpointProvider
 1684   1687   
            endpointUrl = this@Config.endpointUrl
 1685   1688   
            httpClient = this@Config.httpClient
 1686   1689   
            idempotencyTokenProvider = this@Config.idempotencyTokenProvider
 1687   1690   
            interceptors = this@Config.interceptors.toMutableList()
 1688   1691   
            logMode = this@Config.logMode
        1692  +
            logRedactedHeaders = this@Config.logRedactedHeaders
 1689   1693   
            retryPolicy = this@Config.retryPolicy
 1690   1694   
            retryStrategy = this@Config.retryStrategy
 1691   1695   
            telemetryProvider = this@Config.telemetryProvider
 1692   1696   
            useDualStack = this@Config.useDualStack
 1693   1697   
            useFips = this@Config.useFips
 1694   1698   
            applicationId = this@Config.applicationId
 1695   1699   
            authSchemeProvider = this@Config.authSchemeProvider
 1696   1700   
        }
 1697   1701   
 1698         -
        public class Builder : AwsSdkClientConfig.Builder, CredentialsProviderConfig.Builder, HttpAuthConfig.Builder, HttpClientConfig.Builder, HttpEngineConfig.Builder by HttpEngineConfigImpl.BuilderImpl(), IdempotencyTokenConfig.Builder, RetryClientConfig.Builder, RetryStrategyClientConfig.Builder by RetryStrategyClientConfigImpl.BuilderImpl(), SdkClientConfig.Builder<Config>, TelemetryConfig.Builder, TimeoutConfig.Builder {
        1702  +
        public class Builder : AwsSdkClientConfig.Builder, CredentialsProviderConfig.Builder, HttpAuthConfig.Builder, HttpClientConfig.Builder, HttpEngineConfig.Builder by HttpEngineConfigImpl.BuilderImpl(), IdempotencyTokenConfig.Builder, LogRedactionConfig.Builder, RetryClientConfig.Builder, RetryStrategyClientConfig.Builder by RetryStrategyClientConfigImpl.BuilderImpl(), SdkClientConfig.Builder<Config>, TelemetryConfig.Builder, TimeoutConfig.Builder {
 1699   1703   
            /**
 1700   1704   
             * A reader-friendly name for the client.
 1701   1705   
             */
 1702   1706   
            override var clientName: String = "EC2"
 1703   1707   
 1704   1708   
            /**
 1705   1709   
             * The AWS region (e.g. `us-west-2`) to make requests to. See about AWS
 1706   1710   
             * [global infrastructure](https://aws.amazon.com/about-aws/global-infrastructure/regions_az/) for more information.
 1707   1711   
             * When specified, this static region configuration takes precedence over other region resolution methods.
 1708   1712   
             *
@@ -1778,1782 +1837,1848 @@
 1798   1802   
             * raw requests or responses. Use this setting to opt-in to additional debug logging.
 1799   1803   
             *
 1800   1804   
             * This can be used to configure logging of requests, responses, retries, etc of SDK clients.
 1801   1805   
             *
 1802   1806   
             * **NOTE**: Logging of raw requests or responses may leak sensitive information! It may also have
 1803   1807   
             * performance considerations when dumping the request/response body. This is primarily a tool for
 1804   1808   
             * debug purposes.
 1805   1809   
             */
 1806   1810   
            override var logMode: LogMode? = null
 1807   1811   
        1812  +
            /**
        1813  +
             * Set of HTTP header names whose values will be replaced with "<REDACTED>" in
        1814  +
             * request/response debug logging. Matching is case-insensitive. Empty by default
        1815  +
             * (no headers are redacted).
        1816  +
             */
        1817  +
            override var logRedactedHeaders: kotlin.collections.Set<kotlin.String>? = null
        1818  +
 1808   1819   
            /**
 1809   1820   
             * The policy to use for evaluating operation results and determining whether/how to retry.
 1810   1821   
             */
 1811   1822   
            override var retryPolicy: RetryPolicy<Any?>? = null
 1812   1823   
 1813   1824   
            /**
 1814   1825   
             * The telemetry provider used to instrument the SDK operations with. By default, the global telemetry
 1815   1826   
             * provider will be used.
 1816   1827   
             */
 1817   1828   
            override var telemetryProvider: TelemetryProvider? = null

tmp-codegen-diff/services/polly/build/tmp/jvmJar/MANIFEST.MF

@@ -1,0 +2,0 @@
    1         -
Manifest-Version: 1.0
    2         -

tmp-codegen-diff/services/polly/generated-src/main/kotlin/aws/sdk/kotlin/services/polly/DefaultPollyClient.kt

@@ -424,424 +461,462 @@
  444    444   
    }
  445    445   
  446    446   
    /**
  447    447   
     * merge the defaults configured for the service into the execution context before firing off a request
  448    448   
     */
  449    449   
    private fun mergeServiceDefaults(ctx: ExecutionContext) {
  450    450   
        ctx.putIfAbsentNotNull(HttpOperationContext.AttemptTimeout, config.attemptTimeout)
  451    451   
        ctx.putIfAbsentNotNull(HttpOperationContext.CallTimeout, config.callTimeout)
  452    452   
        ctx.putIfAbsent(SdkClientOption.ClientName, config.clientName)
  453    453   
        ctx.putIfAbsent(SdkClientOption.LogMode, config.logMode)
         454  +
        ctx.putIfAbsent(SdkClientOption.LogRedactedHeaders, config.logRedactedHeaders)
  454    455   
        ctx.putIfAbsentNotNull(AwsAttributes.Region, config.region)
  455    456   
        ctx.putIfAbsentNotNull(AwsSigningAttributes.SigningRegion, config.region)
  456    457   
        ctx.putIfAbsent(AwsSigningAttributes.SigningService, "polly")
  457    458   
        ctx.putIfAbsent(AwsSigningAttributes.CredentialsProvider, config.credentialsProvider)
  458    459   
        ctx.putIfAbsentNotNull(AwsSdkClientOption.ApplicationId, config.applicationId)
  459    460   
    }
  460    461   
  461    462   
}

tmp-codegen-diff/services/polly/generated-src/main/kotlin/aws/sdk/kotlin/services/polly/PollyClient.kt

@@ -18,18 +192,196 @@
   38     38   
import aws.sdk.kotlin.services.polly.model.StartSpeechSynthesisTaskResponse
   39     39   
import aws.sdk.kotlin.services.polly.model.SynthesizeSpeechRequest
   40     40   
import aws.sdk.kotlin.services.polly.model.SynthesizeSpeechResponse
   41     41   
import aws.smithy.kotlin.runtime.auth.AuthSchemeId
   42     42   
import aws.smithy.kotlin.runtime.auth.awscredentials.CredentialsProvider
   43     43   
import aws.smithy.kotlin.runtime.auth.awscredentials.CredentialsProviderConfig
   44     44   
import aws.smithy.kotlin.runtime.awsprotocol.ClockSkewInterceptor
   45     45   
import aws.smithy.kotlin.runtime.client.AbstractSdkClientBuilder
   46     46   
import aws.smithy.kotlin.runtime.client.AbstractSdkClientFactory
   47     47   
import aws.smithy.kotlin.runtime.client.LogMode
          48  +
import aws.smithy.kotlin.runtime.client.LogRedactionConfig
   48     49   
import aws.smithy.kotlin.runtime.client.RetryClientConfig
   49     50   
import aws.smithy.kotlin.runtime.client.RetryStrategyClientConfig
   50     51   
import aws.smithy.kotlin.runtime.client.RetryStrategyClientConfigImpl
   51     52   
import aws.smithy.kotlin.runtime.client.SdkClient
   52     53   
import aws.smithy.kotlin.runtime.client.SdkClientConfig
   53     54   
import aws.smithy.kotlin.runtime.client.region.RegionProvider
   54     55   
import aws.smithy.kotlin.runtime.http.auth.AuthScheme
   55     56   
import aws.smithy.kotlin.runtime.http.auth.HttpAuthConfig
   56     57   
import aws.smithy.kotlin.runtime.http.config.HttpClientConfig
   57     58   
import aws.smithy.kotlin.runtime.http.config.HttpEngineConfig
   58     59   
import aws.smithy.kotlin.runtime.http.config.TimeoutConfig
   59     60   
import aws.smithy.kotlin.runtime.http.engine.HttpClientEngine
   60     61   
import aws.smithy.kotlin.runtime.http.engine.HttpEngineConfigImpl
   61     62   
import aws.smithy.kotlin.runtime.http.interceptors.HttpInterceptor
   62     63   
import aws.smithy.kotlin.runtime.net.url.Url
   63     64   
import aws.smithy.kotlin.runtime.retries.RetryStrategy
   64     65   
import aws.smithy.kotlin.runtime.retries.policy.RetryPolicy
   65     66   
import aws.smithy.kotlin.runtime.telemetry.Global
   66     67   
import aws.smithy.kotlin.runtime.telemetry.TelemetryConfig
   67     68   
import aws.smithy.kotlin.runtime.telemetry.TelemetryProvider
   68     69   
import aws.smithy.kotlin.runtime.util.LazyAsyncValue
   69     70   
import kotlin.collections.List
          71  +
import kotlin.collections.Set
   70     72   
import kotlin.jvm.JvmStatic
   71     73   
import kotlin.time.Duration
   72     74   
import kotlinx.coroutines.runBlocking
   73     75   
   74     76   
   75     77   
public const val ServiceId: String = "Polly"
   76     78   
public const val SdkVersion: String = "1.6.105-SNAPSHOT"
   77     79   
public const val ServiceApiVersion: String = "2016-06-10"
   78     80   
   79     81   
/**
   80     82   
 * Amazon Polly is a web service that makes it easy to synthesize speech from text.
   81     83   
 *
   82     84   
 * The Amazon Polly service provides API operations for synthesizing high-quality speech from plain text and Speech Synthesis Markup Language (SSML), along with managing pronunciations lexicons that enable you to get the best results for your application domain.
   83     85   
 */
   84     86   
public interface PollyClient : SdkClient {
   85     87   
    /**
   86     88   
     * PollyClient's configuration
   87     89   
     */
   88     90   
    public override val config: Config
   89     91   
   90     92   
    public companion object : AbstractAwsSdkClientFactory<Config, Config.Builder, PollyClient, Builder>()
   91     93   
     {
   92     94   
        @JvmStatic
   93     95   
        override fun builder(): Builder = Builder()
   94     96   
   95     97   
        override fun finalizeConfig(builder: Builder) {
   96     98   
            super.finalizeConfig(builder)
   97     99   
            builder.config.interceptors.add(0, ClockSkewInterceptor())
   98    100   
        }
   99    101   
  100    102   
        override suspend fun finalizeEnvironmentalConfig(builder: Builder, sharedConfig: LazyAsyncValue<AwsSharedConfig>, activeProfile: LazyAsyncValue<AwsProfile>) {
  101    103   
            super.finalizeEnvironmentalConfig(builder, sharedConfig, activeProfile)
  102    104   
            builder.config.endpointUrl = builder.config.endpointUrl ?: resolveEndpointUrl(
  103    105   
                sharedConfig,
  104    106   
                "Polly",
  105    107   
                "POLLY",
  106    108   
                "polly",
  107    109   
            )
  108    110   
        }
  109    111   
    }
  110    112   
  111    113   
    public class Builder internal constructor(): AbstractSdkClientBuilder<Config, Config.Builder, PollyClient>() {
  112    114   
        override val config: Config.Builder = Config.Builder()
  113    115   
        override fun newClient(config: Config): PollyClient = DefaultPollyClient(config)
  114    116   
    }
  115    117   
  116         -
    public class Config private constructor(builder: Builder) : AwsSdkClientConfig, CredentialsProviderConfig, HttpAuthConfig, HttpClientConfig, HttpEngineConfig by builder.buildHttpEngineConfig(), RetryClientConfig, RetryStrategyClientConfig by builder.buildRetryStrategyClientConfig(), SdkClientConfig, TelemetryConfig, TimeoutConfig {
         118  +
    public class Config private constructor(builder: Builder) : AwsSdkClientConfig, CredentialsProviderConfig, HttpAuthConfig, HttpClientConfig, HttpEngineConfig by builder.buildHttpEngineConfig(), LogRedactionConfig, RetryClientConfig, RetryStrategyClientConfig by builder.buildRetryStrategyClientConfig(), SdkClientConfig, TelemetryConfig, TimeoutConfig {
  117    119   
        override val clientName: String = builder.clientName
  118    120   
        override val region: String? = (builder.region ?: runBlocking { builder.regionProvider?.getRegion() ?: resolveRegion() })?.let { validateRegion(it) }
  119    121   
        override val regionProvider: RegionProvider = builder.regionProvider ?: DefaultRegionProviderChain()
  120    122   
        override val attemptTimeout: Duration? = builder.attemptTimeout
  121    123   
        override val authSchemePreference: kotlin.collections.List<aws.smithy.kotlin.runtime.auth.AuthSchemeId>? = builder.authSchemePreference
  122    124   
        override val authSchemes: kotlin.collections.List<aws.smithy.kotlin.runtime.http.auth.AuthScheme> = builder.authSchemes
  123    125   
        override val callTimeout: Duration? = builder.callTimeout
  124    126   
        override val credentialsProvider: CredentialsProvider = builder.credentialsProvider ?: DefaultChainCredentialsProvider(httpClient = httpClient, region = region).manage()
  125    127   
        public val endpointProvider: PollyEndpointProvider = builder.endpointProvider ?: DefaultPollyEndpointProvider()
  126    128   
        public val endpointUrl: Url? = builder.endpointUrl
  127    129   
        override val interceptors: kotlin.collections.List<aws.smithy.kotlin.runtime.http.interceptors.HttpInterceptor> = builder.interceptors
  128    130   
        override val logMode: LogMode = builder.logMode ?: LogMode.Default
         131  +
        override val logRedactedHeaders: kotlin.collections.Set<kotlin.String> = builder.logRedactedHeaders ?: emptySet()
  129    132   
        override val retryPolicy: RetryPolicy<Any?> = builder.retryPolicy ?: AwsRetryPolicy.Default
  130    133   
        override val telemetryProvider: TelemetryProvider = builder.telemetryProvider ?: TelemetryProvider.Global
  131    134   
        override val useDualStack: Boolean = builder.useDualStack ?: false
  132    135   
        override val useFips: Boolean = builder.useFips ?: false
  133    136   
        override val applicationId: String? = builder.applicationId
  134    137   
        public val authSchemeProvider: PollyAuthSchemeProvider = builder.authSchemeProvider ?: DefaultPollyAuthSchemeProvider(authSchemePreference = authSchemePreference)
  135    138   
        public companion object {
  136    139   
            public inline operator fun invoke(block: Builder.() -> kotlin.Unit): Config = Builder().apply(block).build()
  137    140   
        }
  138    141   
  139    142   
        public fun toBuilder(): Builder = Builder().apply {
  140    143   
            clientName = this@Config.clientName
  141    144   
            region = this@Config.region
  142    145   
            regionProvider = this@Config.regionProvider
  143    146   
            attemptTimeout = this@Config.attemptTimeout
  144    147   
            authSchemePreference = this@Config.authSchemePreference
  145    148   
            authSchemes = this@Config.authSchemes
  146    149   
            callTimeout = this@Config.callTimeout
  147    150   
            credentialsProvider = this@Config.credentialsProvider
  148    151   
            endpointProvider = this@Config.endpointProvider
  149    152   
            endpointUrl = this@Config.endpointUrl
  150    153   
            httpClient = this@Config.httpClient
  151    154   
            interceptors = this@Config.interceptors.toMutableList()
  152    155   
            logMode = this@Config.logMode
         156  +
            logRedactedHeaders = this@Config.logRedactedHeaders
  153    157   
            retryPolicy = this@Config.retryPolicy
  154    158   
            retryStrategy = this@Config.retryStrategy
  155    159   
            telemetryProvider = this@Config.telemetryProvider
  156    160   
            useDualStack = this@Config.useDualStack
  157    161   
            useFips = this@Config.useFips
  158    162   
            applicationId = this@Config.applicationId
  159    163   
            authSchemeProvider = this@Config.authSchemeProvider
  160    164   
        }
  161    165   
  162         -
        public class Builder : AwsSdkClientConfig.Builder, CredentialsProviderConfig.Builder, HttpAuthConfig.Builder, HttpClientConfig.Builder, HttpEngineConfig.Builder by HttpEngineConfigImpl.BuilderImpl(), RetryClientConfig.Builder, RetryStrategyClientConfig.Builder by RetryStrategyClientConfigImpl.BuilderImpl(), SdkClientConfig.Builder<Config>, TelemetryConfig.Builder, TimeoutConfig.Builder {
         166  +
        public class Builder : AwsSdkClientConfig.Builder, CredentialsProviderConfig.Builder, HttpAuthConfig.Builder, HttpClientConfig.Builder, HttpEngineConfig.Builder by HttpEngineConfigImpl.BuilderImpl(), LogRedactionConfig.Builder, RetryClientConfig.Builder, RetryStrategyClientConfig.Builder by RetryStrategyClientConfigImpl.BuilderImpl(), SdkClientConfig.Builder<Config>, TelemetryConfig.Builder, TimeoutConfig.Builder {
  163    167   
            /**
  164    168   
             * A reader-friendly name for the client.
  165    169   
             */
  166    170   
            override var clientName: String = "Polly"
  167    171   
  168    172   
            /**
  169    173   
             * The AWS region (e.g. `us-west-2`) to make requests to. See about AWS
  170    174   
             * [global infrastructure](https://aws.amazon.com/about-aws/global-infrastructure/regions_az/) for more information.
  171    175   
             * When specified, this static region configuration takes precedence over other region resolution methods.
  172    176   
             *
@@ -236,240 +295,306 @@
  256    260   
             * raw requests or responses. Use this setting to opt-in to additional debug logging.
  257    261   
             *
  258    262   
             * This can be used to configure logging of requests, responses, retries, etc of SDK clients.
  259    263   
             *
  260    264   
             * **NOTE**: Logging of raw requests or responses may leak sensitive information! It may also have
  261    265   
             * performance considerations when dumping the request/response body. This is primarily a tool for
  262    266   
             * debug purposes.
  263    267   
             */
  264    268   
            override var logMode: LogMode? = null
  265    269   
         270  +
            /**
         271  +
             * Set of HTTP header names whose values will be replaced with "<REDACTED>" in
         272  +
             * request/response debug logging. Matching is case-insensitive. Empty by default
         273  +
             * (no headers are redacted).
         274  +
             */
         275  +
            override var logRedactedHeaders: kotlin.collections.Set<kotlin.String>? = null
         276  +
  266    277   
            /**
  267    278   
             * The policy to use for evaluating operation results and determining whether/how to retry.
  268    279   
             */
  269    280   
            override var retryPolicy: RetryPolicy<Any?>? = null
  270    281   
  271    282   
            /**
  272    283   
             * The telemetry provider used to instrument the SDK operations with. By default, the global telemetry
  273    284   
             * provider will be used.
  274    285   
             */
  275    286   
            override var telemetryProvider: TelemetryProvider? = null

tmp-codegen-diff/services/s3/build/tmp/jvmJar/MANIFEST.MF

@@ -1,0 +2,0 @@
    1         -
Manifest-Version: 1.0
    2         -

tmp-codegen-diff/services/s3/generated-src/main/kotlin/aws/sdk/kotlin/services/s3/DefaultS3Client.kt

@@ -7705,7705 +7748,7749 @@
 7725   7725   
    }
 7726   7726   
 7727   7727   
    /**
 7728   7728   
     * merge the defaults configured for the service into the execution context before firing off a request
 7729   7729   
     */
 7730   7730   
    private fun mergeServiceDefaults(ctx: ExecutionContext) {
 7731   7731   
        ctx.putIfAbsentNotNull(HttpOperationContext.AttemptTimeout, config.attemptTimeout)
 7732   7732   
        ctx.putIfAbsentNotNull(HttpOperationContext.CallTimeout, config.callTimeout)
 7733   7733   
        ctx.putIfAbsent(SdkClientOption.ClientName, config.clientName)
 7734   7734   
        ctx.putIfAbsent(SdkClientOption.LogMode, config.logMode)
        7735  +
        ctx.putIfAbsent(SdkClientOption.LogRedactedHeaders, config.logRedactedHeaders)
 7735   7736   
        ctx.putIfAbsentNotNull(SdkClientOption.IdempotencyTokenProvider, config.idempotencyTokenProvider)
 7736   7737   
        ctx.putIfAbsentNotNull(AwsAttributes.Region, config.region)
 7737   7738   
        ctx.putIfAbsentNotNull(AwsSigningAttributes.SigningRegion, config.region)
 7738   7739   
        ctx.putIfAbsent(AwsSigningAttributes.SigningService, "s3")
 7739   7740   
        ctx.putIfAbsent(AwsSigningAttributes.CredentialsProvider, config.credentialsProvider)
 7740   7741   
        ctx.putIfAbsentNotNull(AwsSdkClientOption.ApplicationId, config.applicationId)
 7741   7742   
        ctx.putIfAbsentNotNull(AwsSigningAttributes.ConfigSigningRegionSet, config.sigV4aSigningRegionSet)
 7742   7743   
        ctx.putIfAbsent(AwsSigningAttributes.NormalizeUriPath, false)
 7743   7744   
        ctx.putIfAbsent(AwsSigningAttributes.UseDoubleUriEncode, false)
 7744   7745   
        ctx.putIfAbsent(AwsSigningAttributes.SignedBodyHeader, AwsSignedBodyHeader.X_AMZ_CONTENT_SHA256)

tmp-codegen-diff/services/s3/generated-src/main/kotlin/aws/sdk/kotlin/services/s3/S3Client.kt

@@ -227,227 +286,287 @@
  247    247   
import aws.smithy.kotlin.runtime.auth.AuthSchemeId
  248    248   
import aws.smithy.kotlin.runtime.auth.awscredentials.CredentialsProvider
  249    249   
import aws.smithy.kotlin.runtime.auth.awscredentials.CredentialsProviderConfig
  250    250   
import aws.smithy.kotlin.runtime.auth.awscredentials.SigV4aClientConfig
  251    251   
import aws.smithy.kotlin.runtime.awsprotocol.ClockSkewInterceptor
  252    252   
import aws.smithy.kotlin.runtime.client.AbstractSdkClientBuilder
  253    253   
import aws.smithy.kotlin.runtime.client.AbstractSdkClientFactory
  254    254   
import aws.smithy.kotlin.runtime.client.IdempotencyTokenConfig
  255    255   
import aws.smithy.kotlin.runtime.client.IdempotencyTokenProvider
  256    256   
import aws.smithy.kotlin.runtime.client.LogMode
         257  +
import aws.smithy.kotlin.runtime.client.LogRedactionConfig
  257    258   
import aws.smithy.kotlin.runtime.client.RetryClientConfig
  258    259   
import aws.smithy.kotlin.runtime.client.RetryStrategyClientConfig
  259    260   
import aws.smithy.kotlin.runtime.client.RetryStrategyClientConfigImpl
  260    261   
import aws.smithy.kotlin.runtime.client.SdkClient
  261    262   
import aws.smithy.kotlin.runtime.client.SdkClientConfig
  262    263   
import aws.smithy.kotlin.runtime.client.config.HttpChecksumConfig
  263    264   
import aws.smithy.kotlin.runtime.client.config.RequestHttpChecksumConfig
  264    265   
import aws.smithy.kotlin.runtime.client.config.ResponseHttpChecksumConfig
  265    266   
import aws.smithy.kotlin.runtime.client.region.RegionProvider
  266    267   
import aws.smithy.kotlin.runtime.http.auth.AuthScheme
@@ -298,299 +428,431 @@
  318    319   
            )
  319    320   
            finalizeS3Config(builder, sharedConfig)
  320    321   
        }
  321    322   
    }
  322    323   
  323    324   
    public class Builder internal constructor(): AbstractSdkClientBuilder<Config, Config.Builder, S3Client>() {
  324    325   
        override val config: Config.Builder = Config.Builder()
  325    326   
        override fun newClient(config: Config): S3Client = DefaultS3Client(config)
  326    327   
    }
  327    328   
  328         -
    public class Config private constructor(builder: Builder) : AwsSdkClientConfig, CredentialsProviderConfig, HttpAuthConfig, HttpChecksumConfig, HttpClientConfig, HttpEngineConfig by builder.buildHttpEngineConfig(), IdempotencyTokenConfig, RetryClientConfig, RetryStrategyClientConfig by builder.buildRetryStrategyClientConfig(), SdkClientConfig, SigV4aClientConfig, TelemetryConfig, TimeoutConfig {
         329  +
    public class Config private constructor(builder: Builder) : AwsSdkClientConfig, CredentialsProviderConfig, HttpAuthConfig, HttpChecksumConfig, HttpClientConfig, HttpEngineConfig by builder.buildHttpEngineConfig(), IdempotencyTokenConfig, LogRedactionConfig, RetryClientConfig, RetryStrategyClientConfig by builder.buildRetryStrategyClientConfig(), SdkClientConfig, SigV4aClientConfig, TelemetryConfig, TimeoutConfig {
  329    330   
        override val clientName: String = builder.clientName
  330    331   
        override val region: String? = (builder.region ?: runBlocking { builder.regionProvider?.getRegion() ?: resolveRegion() })?.let { validateRegion(it) }
  331    332   
        override val regionProvider: RegionProvider = builder.regionProvider ?: DefaultRegionProviderChain()
  332    333   
        override val attemptTimeout: Duration? = builder.attemptTimeout
  333    334   
        override val authSchemePreference: kotlin.collections.List<aws.smithy.kotlin.runtime.auth.AuthSchemeId>? = builder.authSchemePreference
  334    335   
        override val authSchemes: kotlin.collections.List<aws.smithy.kotlin.runtime.http.auth.AuthScheme> = builder.authSchemes
  335    336   
        override val callTimeout: Duration? = builder.callTimeout
  336    337   
        public val continueHeaderThresholdBytes: Long? = builder.continueHeaderThresholdBytes
  337    338   
        override val credentialsProvider: CredentialsProvider = builder.credentialsProvider ?: DefaultChainCredentialsProvider(httpClient = httpClient, region = region).manage()
  338    339   
        public val disableMrap: Boolean = builder.disableMrap ?: false
  339    340   
        public val disableS3ExpressSessionAuth: Boolean = builder.disableS3ExpressSessionAuth ?: false
  340    341   
        public val enableAccelerate: Boolean = builder.enableAccelerate ?: false
  341    342   
        public val enableAwsChunked: Boolean = builder.enableAwsChunked ?: true
  342    343   
        public val endpointProvider: S3EndpointProvider = builder.endpointProvider ?: DefaultS3EndpointProvider()
  343    344   
        public val endpointUrl: Url? = builder.endpointUrl
  344    345   
        public val expressCredentialsProvider: CredentialsProvider = builder.expressCredentialsProvider ?: DefaultS3ExpressCredentialsProvider()
  345    346   
        public val forcePathStyle: Boolean = builder.forcePathStyle ?: false
  346    347   
        override val idempotencyTokenProvider: IdempotencyTokenProvider = builder.idempotencyTokenProvider ?: IdempotencyTokenProvider.Default
  347    348   
        override val interceptors: kotlin.collections.List<aws.smithy.kotlin.runtime.http.interceptors.HttpInterceptor> = builder.interceptors
  348    349   
        override val logMode: LogMode = builder.logMode ?: LogMode.Default
         350  +
        override val logRedactedHeaders: kotlin.collections.Set<kotlin.String> = builder.logRedactedHeaders ?: emptySet()
  349    351   
        override val requestChecksumCalculation: RequestHttpChecksumConfig = builder.requestChecksumCalculation ?: RequestHttpChecksumConfig.WHEN_SUPPORTED
  350    352   
        override val responseChecksumValidation: ResponseHttpChecksumConfig = builder.responseChecksumValidation ?: ResponseHttpChecksumConfig.WHEN_SUPPORTED
  351    353   
        override val retryPolicy: RetryPolicy<Any?> = builder.retryPolicy ?: AwsRetryPolicy.Default
  352    354   
        override val sigV4aSigningRegionSet: kotlin.collections.Set<kotlin.String>? = builder.sigV4aSigningRegionSet
  353    355   
        override val telemetryProvider: TelemetryProvider = builder.telemetryProvider ?: TelemetryProvider.Global
  354    356   
        public val useArnRegion: Boolean = builder.useArnRegion ?: false
  355    357   
        override val useDualStack: Boolean = builder.useDualStack ?: false
  356    358   
        override val useFips: Boolean = builder.useFips ?: false
  357    359   
        override val applicationId: String? = builder.applicationId
  358    360   
        public val authSchemeProvider: S3AuthSchemeProvider = builder.authSchemeProvider ?: DefaultS3AuthSchemeProvider(endpointProvider, authSchemePreference)
  359    361   
        public companion object {
  360    362   
            public inline operator fun invoke(block: Builder.() -> kotlin.Unit): Config = Builder().apply(block).build()
  361    363   
        }
  362    364   
  363    365   
        public fun toBuilder(): Builder = Builder().apply {
  364    366   
            clientName = this@Config.clientName
  365    367   
            region = this@Config.region
  366    368   
            regionProvider = this@Config.regionProvider
  367    369   
            attemptTimeout = this@Config.attemptTimeout
  368    370   
            authSchemePreference = this@Config.authSchemePreference
  369    371   
            authSchemes = this@Config.authSchemes
  370    372   
            callTimeout = this@Config.callTimeout
  371    373   
            continueHeaderThresholdBytes = this@Config.continueHeaderThresholdBytes
  372    374   
            credentialsProvider = this@Config.credentialsProvider
  373    375   
            disableMrap = this@Config.disableMrap
  374    376   
            disableS3ExpressSessionAuth = this@Config.disableS3ExpressSessionAuth
  375    377   
            enableAccelerate = this@Config.enableAccelerate
  376    378   
            enableAwsChunked = this@Config.enableAwsChunked
  377    379   
            endpointProvider = this@Config.endpointProvider
  378    380   
            endpointUrl = this@Config.endpointUrl
  379    381   
            expressCredentialsProvider = this@Config.expressCredentialsProvider
  380    382   
            forcePathStyle = this@Config.forcePathStyle
  381    383   
            httpClient = this@Config.httpClient
  382    384   
            idempotencyTokenProvider = this@Config.idempotencyTokenProvider
  383    385   
            interceptors = this@Config.interceptors.toMutableList()
  384    386   
            logMode = this@Config.logMode
         387  +
            logRedactedHeaders = this@Config.logRedactedHeaders
  385    388   
            requestChecksumCalculation = this@Config.requestChecksumCalculation
  386    389   
            responseChecksumValidation = this@Config.responseChecksumValidation
  387    390   
            retryPolicy = this@Config.retryPolicy
  388    391   
            retryStrategy = this@Config.retryStrategy
  389    392   
            sigV4aSigningRegionSet = this@Config.sigV4aSigningRegionSet
  390    393   
            telemetryProvider = this@Config.telemetryProvider
  391    394   
            useArnRegion = this@Config.useArnRegion
  392    395   
            useDualStack = this@Config.useDualStack
  393    396   
            useFips = this@Config.useFips
  394    397   
            applicationId = this@Config.applicationId
  395    398   
            authSchemeProvider = this@Config.authSchemeProvider
  396    399   
        }
  397    400   
  398         -
        public class Builder : AwsSdkClientConfig.Builder, CredentialsProviderConfig.Builder, HttpAuthConfig.Builder, HttpChecksumConfig.Builder, HttpClientConfig.Builder, HttpEngineConfig.Builder by HttpEngineConfigImpl.BuilderImpl(), IdempotencyTokenConfig.Builder, RetryClientConfig.Builder, RetryStrategyClientConfig.Builder by RetryStrategyClientConfigImpl.BuilderImpl(), SdkClientConfig.Builder<Config>, SigV4aClientConfig.Builder, TelemetryConfig.Builder, TimeoutConfig.Builder {
         401  +
        public class Builder : AwsSdkClientConfig.Builder, CredentialsProviderConfig.Builder, HttpAuthConfig.Builder, HttpChecksumConfig.Builder, HttpClientConfig.Builder, HttpEngineConfig.Builder by HttpEngineConfigImpl.BuilderImpl(), IdempotencyTokenConfig.Builder, LogRedactionConfig.Builder, RetryClientConfig.Builder, RetryStrategyClientConfig.Builder by RetryStrategyClientConfigImpl.BuilderImpl(), SdkClientConfig.Builder<Config>, SigV4aClientConfig.Builder, TelemetryConfig.Builder, TimeoutConfig.Builder {
  399    402   
            /**
  400    403   
             * A reader-friendly name for the client.
  401    404   
             */
  402    405   
            override var clientName: String = "S3"
  403    406   
  404    407   
            /**
  405    408   
             * The AWS region (e.g. `us-west-2`) to make requests to. See about AWS
  406    409   
             * [global infrastructure](https://aws.amazon.com/about-aws/global-infrastructure/regions_az/) for more information.
  407    410   
             * When specified, this static region configuration takes precedence over other region resolution methods.
  408    411   
             *
@@ -516,519 +575,585 @@
  536    539   
             * raw requests or responses. Use this setting to opt-in to additional debug logging.
  537    540   
             *
  538    541   
             * This can be used to configure logging of requests, responses, retries, etc of SDK clients.
  539    542   
             *
  540    543   
             * **NOTE**: Logging of raw requests or responses may leak sensitive information! It may also have
  541    544   
             * performance considerations when dumping the request/response body. This is primarily a tool for
  542    545   
             * debug purposes.
  543    546   
             */
  544    547   
            override var logMode: LogMode? = null
  545    548   
         549  +
            /**
         550  +
             * Set of HTTP header names whose values will be replaced with "<REDACTED>" in
         551  +
             * request/response debug logging. Matching is case-insensitive. Empty by default
         552  +
             * (no headers are redacted).
         553  +
             */
         554  +
            override var logRedactedHeaders: kotlin.collections.Set<kotlin.String>? = null
         555  +
  546    556   
            /**
  547    557   
             * Configures request checksum calculation
  548    558   
             */
  549    559   
            override var requestChecksumCalculation: RequestHttpChecksumConfig? = null
  550    560   
  551    561   
            /**
  552    562   
             * Configures response checksum validation
  553    563   
             */
  554    564   
            override var responseChecksumValidation: ResponseHttpChecksumConfig? = null
  555    565