AWS SDK

AWS SDK

rev. b9ccf3dabc550b0fbe85e785b19c58a2472f505e..96418c2288c67c1dde0d5d93cadadbf52fc820f4 (ignoring whitespace)

Files changed:

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

@@ -1,1 +142,154 @@
    1      1   
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
    2      2   
    3      3   
package aws.sdk.kotlin.services.dynamodb.model
    4      4   
    5      5   
import aws.smithy.kotlin.runtime.SdkDsl
    6      6   
import aws.smithy.kotlin.runtime.time.Instant
    7      7   
    8      8   
public class DescribeContributorInsightsResponse private constructor(builder: Builder) {
           9  +
    /**
          10  +
     * The mode of CloudWatch Contributor Insights for DynamoDB that determines which events are emitted. Can be set to track all access and throttled events or throttled events only.
          11  +
     */
          12  +
    public val contributorInsightsMode: aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsMode? = builder.contributorInsightsMode
    9     13   
    /**
   10     14   
     * List of names of the associated contributor insights rules.
   11     15   
     */
   12     16   
    public val contributorInsightsRuleList: List<String>? = builder.contributorInsightsRuleList
   13     17   
    /**
   14     18   
     * Current status of contributor insights.
   15     19   
     */
   16     20   
    public val contributorInsightsStatus: aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsStatus? = builder.contributorInsightsStatus
   17     21   
    /**
   18     22   
     * Returns information about the last failure that was encountered.
   19     23   
     *
   20     24   
     * The most common exceptions for a FAILED status are:
   21     25   
     * + LimitExceededException - Per-account Amazon CloudWatch Contributor Insights rule limit reached. Please disable Contributor Insights for other tables/indexes OR disable Contributor Insights rules before retrying.
   22     26   
     * + AccessDeniedException - Amazon CloudWatch Contributor Insights rules cannot be modified due to insufficient permissions.
   23     27   
     * + AccessDeniedException - Failed to create service-linked role for Contributor Insights due to insufficient permissions.
   24     28   
     * + InternalServerError - Failed to create Amazon CloudWatch Contributor Insights rules. Please retry request.
   25     29   
     */
   26     30   
    public val failureException: aws.sdk.kotlin.services.dynamodb.model.FailureException? = builder.failureException
   27     31   
    /**
   28     32   
     * The name of the global secondary index being described.
   29     33   
     */
   30     34   
    public val indexName: kotlin.String? = builder.indexName
   31     35   
    /**
   32     36   
     * Timestamp of the last time the status was changed.
   33     37   
     */
   34     38   
    public val lastUpdateDateTime: aws.smithy.kotlin.runtime.time.Instant? = builder.lastUpdateDateTime
   35     39   
    /**
   36     40   
     * The name of the table being described.
   37     41   
     */
   38     42   
    public val tableName: kotlin.String? = builder.tableName
   39     43   
   40     44   
    public companion object {
   41     45   
        public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.dynamodb.model.DescribeContributorInsightsResponse = Builder().apply(block).build()
   42     46   
    }
   43     47   
   44     48   
    override fun toString(): kotlin.String = buildString {
   45     49   
        append("DescribeContributorInsightsResponse(")
          50  +
        append("contributorInsightsMode=$contributorInsightsMode,")
   46     51   
        append("contributorInsightsRuleList=$contributorInsightsRuleList,")
   47     52   
        append("contributorInsightsStatus=$contributorInsightsStatus,")
   48     53   
        append("failureException=$failureException,")
   49     54   
        append("indexName=$indexName,")
   50     55   
        append("lastUpdateDateTime=$lastUpdateDateTime,")
   51     56   
        append("tableName=$tableName")
   52     57   
        append(")")
   53     58   
    }
   54     59   
   55     60   
    override fun hashCode(): kotlin.Int {
   56         -
        var result = contributorInsightsRuleList?.hashCode() ?: 0
          61  +
        var result = contributorInsightsMode?.hashCode() ?: 0
          62  +
        result = 31 * result + (this.contributorInsightsRuleList?.hashCode() ?: 0)
   57     63   
        result = 31 * result + (this.contributorInsightsStatus?.hashCode() ?: 0)
   58     64   
        result = 31 * result + (this.failureException?.hashCode() ?: 0)
   59     65   
        result = 31 * result + (this.indexName?.hashCode() ?: 0)
   60     66   
        result = 31 * result + (this.lastUpdateDateTime?.hashCode() ?: 0)
   61     67   
        result = 31 * result + (this.tableName?.hashCode() ?: 0)
   62     68   
        return result
   63     69   
    }
   64     70   
   65     71   
    override fun equals(other: kotlin.Any?): kotlin.Boolean {
   66     72   
        if (this === other) return true
   67     73   
        if (other == null || this::class != other::class) return false
   68     74   
   69     75   
        other as DescribeContributorInsightsResponse
   70     76   
          77  +
        if (contributorInsightsMode != other.contributorInsightsMode) return false
   71     78   
        if (contributorInsightsRuleList != other.contributorInsightsRuleList) return false
   72     79   
        if (contributorInsightsStatus != other.contributorInsightsStatus) return false
   73     80   
        if (failureException != other.failureException) return false
   74     81   
        if (indexName != other.indexName) return false
   75     82   
        if (lastUpdateDateTime != other.lastUpdateDateTime) return false
   76     83   
        if (tableName != other.tableName) return false
   77     84   
   78     85   
        return true
   79     86   
    }
   80     87   
   81     88   
    public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.dynamodb.model.DescribeContributorInsightsResponse = Builder(this).apply(block).build()
   82     89   
   83     90   
    @SdkDsl
   84     91   
    public class Builder {
          92  +
        /**
          93  +
         * The mode of CloudWatch Contributor Insights for DynamoDB that determines which events are emitted. Can be set to track all access and throttled events or throttled events only.
          94  +
         */
          95  +
        public var contributorInsightsMode: aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsMode? = null
   85     96   
        /**
   86     97   
         * List of names of the associated contributor insights rules.
   87     98   
         */
   88     99   
        public var contributorInsightsRuleList: List<String>? = null
   89    100   
        /**
   90    101   
         * Current status of contributor insights.
   91    102   
         */
   92    103   
        public var contributorInsightsStatus: aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsStatus? = null
   93    104   
        /**
   94    105   
         * Returns information about the last failure that was encountered.
   95    106   
         *
   96    107   
         * The most common exceptions for a FAILED status are:
   97    108   
         * + LimitExceededException - Per-account Amazon CloudWatch Contributor Insights rule limit reached. Please disable Contributor Insights for other tables/indexes OR disable Contributor Insights rules before retrying.
   98    109   
         * + AccessDeniedException - Amazon CloudWatch Contributor Insights rules cannot be modified due to insufficient permissions.
   99    110   
         * + AccessDeniedException - Failed to create service-linked role for Contributor Insights due to insufficient permissions.
  100    111   
         * + InternalServerError - Failed to create Amazon CloudWatch Contributor Insights rules. Please retry request.
  101    112   
         */
  102    113   
        public var failureException: aws.sdk.kotlin.services.dynamodb.model.FailureException? = null
  103    114   
        /**
  104    115   
         * The name of the global secondary index being described.
  105    116   
         */
  106    117   
        public var indexName: kotlin.String? = null
  107    118   
        /**
  108    119   
         * Timestamp of the last time the status was changed.
  109    120   
         */
  110    121   
        public var lastUpdateDateTime: aws.smithy.kotlin.runtime.time.Instant? = null
  111    122   
        /**
  112    123   
         * The name of the table being described.
  113    124   
         */
  114    125   
        public var tableName: kotlin.String? = null
  115    126   
  116    127   
        @PublishedApi
  117    128   
        internal constructor()
  118    129   
        @PublishedApi
  119    130   
        internal constructor(x: aws.sdk.kotlin.services.dynamodb.model.DescribeContributorInsightsResponse) : this() {
         131  +
            this.contributorInsightsMode = x.contributorInsightsMode
  120    132   
            this.contributorInsightsRuleList = x.contributorInsightsRuleList
  121    133   
            this.contributorInsightsStatus = x.contributorInsightsStatus
  122    134   
            this.failureException = x.failureException
  123    135   
            this.indexName = x.indexName
  124    136   
            this.lastUpdateDateTime = x.lastUpdateDateTime
  125    137   
            this.tableName = x.tableName
  126    138   
        }
  127    139   
  128    140   
        @PublishedApi
  129    141   
        internal fun build(): aws.sdk.kotlin.services.dynamodb.model.DescribeContributorInsightsResponse = DescribeContributorInsightsResponse(this)

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

@@ -1,1 +66,79 @@
    1      1   
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
    2      2   
    3      3   
package aws.sdk.kotlin.services.dynamodb.model
    4      4   
    5      5   
import aws.smithy.kotlin.runtime.SdkDsl
    6      6   
import aws.smithy.kotlin.runtime.ServiceErrorMetadata
    7      7   
    8      8   
/**
    9         -
 * Your request rate is too high. The Amazon Web Services SDKs for DynamoDB automatically retry requests that receive this exception. Your request is eventually successful, unless your retry queue is too large to finish. Reduce the frequency of requests and use exponential backoff. For more information, go to [Error Retries and Exponential Backoff](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Programming.Errors.html#Programming.Errors.RetryAndBackoff) in the *Amazon DynamoDB Developer Guide*.
           9  +
 * The request was denied due to request throttling. For detailed information about why the request was throttled and the ARN of the impacted resource, find the [ThrottlingReason](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ThrottlingReason.html) field in the returned exception. The Amazon Web Services SDKs for DynamoDB automatically retry requests that receive this exception. Your request is eventually successful, unless your retry queue is too large to finish. Reduce the frequency of requests and use exponential backoff. For more information, go to [Error Retries and Exponential Backoff](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Programming.Errors.html#Programming.Errors.RetryAndBackoff) in the *Amazon DynamoDB Developer Guide*.
   10     10   
 */
   11     11   
public class ProvisionedThroughputExceededException private constructor(builder: Builder) : DynamoDbException(builder.message) {
   12     12   
          13  +
    /**
          14  +
     * A list of [ThrottlingReason](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ThrottlingReason.html) that provide detailed diagnostic information about why the request was throttled.
          15  +
     */
          16  +
    public val throttlingReasons: List<ThrottlingReason>? = builder.throttlingReasons
          17  +
   13     18   
    init {
   14     19   
        sdkErrorMetadata.attributes[ServiceErrorMetadata.ErrorType] = ErrorType.Client
   15     20   
    }
   16     21   
   17     22   
    public companion object {
   18     23   
        public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.dynamodb.model.ProvisionedThroughputExceededException = Builder().apply(block).build()
   19     24   
    }
   20     25   
   21     26   
    override fun toString(): kotlin.String = buildString {
   22     27   
        append("ProvisionedThroughputExceededException(")
   23         -
        append("message=$message")
          28  +
        append("message=$message,")
          29  +
        append("throttlingReasons=$throttlingReasons")
   24     30   
        append(")")
   25     31   
    }
   26     32   
   27     33   
    override fun hashCode(): kotlin.Int {
   28     34   
        var result = message?.hashCode() ?: 0
          35  +
        result = 31 * result + (this.throttlingReasons?.hashCode() ?: 0)
   29     36   
        return result
   30     37   
    }
   31     38   
   32     39   
    override fun equals(other: kotlin.Any?): kotlin.Boolean {
   33     40   
        if (this === other) return true
   34     41   
        if (other == null || this::class != other::class) return false
   35     42   
   36     43   
        other as ProvisionedThroughputExceededException
   37     44   
   38     45   
        if (message != other.message) return false
          46  +
        if (throttlingReasons != other.throttlingReasons) return false
   39     47   
   40     48   
        return true
   41     49   
    }
   42     50   
   43     51   
    public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.dynamodb.model.ProvisionedThroughputExceededException = Builder(this).apply(block).build()
   44     52   
   45     53   
    @SdkDsl
   46     54   
    public class Builder {
   47     55   
        /**
   48     56   
         * You exceeded your maximum allowed provisioned throughput.
   49     57   
         */
   50     58   
        public var message: kotlin.String? = null
          59  +
        /**
          60  +
         * A list of [ThrottlingReason](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ThrottlingReason.html) that provide detailed diagnostic information about why the request was throttled.
          61  +
         */
          62  +
        public var throttlingReasons: List<ThrottlingReason>? = null
   51     63   
   52     64   
        @PublishedApi
   53     65   
        internal constructor()
   54     66   
        @PublishedApi
   55     67   
        internal constructor(x: aws.sdk.kotlin.services.dynamodb.model.ProvisionedThroughputExceededException) : this() {
   56     68   
            this.message = x.message
          69  +
            this.throttlingReasons = x.throttlingReasons
   57     70   
        }
   58     71   
   59     72   
        @PublishedApi
   60     73   
        internal fun build(): aws.sdk.kotlin.services.dynamodb.model.ProvisionedThroughputExceededException = ProvisionedThroughputExceededException(this)
   61     74   
   62     75   
        internal fun correctErrors(): Builder {
   63     76   
            return this
   64     77   
        }
   65     78   
    }
   66     79   
}

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

@@ -1,1 +63,76 @@
    1      1   
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
    2      2   
    3      3   
package aws.sdk.kotlin.services.dynamodb.model
    4      4   
    5      5   
import aws.smithy.kotlin.runtime.SdkDsl
    6      6   
import aws.smithy.kotlin.runtime.ServiceErrorMetadata
    7      7   
    8      8   
/**
    9         -
 * Throughput exceeds the current throughput quota for your account. Please contact [Amazon Web ServicesSupport](https://aws.amazon.com/support) to request a quota increase.
           9  +
 * Throughput exceeds the current throughput quota for your account. For detailed information about why the request was throttled and the ARN of the impacted resource, find the [ThrottlingReason](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ThrottlingReason.html) field in the returned exception. Contact [Amazon Web Services Support](https://aws.amazon.com/support) to request a quota increase.
   10     10   
 */
   11     11   
public class RequestLimitExceeded private constructor(builder: Builder) : DynamoDbException(builder.message) {
   12     12   
          13  +
    /**
          14  +
     * A list of [ThrottlingReason](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ThrottlingReason.html) that provide detailed diagnostic information about why the request was throttled.
          15  +
     */
          16  +
    public val throttlingReasons: List<ThrottlingReason>? = builder.throttlingReasons
          17  +
   13     18   
    init {
   14     19   
        sdkErrorMetadata.attributes[ServiceErrorMetadata.ErrorType] = ErrorType.Client
   15     20   
    }
   16     21   
   17     22   
    public companion object {
   18     23   
        public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.dynamodb.model.RequestLimitExceeded = Builder().apply(block).build()
   19     24   
    }
   20     25   
   21     26   
    override fun toString(): kotlin.String = buildString {
   22     27   
        append("RequestLimitExceeded(")
   23         -
        append("message=$message")
          28  +
        append("message=$message,")
          29  +
        append("throttlingReasons=$throttlingReasons")
   24     30   
        append(")")
   25     31   
    }
   26     32   
   27     33   
    override fun hashCode(): kotlin.Int {
   28     34   
        var result = message?.hashCode() ?: 0
          35  +
        result = 31 * result + (this.throttlingReasons?.hashCode() ?: 0)
   29     36   
        return result
   30     37   
    }
   31     38   
   32     39   
    override fun equals(other: kotlin.Any?): kotlin.Boolean {
   33     40   
        if (this === other) return true
   34     41   
        if (other == null || this::class != other::class) return false
   35     42   
   36     43   
        other as RequestLimitExceeded
   37     44   
   38     45   
        if (message != other.message) return false
          46  +
        if (throttlingReasons != other.throttlingReasons) return false
   39     47   
   40     48   
        return true
   41     49   
    }
   42     50   
   43     51   
    public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.dynamodb.model.RequestLimitExceeded = Builder(this).apply(block).build()
   44     52   
   45     53   
    @SdkDsl
   46     54   
    public class Builder {
   47     55   
        public var message: kotlin.String? = null
          56  +
        /**
          57  +
         * A list of [ThrottlingReason](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ThrottlingReason.html) that provide detailed diagnostic information about why the request was throttled.
          58  +
         */
          59  +
        public var throttlingReasons: List<ThrottlingReason>? = null
   48     60   
   49     61   
        @PublishedApi
   50     62   
        internal constructor()
   51     63   
        @PublishedApi
   52     64   
        internal constructor(x: aws.sdk.kotlin.services.dynamodb.model.RequestLimitExceeded) : this() {
   53     65   
            this.message = x.message
          66  +
            this.throttlingReasons = x.throttlingReasons
   54     67   
        }
   55     68   
   56     69   
        @PublishedApi
   57     70   
        internal fun build(): aws.sdk.kotlin.services.dynamodb.model.RequestLimitExceeded = RequestLimitExceeded(this)
   58     71   
   59     72   
        internal fun correctErrors(): Builder {
   60     73   
            return this
   61     74   
        }
   62     75   
    }
   63     76   
}

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

@@ -1,1 +86,98 @@
    2      2   
    3      3   
package aws.sdk.kotlin.services.dynamodb.model
    4      4   
    5      5   
import aws.smithy.kotlin.runtime.SdkDsl
    6      6   
    7      7   
public class UpdateContributorInsightsRequest private constructor(builder: Builder) {
    8      8   
    /**
    9      9   
     * Represents the contributor insights action.
   10     10   
     */
   11     11   
    public val contributorInsightsAction: aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsAction? = builder.contributorInsightsAction
          12  +
    /**
          13  +
     * Specifies whether to track all access and throttled events or throttled events only for the DynamoDB table or index.
          14  +
     */
          15  +
    public val contributorInsightsMode: aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsMode? = builder.contributorInsightsMode
   12     16   
    /**
   13     17   
     * The global secondary index name, if applicable.
   14     18   
     */
   15     19   
    public val indexName: kotlin.String? = builder.indexName
   16     20   
    /**
   17     21   
     * The name of the table. You can also provide the Amazon Resource Name (ARN) of the table in this parameter.
   18     22   
     */
   19     23   
    public val tableName: kotlin.String? = builder.tableName
   20     24   
   21     25   
    public companion object {
   22     26   
        public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.dynamodb.model.UpdateContributorInsightsRequest = Builder().apply(block).build()
   23     27   
    }
   24     28   
   25     29   
    override fun toString(): kotlin.String = buildString {
   26     30   
        append("UpdateContributorInsightsRequest(")
   27     31   
        append("contributorInsightsAction=$contributorInsightsAction,")
          32  +
        append("contributorInsightsMode=$contributorInsightsMode,")
   28     33   
        append("indexName=$indexName,")
   29     34   
        append("tableName=$tableName")
   30     35   
        append(")")
   31     36   
    }
   32     37   
   33     38   
    override fun hashCode(): kotlin.Int {
   34     39   
        var result = contributorInsightsAction?.hashCode() ?: 0
          40  +
        result = 31 * result + (this.contributorInsightsMode?.hashCode() ?: 0)
   35     41   
        result = 31 * result + (this.indexName?.hashCode() ?: 0)
   36     42   
        result = 31 * result + (this.tableName?.hashCode() ?: 0)
   37     43   
        return result
   38     44   
    }
   39     45   
   40     46   
    override fun equals(other: kotlin.Any?): kotlin.Boolean {
   41     47   
        if (this === other) return true
   42     48   
        if (other == null || this::class != other::class) return false
   43     49   
   44     50   
        other as UpdateContributorInsightsRequest
   45     51   
   46     52   
        if (contributorInsightsAction != other.contributorInsightsAction) return false
          53  +
        if (contributorInsightsMode != other.contributorInsightsMode) return false
   47     54   
        if (indexName != other.indexName) return false
   48     55   
        if (tableName != other.tableName) return false
   49     56   
   50     57   
        return true
   51     58   
    }
   52     59   
   53     60   
    public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.dynamodb.model.UpdateContributorInsightsRequest = Builder(this).apply(block).build()
   54     61   
   55     62   
    @SdkDsl
   56     63   
    public class Builder {
   57     64   
        /**
   58     65   
         * Represents the contributor insights action.
   59     66   
         */
   60     67   
        public var contributorInsightsAction: aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsAction? = null
          68  +
        /**
          69  +
         * Specifies whether to track all access and throttled events or throttled events only for the DynamoDB table or index.
          70  +
         */
          71  +
        public var contributorInsightsMode: aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsMode? = null
   61     72   
        /**
   62     73   
         * The global secondary index name, if applicable.
   63     74   
         */
   64     75   
        public var indexName: kotlin.String? = null
   65     76   
        /**
   66     77   
         * The name of the table. You can also provide the Amazon Resource Name (ARN) of the table in this parameter.
   67     78   
         */
   68     79   
        public var tableName: kotlin.String? = null
   69     80   
   70     81   
        @PublishedApi
   71     82   
        internal constructor()
   72     83   
        @PublishedApi
   73     84   
        internal constructor(x: aws.sdk.kotlin.services.dynamodb.model.UpdateContributorInsightsRequest) : this() {
   74     85   
            this.contributorInsightsAction = x.contributorInsightsAction
          86  +
            this.contributorInsightsMode = x.contributorInsightsMode
   75     87   
            this.indexName = x.indexName
   76     88   
            this.tableName = x.tableName
   77     89   
        }
   78     90   
   79     91   
        @PublishedApi
   80     92   
        internal fun build(): aws.sdk.kotlin.services.dynamodb.model.UpdateContributorInsightsRequest = UpdateContributorInsightsRequest(this)
   81     93   
   82     94   
        internal fun correctErrors(): Builder {
   83     95   
            return this
   84     96   
        }

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

@@ -1,1 +86,98 @@
    1      1   
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
    2      2   
    3      3   
package aws.sdk.kotlin.services.dynamodb.model
    4      4   
    5      5   
import aws.smithy.kotlin.runtime.SdkDsl
    6      6   
    7      7   
public class UpdateContributorInsightsResponse private constructor(builder: Builder) {
           8  +
    /**
           9  +
     * The updated mode of CloudWatch Contributor Insights that determines whether to monitor all access and throttled events or to track throttled events exclusively.
          10  +
     */
          11  +
    public val contributorInsightsMode: aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsMode? = builder.contributorInsightsMode
    8     12   
    /**
    9     13   
     * The status of contributor insights
   10     14   
     */
   11     15   
    public val contributorInsightsStatus: aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsStatus? = builder.contributorInsightsStatus
   12     16   
    /**
   13     17   
     * The name of the global secondary index, if applicable.
   14     18   
     */
   15     19   
    public val indexName: kotlin.String? = builder.indexName
   16     20   
    /**
   17     21   
     * The name of the table.
   18     22   
     */
   19     23   
    public val tableName: kotlin.String? = builder.tableName
   20     24   
   21     25   
    public companion object {
   22     26   
        public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.dynamodb.model.UpdateContributorInsightsResponse = Builder().apply(block).build()
   23     27   
    }
   24     28   
   25     29   
    override fun toString(): kotlin.String = buildString {
   26     30   
        append("UpdateContributorInsightsResponse(")
          31  +
        append("contributorInsightsMode=$contributorInsightsMode,")
   27     32   
        append("contributorInsightsStatus=$contributorInsightsStatus,")
   28     33   
        append("indexName=$indexName,")
   29     34   
        append("tableName=$tableName")
   30     35   
        append(")")
   31     36   
    }
   32     37   
   33     38   
    override fun hashCode(): kotlin.Int {
   34         -
        var result = contributorInsightsStatus?.hashCode() ?: 0
          39  +
        var result = contributorInsightsMode?.hashCode() ?: 0
          40  +
        result = 31 * result + (this.contributorInsightsStatus?.hashCode() ?: 0)
   35     41   
        result = 31 * result + (this.indexName?.hashCode() ?: 0)
   36     42   
        result = 31 * result + (this.tableName?.hashCode() ?: 0)
   37     43   
        return result
   38     44   
    }
   39     45   
   40     46   
    override fun equals(other: kotlin.Any?): kotlin.Boolean {
   41     47   
        if (this === other) return true
   42     48   
        if (other == null || this::class != other::class) return false
   43     49   
   44     50   
        other as UpdateContributorInsightsResponse
   45     51   
          52  +
        if (contributorInsightsMode != other.contributorInsightsMode) return false
   46     53   
        if (contributorInsightsStatus != other.contributorInsightsStatus) return false
   47     54   
        if (indexName != other.indexName) return false
   48     55   
        if (tableName != other.tableName) return false
   49     56   
   50     57   
        return true
   51     58   
    }
   52     59   
   53     60   
    public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.dynamodb.model.UpdateContributorInsightsResponse = Builder(this).apply(block).build()
   54     61   
   55     62   
    @SdkDsl
   56     63   
    public class Builder {
          64  +
        /**
          65  +
         * The updated mode of CloudWatch Contributor Insights that determines whether to monitor all access and throttled events or to track throttled events exclusively.
          66  +
         */
          67  +
        public var contributorInsightsMode: aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsMode? = null
   57     68   
        /**
   58     69   
         * The status of contributor insights
   59     70   
         */
   60     71   
        public var contributorInsightsStatus: aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsStatus? = null
   61     72   
        /**
   62     73   
         * The name of the global secondary index, if applicable.
   63     74   
         */
   64     75   
        public var indexName: kotlin.String? = null
   65     76   
        /**
   66     77   
         * The name of the table.
   67     78   
         */
   68     79   
        public var tableName: kotlin.String? = null
   69     80   
   70     81   
        @PublishedApi
   71     82   
        internal constructor()
   72     83   
        @PublishedApi
   73     84   
        internal constructor(x: aws.sdk.kotlin.services.dynamodb.model.UpdateContributorInsightsResponse) : this() {
          85  +
            this.contributorInsightsMode = x.contributorInsightsMode
   74     86   
            this.contributorInsightsStatus = x.contributorInsightsStatus
   75     87   
            this.indexName = x.indexName
   76     88   
            this.tableName = x.tableName
   77     89   
        }
   78     90   
   79     91   
        @PublishedApi
   80     92   
        internal fun build(): aws.sdk.kotlin.services.dynamodb.model.UpdateContributorInsightsResponse = UpdateContributorInsightsResponse(this)
   81     93   
   82     94   
        internal fun correctErrors(): Builder {
   83     95   
            return this

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

@@ -34,34 +93,94 @@
   54     54   
        RestJsonErrorDeserializer.deserialize(call.response.headers, payload)
   55     55   
    } catch (ex: Exception) {
   56     56   
        throw DynamoDbException("Failed to parse response as 'awsJson1_0' error", ex).also {
   57     57   
            setAseErrorMetadata(it, wrappedCall.response, null)
   58     58   
        }
   59     59   
    }
   60     60   
   61     61   
    val ex = when(errorDetails.code) {
   62     62   
        "InternalServerError" -> InternalServerErrorDeserializer().deserialize(context, wrappedCall, payload)
   63     63   
        "RequestLimitExceeded" -> RequestLimitExceededDeserializer().deserialize(context, wrappedCall, payload)
          64  +
        "ThrottlingException" -> ThrottlingExceptionDeserializer().deserialize(context, wrappedCall, payload)
   64     65   
        else -> DynamoDbException(errorDetails.message)
   65     66   
    }
   66     67   
   67     68   
    setAseErrorMetadata(ex, wrappedResponse, errorDetails)
   68     69   
    throw ex
   69     70   
}
   70     71   
   71     72   
private fun deserializeBatchExecuteStatementOperationBody(builder: BatchExecuteStatementResponse.Builder, payload: ByteArray) {
   72     73   
    val deserializer = JsonDeserializer(payload)
   73     74   
    val CONSUMEDCAPACITY_DESCRIPTOR = SdkFieldDescriptor(SerialKind.List, JsonSerialName("ConsumedCapacity"))

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

@@ -39,39 +98,99 @@
   59     59   
            setAseErrorMetadata(it, wrappedCall.response, null)
   60     60   
        }
   61     61   
    }
   62     62   
   63     63   
    val ex = when(errorDetails.code) {
   64     64   
        "InternalServerError" -> InternalServerErrorDeserializer().deserialize(context, wrappedCall, payload)
   65     65   
        "InvalidEndpointException" -> InvalidEndpointExceptionDeserializer().deserialize(context, wrappedCall, payload)
   66     66   
        "ProvisionedThroughputExceededException" -> ProvisionedThroughputExceededExceptionDeserializer().deserialize(context, wrappedCall, payload)
   67     67   
        "RequestLimitExceeded" -> RequestLimitExceededDeserializer().deserialize(context, wrappedCall, payload)
   68     68   
        "ResourceNotFoundException" -> ResourceNotFoundExceptionDeserializer().deserialize(context, wrappedCall, payload)
          69  +
        "ThrottlingException" -> ThrottlingExceptionDeserializer().deserialize(context, wrappedCall, payload)
   69     70   
        else -> DynamoDbException(errorDetails.message)
   70     71   
    }
   71     72   
   72     73   
    setAseErrorMetadata(ex, wrappedResponse, errorDetails)
   73     74   
    throw ex
   74     75   
}
   75     76   
   76     77   
private fun deserializeBatchGetItemOperationBody(builder: BatchGetItemResponse.Builder, payload: ByteArray) {
   77     78   
    val deserializer = JsonDeserializer(payload)
   78     79   
    val CONSUMEDCAPACITY_DESCRIPTOR = SdkFieldDescriptor(SerialKind.List, JsonSerialName("ConsumedCapacity"))

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

@@ -41,41 +100,101 @@
   61     61   
    }
   62     62   
   63     63   
    val ex = when(errorDetails.code) {
   64     64   
        "InternalServerError" -> InternalServerErrorDeserializer().deserialize(context, wrappedCall, payload)
   65     65   
        "InvalidEndpointException" -> InvalidEndpointExceptionDeserializer().deserialize(context, wrappedCall, payload)
   66     66   
        "ItemCollectionSizeLimitExceededException" -> ItemCollectionSizeLimitExceededExceptionDeserializer().deserialize(context, wrappedCall, payload)
   67     67   
        "ProvisionedThroughputExceededException" -> ProvisionedThroughputExceededExceptionDeserializer().deserialize(context, wrappedCall, payload)
   68     68   
        "ReplicatedWriteConflictException" -> ReplicatedWriteConflictExceptionDeserializer().deserialize(context, wrappedCall, payload)
   69     69   
        "RequestLimitExceeded" -> RequestLimitExceededDeserializer().deserialize(context, wrappedCall, payload)
   70     70   
        "ResourceNotFoundException" -> ResourceNotFoundExceptionDeserializer().deserialize(context, wrappedCall, payload)
          71  +
        "ThrottlingException" -> ThrottlingExceptionDeserializer().deserialize(context, wrappedCall, payload)
   71     72   
        else -> DynamoDbException(errorDetails.message)
   72     73   
    }
   73     74   
   74     75   
    setAseErrorMetadata(ex, wrappedResponse, errorDetails)
   75     76   
    throw ex
   76     77   
}
   77     78   
   78     79   
private fun deserializeBatchWriteItemOperationBody(builder: BatchWriteItemResponse.Builder, payload: ByteArray) {
   79     80   
    val deserializer = JsonDeserializer(payload)
   80     81   
    val CONSUMEDCAPACITY_DESCRIPTOR = SdkFieldDescriptor(SerialKind.List, JsonSerialName("ConsumedCapacity"))

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

@@ -1,1 +46,50 @@
    1      1   
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
    2      2   
    3      3   
package aws.sdk.kotlin.services.dynamodb.serde
    4      4   
           5  +
import aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsMode
    5      6   
import aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsStatus
    6      7   
import aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsSummary
    7      8   
import aws.smithy.kotlin.runtime.serde.Deserializer
    8      9   
import aws.smithy.kotlin.runtime.serde.SdkFieldDescriptor
    9     10   
import aws.smithy.kotlin.runtime.serde.SdkObjectDescriptor
   10     11   
import aws.smithy.kotlin.runtime.serde.SerialKind
   11     12   
import aws.smithy.kotlin.runtime.serde.asSdkSerializable
   12     13   
import aws.smithy.kotlin.runtime.serde.deserializeList
   13     14   
import aws.smithy.kotlin.runtime.serde.deserializeMap
   14     15   
import aws.smithy.kotlin.runtime.serde.deserializeStruct
   15     16   
import aws.smithy.kotlin.runtime.serde.field
   16     17   
import aws.smithy.kotlin.runtime.serde.json.JsonDeserializer
   17     18   
import aws.smithy.kotlin.runtime.serde.json.JsonSerialName
   18     19   
import aws.smithy.kotlin.runtime.serde.serializeList
   19     20   
import aws.smithy.kotlin.runtime.serde.serializeMap
   20     21   
import aws.smithy.kotlin.runtime.serde.serializeStruct
   21     22   
   22     23   
internal fun deserializeContributorInsightsSummaryDocument(deserializer: Deserializer): ContributorInsightsSummary {
   23     24   
    val builder = ContributorInsightsSummary.Builder()
          25  +
    val CONTRIBUTORINSIGHTSMODE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("ContributorInsightsMode"))
   24     26   
    val CONTRIBUTORINSIGHTSSTATUS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("ContributorInsightsStatus"))
   25     27   
    val INDEXNAME_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("IndexName"))
   26     28   
    val TABLENAME_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("TableName"))
   27     29   
    val OBJ_DESCRIPTOR = SdkObjectDescriptor.build {
          30  +
        field(CONTRIBUTORINSIGHTSMODE_DESCRIPTOR)
   28     31   
        field(CONTRIBUTORINSIGHTSSTATUS_DESCRIPTOR)
   29     32   
        field(INDEXNAME_DESCRIPTOR)
   30     33   
        field(TABLENAME_DESCRIPTOR)
   31     34   
    }
   32     35   
   33     36   
    deserializer.deserializeStruct(OBJ_DESCRIPTOR) {
   34     37   
        loop@while (true) {
   35     38   
            when (findNextFieldIndex()) {
          39  +
                CONTRIBUTORINSIGHTSMODE_DESCRIPTOR.index -> builder.contributorInsightsMode = deserializeString().let { ContributorInsightsMode.fromValue(it) }
   36     40   
                CONTRIBUTORINSIGHTSSTATUS_DESCRIPTOR.index -> builder.contributorInsightsStatus = deserializeString().let { ContributorInsightsStatus.fromValue(it) }
   37     41   
                INDEXNAME_DESCRIPTOR.index -> builder.indexName = deserializeString()
   38     42   
                TABLENAME_DESCRIPTOR.index -> builder.tableName = deserializeString()
   39     43   
                null -> break@loop
   40     44   
                else -> skipValue()
   41     45   
            }
   42     46   
        }
   43     47   
    }
   44     48   
    builder.correctErrors()
   45     49   
    return builder.build()

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

@@ -41,41 +100,101 @@
   61     61   
   62     62   
    val ex = when(errorDetails.code) {
   63     63   
        "ConditionalCheckFailedException" -> ConditionalCheckFailedExceptionDeserializer().deserialize(context, wrappedCall, payload)
   64     64   
        "InternalServerError" -> InternalServerErrorDeserializer().deserialize(context, wrappedCall, payload)
   65     65   
        "InvalidEndpointException" -> InvalidEndpointExceptionDeserializer().deserialize(context, wrappedCall, payload)
   66     66   
        "ItemCollectionSizeLimitExceededException" -> ItemCollectionSizeLimitExceededExceptionDeserializer().deserialize(context, wrappedCall, payload)
   67     67   
        "ProvisionedThroughputExceededException" -> ProvisionedThroughputExceededExceptionDeserializer().deserialize(context, wrappedCall, payload)
   68     68   
        "ReplicatedWriteConflictException" -> ReplicatedWriteConflictExceptionDeserializer().deserialize(context, wrappedCall, payload)
   69     69   
        "RequestLimitExceeded" -> RequestLimitExceededDeserializer().deserialize(context, wrappedCall, payload)
   70     70   
        "ResourceNotFoundException" -> ResourceNotFoundExceptionDeserializer().deserialize(context, wrappedCall, payload)
          71  +
        "ThrottlingException" -> ThrottlingExceptionDeserializer().deserialize(context, wrappedCall, payload)
   71     72   
        "TransactionConflictException" -> TransactionConflictExceptionDeserializer().deserialize(context, wrappedCall, payload)
   72     73   
        else -> DynamoDbException(errorDetails.message)
   73     74   
    }
   74     75   
   75     76   
    setAseErrorMetadata(ex, wrappedResponse, errorDetails)
   76     77   
    throw ex
   77     78   
}
   78     79   
   79     80   
private fun deserializeDeleteItemOperationBody(builder: DeleteItemResponse.Builder, payload: ByteArray) {
   80     81   
    val deserializer = JsonDeserializer(payload)

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

@@ -1,1 +34,35 @@
    1      1   
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
    2      2   
    3      3   
package aws.sdk.kotlin.services.dynamodb.serde
    4      4   
           5  +
import aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsMode
    5      6   
import aws.sdk.kotlin.services.dynamodb.model.ContributorInsightsStatus
    6      7   
import aws.sdk.kotlin.services.dynamodb.model.DescribeContributorInsightsResponse
    7      8   
import aws.sdk.kotlin.services.dynamodb.model.DynamoDbException
    8      9   
import aws.sdk.kotlin.services.dynamodb.model.FailureException
    9     10   
import aws.smithy.kotlin.runtime.awsprotocol.json.RestJsonErrorDeserializer
   10     11   
import aws.smithy.kotlin.runtime.awsprotocol.setAseErrorMetadata
   11     12   
import aws.smithy.kotlin.runtime.awsprotocol.withPayload
   12     13   
import aws.smithy.kotlin.runtime.http.HttpCall
   13     14   
import aws.smithy.kotlin.runtime.http.isSuccess
   14     15   
import aws.smithy.kotlin.runtime.http.operation.HttpDeserializer
@@ -45,46 +112,116 @@
   65     66   
        "ResourceNotFoundException" -> ResourceNotFoundExceptionDeserializer().deserialize(context, wrappedCall, payload)
   66     67   
        else -> DynamoDbException(errorDetails.message)
   67     68   
    }
   68     69   
   69     70   
    setAseErrorMetadata(ex, wrappedResponse, errorDetails)
   70     71   
    throw ex
   71     72   
}
   72     73   
   73     74   
private fun deserializeDescribeContributorInsightsOperationBody(builder: DescribeContributorInsightsResponse.Builder, payload: ByteArray) {
   74     75   
    val deserializer = JsonDeserializer(payload)
          76  +
    val CONTRIBUTORINSIGHTSMODE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("ContributorInsightsMode"))
   75     77   
    val CONTRIBUTORINSIGHTSRULELIST_DESCRIPTOR = SdkFieldDescriptor(SerialKind.List, JsonSerialName("ContributorInsightsRuleList"))
   76     78   
    val CONTRIBUTORINSIGHTSSTATUS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Enum, JsonSerialName("ContributorInsightsStatus"))
   77     79   
    val FAILUREEXCEPTION_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("FailureException"))
   78     80   
    val INDEXNAME_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("IndexName"))
   79     81   
    val LASTUPDATEDATETIME_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Timestamp, JsonSerialName("LastUpdateDateTime"))
   80     82   
    val TABLENAME_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("TableName"))
   81     83   
    val OBJ_DESCRIPTOR = SdkObjectDescriptor.build {
          84  +
        field(CONTRIBUTORINSIGHTSMODE_DESCRIPTOR)
   82     85   
        field(CONTRIBUTORINSIGHTSRULELIST_DESCRIPTOR)
   83     86   
        field(CONTRIBUTORINSIGHTSSTATUS_DESCRIPTOR)
   84     87   
        field(FAILUREEXCEPTION_DESCRIPTOR)
   85     88   
        field(INDEXNAME_DESCRIPTOR)
   86     89   
        field(LASTUPDATEDATETIME_DESCRIPTOR)
   87     90   
        field(TABLENAME_DESCRIPTOR)
   88     91   
    }
   89     92   
   90     93   
    deserializer.deserializeStruct(OBJ_DESCRIPTOR) {
   91     94   
        loop@while (true) {
   92     95   
            when (findNextFieldIndex()) {
          96  +
                CONTRIBUTORINSIGHTSMODE_DESCRIPTOR.index -> builder.contributorInsightsMode = deserializeString().let { ContributorInsightsMode.fromValue(it) }
   93     97   
                CONTRIBUTORINSIGHTSRULELIST_DESCRIPTOR.index -> builder.contributorInsightsRuleList =
   94     98   
                    deserializer.deserializeList(CONTRIBUTORINSIGHTSRULELIST_DESCRIPTOR) {
   95     99   
                        val col0 = mutableListOf<String>()
   96    100   
                        while (hasNextElement()) {
   97    101   
                            val el0 = if (nextHasValue()) { deserializeString() } else { deserializeNull(); continue }
   98    102   
                            col0.add(el0)
   99    103   
                        }
  100    104   
                        col0
  101    105   
                    }
  102    106   
                CONTRIBUTORINSIGHTSSTATUS_DESCRIPTOR.index -> builder.contributorInsightsStatus = deserializeString().let { ContributorInsightsStatus.fromValue(it) }

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

@@ -40,40 +99,100 @@
   60     60   
    }
   61     61   
   62     62   
    val ex = when(errorDetails.code) {
   63     63   
        "ConditionalCheckFailedException" -> ConditionalCheckFailedExceptionDeserializer().deserialize(context, wrappedCall, payload)
   64     64   
        "DuplicateItemException" -> DuplicateItemExceptionDeserializer().deserialize(context, wrappedCall, payload)
   65     65   
        "InternalServerError" -> InternalServerErrorDeserializer().deserialize(context, wrappedCall, payload)
   66     66   
        "ItemCollectionSizeLimitExceededException" -> ItemCollectionSizeLimitExceededExceptionDeserializer().deserialize(context, wrappedCall, payload)
   67     67   
        "ProvisionedThroughputExceededException" -> ProvisionedThroughputExceededExceptionDeserializer().deserialize(context, wrappedCall, payload)
   68     68   
        "RequestLimitExceeded" -> RequestLimitExceededDeserializer().deserialize(context, wrappedCall, payload)
   69     69   
        "ResourceNotFoundException" -> ResourceNotFoundExceptionDeserializer().deserialize(context, wrappedCall, payload)
          70  +
        "ThrottlingException" -> ThrottlingExceptionDeserializer().deserialize(context, wrappedCall, payload)
   70     71   
        "TransactionConflictException" -> TransactionConflictExceptionDeserializer().deserialize(context, wrappedCall, payload)
   71     72   
        else -> DynamoDbException(errorDetails.message)
   72     73   
    }
   73     74   
   74     75   
    setAseErrorMetadata(ex, wrappedResponse, errorDetails)
   75     76   
    throw ex
   76     77   
}
   77     78   
   78     79   
private fun deserializeExecuteStatementOperationBody(builder: ExecuteStatementResponse.Builder, payload: ByteArray) {
   79     80   
    val deserializer = JsonDeserializer(payload)

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

@@ -37,37 +96,97 @@
   57     57   
            setAseErrorMetadata(it, wrappedCall.response, null)
   58     58   
        }
   59     59   
    }
   60     60   
   61     61   
    val ex = when(errorDetails.code) {
   62     62   
        "IdempotentParameterMismatchException" -> IdempotentParameterMismatchExceptionDeserializer().deserialize(context, wrappedCall, payload)
   63     63   
        "InternalServerError" -> InternalServerErrorDeserializer().deserialize(context, wrappedCall, payload)
   64     64   
        "ProvisionedThroughputExceededException" -> ProvisionedThroughputExceededExceptionDeserializer().deserialize(context, wrappedCall, payload)
   65     65   
        "RequestLimitExceeded" -> RequestLimitExceededDeserializer().deserialize(context, wrappedCall, payload)
   66     66   
        "ResourceNotFoundException" -> ResourceNotFoundExceptionDeserializer().deserialize(context, wrappedCall, payload)
          67  +
        "ThrottlingException" -> ThrottlingExceptionDeserializer().deserialize(context, wrappedCall, payload)
   67     68   
        "TransactionCanceledException" -> TransactionCanceledExceptionDeserializer().deserialize(context, wrappedCall, payload)
   68     69   
        "TransactionInProgressException" -> TransactionInProgressExceptionDeserializer().deserialize(context, wrappedCall, payload)
   69     70   
        else -> DynamoDbException(errorDetails.message)
   70     71   
    }
   71     72   
   72     73   
    setAseErrorMetadata(ex, wrappedResponse, errorDetails)
   73     74   
    throw ex
   74     75   
}
   75     76   
   76     77   
private fun deserializeExecuteTransactionOperationBody(builder: ExecuteTransactionResponse.Builder, payload: ByteArray) {

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

@@ -37,37 +96,97 @@
   57     57   
            setAseErrorMetadata(it, wrappedCall.response, null)
   58     58   
        }
   59     59   
    }
   60     60   
   61     61   
    val ex = when(errorDetails.code) {
   62     62   
        "InternalServerError" -> InternalServerErrorDeserializer().deserialize(context, wrappedCall, payload)
   63     63   
        "InvalidEndpointException" -> InvalidEndpointExceptionDeserializer().deserialize(context, wrappedCall, payload)
   64     64   
        "ProvisionedThroughputExceededException" -> ProvisionedThroughputExceededExceptionDeserializer().deserialize(context, wrappedCall, payload)
   65     65   
        "RequestLimitExceeded" -> RequestLimitExceededDeserializer().deserialize(context, wrappedCall, payload)
   66     66   
        "ResourceNotFoundException" -> ResourceNotFoundExceptionDeserializer().deserialize(context, wrappedCall, payload)
          67  +
        "ThrottlingException" -> ThrottlingExceptionDeserializer().deserialize(context, wrappedCall, payload)
   67     68   
        else -> DynamoDbException(errorDetails.message)
   68     69   
    }
   69     70   
   70     71   
    setAseErrorMetadata(ex, wrappedResponse, errorDetails)
   71     72   
    throw ex
   72     73   
}
   73     74   
   74     75   
private fun deserializeGetItemOperationBody(builder: GetItemResponse.Builder, payload: ByteArray) {
   75     76   
    val deserializer = JsonDeserializer(payload)
   76     77   
    val CONSUMEDCAPACITY_DESCRIPTOR = SdkFieldDescriptor(SerialKind.Struct, JsonSerialName("ConsumedCapacity"))

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

@@ -1,1 +55,68 @@
    1      1   
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
    2      2   
    3      3   
package aws.sdk.kotlin.services.dynamodb.serde
    4      4   
    5      5   
import aws.sdk.kotlin.services.dynamodb.model.ProvisionedThroughputExceededException
           6  +
import aws.sdk.kotlin.services.dynamodb.model.ThrottlingReason
    6      7   
import aws.smithy.kotlin.runtime.http.HttpCall
    7      8   
import aws.smithy.kotlin.runtime.http.operation.HttpDeserializer
    8      9   
import aws.smithy.kotlin.runtime.http.response.HttpResponse
    9     10   
import aws.smithy.kotlin.runtime.operation.ExecutionContext
   10     11   
import aws.smithy.kotlin.runtime.serde.SdkFieldDescriptor
   11     12   
import aws.smithy.kotlin.runtime.serde.SdkObjectDescriptor
   12     13   
import aws.smithy.kotlin.runtime.serde.SerialKind
   13     14   
import aws.smithy.kotlin.runtime.serde.asSdkSerializable
   14     15   
import aws.smithy.kotlin.runtime.serde.deserializeList
   15     16   
import aws.smithy.kotlin.runtime.serde.deserializeMap
   16     17   
import aws.smithy.kotlin.runtime.serde.deserializeStruct
   17     18   
import aws.smithy.kotlin.runtime.serde.field
   18     19   
import aws.smithy.kotlin.runtime.serde.json.JsonDeserializer
   19     20   
import aws.smithy.kotlin.runtime.serde.json.JsonSerialName
   20     21   
import aws.smithy.kotlin.runtime.serde.serializeList
   21     22   
import aws.smithy.kotlin.runtime.serde.serializeMap
   22     23   
import aws.smithy.kotlin.runtime.serde.serializeStruct
          24  +
import kotlin.collections.mutableListOf
   23     25   
   24     26   
   25     27   
internal class ProvisionedThroughputExceededExceptionDeserializer: HttpDeserializer.NonStreaming<ProvisionedThroughputExceededException> {
   26     28   
   27     29   
    override fun deserialize(context: ExecutionContext, call: HttpCall, payload: ByteArray?): ProvisionedThroughputExceededException {
   28     30   
        val response = call.response
   29     31   
        val builder = ProvisionedThroughputExceededException.Builder()
   30     32   
   31     33   
        if (payload != null) {
   32     34   
            deserializeProvisionedThroughputExceededExceptionError(builder, payload)
   33     35   
        }
   34     36   
        builder.correctErrors()
   35     37   
        return builder.build()
   36     38   
    }
   37     39   
}
   38     40   
   39     41   
private fun deserializeProvisionedThroughputExceededExceptionError(builder: ProvisionedThroughputExceededException.Builder, payload: ByteArray) {
   40     42   
    val deserializer = JsonDeserializer(payload)
          43  +
    val THROTTLINGREASONS_DESCRIPTOR = SdkFieldDescriptor(SerialKind.List, JsonSerialName("ThrottlingReasons"))
   41     44   
    val MESSAGE_DESCRIPTOR = SdkFieldDescriptor(SerialKind.String, JsonSerialName("message"))
   42     45   
    val OBJ_DESCRIPTOR = SdkObjectDescriptor.build {
          46  +
        field(THROTTLINGREASONS_DESCRIPTOR)
   43     47   
        field(MESSAGE_DESCRIPTOR)
   44     48   
    }
   45     49   
   46     50   
    deserializer.deserializeStruct(OBJ_DESCRIPTOR) {
   47     51   
        loop@while (true) {
   48     52   
            when (findNextFieldIndex()) {
          53  +
                THROTTLINGREASONS_DESCRIPTOR.index -> builder.throttlingReasons =
          54  +
                    deserializer.deserializeList(THROTTLINGREASONS_DESCRIPTOR) {
          55  +
                        val col0 = mutableListOf<ThrottlingReason>()
          56  +
                        while (hasNextElement()) {
          57  +
                            val el0 = if (nextHasValue()) { deserializeThrottlingReasonDocument(deserializer) } else { deserializeNull(); continue }
          58  +
                            col0.add(el0)
          59  +
                        }
          60  +
                        col0
          61  +
                    }
   49     62   
                MESSAGE_DESCRIPTOR.index -> builder.message = deserializeString()
   50     63   
                null -> break@loop
   51     64   
                else -> skipValue()
   52     65   
            }
   53     66   
        }
   54     67   
    }
   55     68   
}

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

@@ -41,41 +100,101 @@
   61     61   
   62     62   
    val ex = when(errorDetails.code) {
   63     63   
        "ConditionalCheckFailedException" -> ConditionalCheckFailedExceptionDeserializer().deserialize(context, wrappedCall, payload)
   64     64   
        "InternalServerError" -> InternalServerErrorDeserializer().deserialize(context, wrappedCall, payload)
   65     65   
        "InvalidEndpointException" -> InvalidEndpointExceptionDeserializer().deserialize(context, wrappedCall, payload)
   66     66   
        "ItemCollectionSizeLimitExceededException" -> ItemCollectionSizeLimitExceededExceptionDeserializer().deserialize(context, wrappedCall, payload)
   67     67   
        "ProvisionedThroughputExceededException" -> ProvisionedThroughputExceededExceptionDeserializer().deserialize(context, wrappedCall, payload)
   68     68   
        "ReplicatedWriteConflictException" -> ReplicatedWriteConflictExceptionDeserializer().deserialize(context, wrappedCall, payload)
   69     69   
        "RequestLimitExceeded" -> RequestLimitExceededDeserializer().deserialize(context, wrappedCall, payload)
   70     70   
        "ResourceNotFoundException" -> ResourceNotFoundExceptionDeserializer().deserialize(context, wrappedCall, payload)
          71  +
        "ThrottlingException" -> ThrottlingExceptionDeserializer().deserialize(context, wrappedCall, payload)
   71     72   
        "TransactionConflictException" -> TransactionConflictExceptionDeserializer().deserialize(context, wrappedCall, payload)
   72     73   
        else -> DynamoDbException(errorDetails.message)
   73     74   
    }
   74     75   
   75     76   
    setAseErrorMetadata(ex, wrappedResponse, errorDetails)
   76     77   
    throw ex
   77     78   
}
   78     79   
   79     80   
private fun deserializePutItemOperationBody(builder: PutItemResponse.Builder, payload: ByteArray) {
   80     81   
    val deserializer = JsonDeserializer(payload)