AWS SDK

AWS SDK

rev. 2493670155f3f484f4055f00c7816463c1a2ced2..d52e890343dc62eceaad006f54eea929ef91eb0f

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

@@ -144,144 +204,204 @@
  164    164   
import aws.smithy.kotlin.runtime.telemetry.TelemetryConfig
  165    165   
import aws.smithy.kotlin.runtime.telemetry.TelemetryProvider
  166    166   
import aws.smithy.kotlin.runtime.util.LazyAsyncValue
  167    167   
import kotlin.collections.List
  168    168   
import kotlin.jvm.JvmStatic
  169    169   
import kotlin.time.Duration
  170    170   
import kotlinx.coroutines.runBlocking
  171    171   
  172    172   
  173    173   
public const val ServiceId: String = "CodeBuild"
  174         -
public const val SdkVersion: String = "1.6.48-SNAPSHOT"
         174  +
public const val SdkVersion: String = "1.6.60-SNAPSHOT"
  175    175   
public const val ServiceApiVersion: String = "2016-10-06"
  176    176   
  177    177   
/**
  178    178   
 * # CodeBuild
  179    179   
 * 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    180   
 */
  181    181   
public interface CodeBuildClient : SdkClient {
  182    182   
    /**
  183    183   
     * CodeBuildClient's configuration
  184    184   
     */

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/e2eTest/src/PaginatorTest.kt

@@ -1,1 +50,51 @@
    1      1   
/*
    2      2   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
    3      3   
 * SPDX-License-Identifier: Apache-2.0
    4      4   
 */
    5      5   
package aws.sdk.kotlin.services.dynamodb
    6      6   
    7      7   
import aws.sdk.kotlin.services.dynamodb.model.*
    8      8   
import aws.sdk.kotlin.services.dynamodb.paginators.scanPaginated
    9      9   
import aws.sdk.kotlin.services.dynamodb.waiters.waitUntilTableExists
          10  +
import aws.smithy.kotlin.runtime.testing.AfterAll
          11  +
import aws.smithy.kotlin.runtime.testing.BeforeAll
          12  +
import aws.smithy.kotlin.runtime.testing.TestInstance
          13  +
import aws.smithy.kotlin.runtime.testing.TestLifecycle
   10     14   
import kotlinx.coroutines.runBlocking
   11     15   
import kotlinx.coroutines.test.runTest
   12         -
import org.junit.jupiter.api.AfterAll
   13         -
import org.junit.jupiter.api.BeforeAll
   14         -
import org.junit.jupiter.api.TestInstance
   15     16   
import kotlin.random.Random
   16     17   
import kotlin.test.Test
   17     18   
import kotlin.test.assertEquals
   18     19   
import kotlin.time.Duration.Companion.seconds
   19     20   
   20         -
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
          21  +
@TestInstance(TestLifecycle.PER_CLASS)
   21     22   
class PaginatorTest {
   22     23   
    private val client = DynamoDbClient { region = "us-west-2" }
   23     24   
    private val table = "testTable${Random.nextInt()}"
   24     25   
   25     26   
    @BeforeAll
   26     27   
    private fun setUp(): Unit = runBlocking {
   27     28   
        if (!client.tableExists(table)) {
   28     29   
            client.createTable {
   29     30   
                tableName = table
   30     31   
                attributeDefinitions = listOf(

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

@@ -147,147 +207,207 @@
  167    167   
import aws.smithy.kotlin.runtime.telemetry.TelemetryConfig
  168    168   
import aws.smithy.kotlin.runtime.telemetry.TelemetryProvider
  169    169   
import aws.smithy.kotlin.runtime.util.LazyAsyncValue
  170    170   
import kotlin.collections.List
  171    171   
import kotlin.jvm.JvmStatic
  172    172   
import kotlin.time.Duration
  173    173   
import kotlinx.coroutines.runBlocking
  174    174   
  175    175   
  176    176   
public const val ServiceId: String = "DynamoDB"
  177         -
public const val SdkVersion: String = "1.6.48-SNAPSHOT"
         177  +
public const val SdkVersion: String = "1.6.60-SNAPSHOT"
  178    178   
public const val ServiceApiVersion: String = "2012-08-10"
  179    179   
  180    180   
/**
  181    181   
 * # Amazon DynamoDB
  182    182   
 * 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.
  183    183   
 *
  184    184   
 * 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.
  185    185   
 *
  186    186   
 * 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.
  187    187   
 */

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

@@ -1954,1954 +2014,2014 @@
 1974   1974   
        op.install(RecursionDetection())
 1975   1975   
        op.interceptors.addAll(config.interceptors)
 1976   1976   
        return op.roundTrip(client, input)
 1977   1977   
    }
 1978   1978   
 1979   1979   
    /**
 1980   1980   
     * Bundles an Amazon instance store-backed Windows instance.
 1981   1981   
     *
 1982   1982   
     * During bundling, only the root device volume (C:\) is bundled. Data on other instance store volumes is not preserved.
 1983   1983   
     *
 1984         -
     * This action is not applicable for Linux/Unix instances or Windows instances that are backed by Amazon EBS.
        1984  +
     * This action is no longer supported. To create an AMI, use [CreateImage](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateImage.html). For more information, see [ Create an Amazon EBS-backed AMI](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-an-ami-ebs.html) in the *Amazon EC2 User Guide*.
 1985   1985   
     */
 1986   1986   
    override suspend fun bundleInstance(input: BundleInstanceRequest): BundleInstanceResponse {
 1987   1987   
        val op = SdkHttpOperation.build<BundleInstanceRequest, BundleInstanceResponse> {
 1988   1988   
            serializeWith = BundleInstanceOperationSerializer()
 1989   1989   
            deserializeWith = BundleInstanceOperationDeserializer()
 1990   1990   
            operationName = "BundleInstance"
 1991   1991   
            serviceName = ServiceId
 1992   1992   
            telemetry {
 1993   1993   
                provider = config.telemetryProvider
 1994   1994   
                scope = telemetryScope
@@ -22641,22641 +22700,22740 @@
22661  22661   
            MutateHeaders().apply {
22662  22662   
                setIfMissing("Content-Type", "application/x-www-form-urlencoded")
22663  22663   
            }
22664  22664   
        )
22665  22665   
        op.install(UserAgent(awsUserAgentMetadata))
22666  22666   
        op.install(RecursionDetection())
22667  22667   
        op.interceptors.addAll(config.interceptors)
22668  22668   
        return op.roundTrip(client, input)
22669  22669   
    }
22670  22670   
       22671  +
    /**
       22672  +
     * Retrieves the tag keys that are currently being monitored by EC2 Capacity Manager. Monitored tag keys are included as dimensions in capacity metric data, enabling you to group and filter metrics by tag values.
       22673  +
     */
       22674  +
    override suspend fun getCapacityManagerMonitoredTagKeys(input: GetCapacityManagerMonitoredTagKeysRequest): GetCapacityManagerMonitoredTagKeysResponse {
       22675  +
        val op = SdkHttpOperation.build<GetCapacityManagerMonitoredTagKeysRequest, GetCapacityManagerMonitoredTagKeysResponse> {
       22676  +
            serializeWith = GetCapacityManagerMonitoredTagKeysOperationSerializer()
       22677  +
            deserializeWith = GetCapacityManagerMonitoredTagKeysOperationDeserializer()
       22678  +
            operationName = "GetCapacityManagerMonitoredTagKeys"
       22679  +
            serviceName = ServiceId
       22680  +
            telemetry {
       22681  +
                provider = config.telemetryProvider
       22682  +
                scope = telemetryScope
       22683  +
                metrics = opMetrics
       22684  +
                attributes = attributesOf {
       22685  +
                    "rpc.system" to "aws-api"
       22686  +
                }
       22687  +
            }
       22688  +
            execution.auth = OperationAuthConfig(authSchemeAdapter, configuredAuthSchemes, identityProviderConfig)
       22689  +
            execution.endpointResolver = EndpointResolverAdapter(config)
       22690  +
            execution.retryStrategy = config.retryStrategy
       22691  +
            execution.retryPolicy = config.retryPolicy
       22692  +
        }
       22693  +
        mergeServiceDefaults(op.context)
       22694  +
        op.install(AwsRetryHeaderMiddleware())
       22695  +
        op.interceptors.add(AwsSpanInterceptor)
       22696  +
        op.interceptors.add(BusinessMetricsInterceptor())
       22697  +
        if (config.credentialsProvider is StaticCredentialsProvider) {
       22698  +
            op.context.emitBusinessMetric(AwsBusinessMetric.Credentials.CREDENTIALS_CODE)
       22699  +
        }
       22700  +
        op.install(
       22701  +
            MutateHeaders().apply {
       22702  +
                setIfMissing("Content-Type", "application/x-www-form-urlencoded")
       22703  +
            }
       22704  +
        )
       22705  +
        op.install(UserAgent(awsUserAgentMetadata))
       22706  +
        op.install(RecursionDetection())
       22707  +
        op.interceptors.addAll(config.interceptors)
       22708  +
        return op.roundTrip(client, input)
       22709  +
    }
       22710  +
22671  22711   
    /**
22672  22712   
     * Gets usage information about a Capacity Reservation. If the Capacity Reservation is shared, it shows usage information for the Capacity Reservation owner and each Amazon Web Services account that is currently using the shared capacity. If the Capacity Reservation is not shared, it shows only the Capacity Reservation owner's usage.
22673  22713   
     */
22674  22714   
    override suspend fun getCapacityReservationUsage(input: GetCapacityReservationUsageRequest): GetCapacityReservationUsageResponse {
22675  22715   
        val op = SdkHttpOperation.build<GetCapacityReservationUsageRequest, GetCapacityReservationUsageResponse> {
22676  22716   
            serializeWith = GetCapacityReservationUsageOperationSerializer()
22677  22717   
            deserializeWith = GetCapacityReservationUsageOperationDeserializer()
22678  22718   
            operationName = "GetCapacityReservationUsage"
22679  22719   
            serviceName = ServiceId
22680  22720   
            telemetry {
@@ -32075,32115 +32134,32214 @@
32095  32135   
            MutateHeaders().apply {
32096  32136   
                setIfMissing("Content-Type", "application/x-www-form-urlencoded")
32097  32137   
            }
32098  32138   
        )
32099  32139   
        op.install(UserAgent(awsUserAgentMetadata))
32100  32140   
        op.install(RecursionDetection())
32101  32141   
        op.interceptors.addAll(config.interceptors)
32102  32142   
        return op.roundTrip(client, input)
32103  32143   
    }
32104  32144   
       32145  +
    /**
       32146  +
     * Activates or deactivates tag keys for monitoring by EC2 Capacity Manager. Activated tag keys are included as dimensions in capacity metric data, enabling you to group and filter metrics by tag values.
       32147  +
     */
       32148  +
    override suspend fun updateCapacityManagerMonitoredTagKeys(input: UpdateCapacityManagerMonitoredTagKeysRequest): UpdateCapacityManagerMonitoredTagKeysResponse {
       32149  +
        val op = SdkHttpOperation.build<UpdateCapacityManagerMonitoredTagKeysRequest, UpdateCapacityManagerMonitoredTagKeysResponse> {
       32150  +
            serializeWith = UpdateCapacityManagerMonitoredTagKeysOperationSerializer()
       32151  +
            deserializeWith = UpdateCapacityManagerMonitoredTagKeysOperationDeserializer()
       32152  +
            operationName = "UpdateCapacityManagerMonitoredTagKeys"
       32153  +
            serviceName = ServiceId
       32154  +
            telemetry {
       32155  +
                provider = config.telemetryProvider
       32156  +
                scope = telemetryScope
       32157  +
                metrics = opMetrics
       32158  +
                attributes = attributesOf {
       32159  +
                    "rpc.system" to "aws-api"
       32160  +
                }
       32161  +
            }
       32162  +
            execution.auth = OperationAuthConfig(authSchemeAdapter, configuredAuthSchemes, identityProviderConfig)
       32163  +
            execution.endpointResolver = EndpointResolverAdapter(config)
       32164  +
            execution.retryStrategy = config.retryStrategy
       32165  +
            execution.retryPolicy = config.retryPolicy
       32166  +
        }
       32167  +
        mergeServiceDefaults(op.context)
       32168  +
        op.install(AwsRetryHeaderMiddleware())
       32169  +
        op.interceptors.add(AwsSpanInterceptor)
       32170  +
        op.interceptors.add(BusinessMetricsInterceptor())
       32171  +
        if (config.credentialsProvider is StaticCredentialsProvider) {
       32172  +
            op.context.emitBusinessMetric(AwsBusinessMetric.Credentials.CREDENTIALS_CODE)
       32173  +
        }
       32174  +
        op.install(
       32175  +
            MutateHeaders().apply {
       32176  +
                setIfMissing("Content-Type", "application/x-www-form-urlencoded")
       32177  +
            }
       32178  +
        )
       32179  +
        op.install(UserAgent(awsUserAgentMetadata))
       32180  +
        op.install(RecursionDetection())
       32181  +
        op.interceptors.addAll(config.interceptors)
       32182  +
        return op.roundTrip(client, input)
       32183  +
    }
       32184  +
32105  32185   
    /**
32106  32186   
     * Updates the Organizations access setting for EC2 Capacity Manager. This controls whether Capacity Manager can aggregate data from all accounts in your Amazon Web Services Organization or only from the current account.
32107  32187   
     */
32108  32188   
    override suspend fun updateCapacityManagerOrganizationsAccess(input: UpdateCapacityManagerOrganizationsAccessRequest): UpdateCapacityManagerOrganizationsAccessResponse {
32109  32189   
        val op = SdkHttpOperation.build<UpdateCapacityManagerOrganizationsAccessRequest, UpdateCapacityManagerOrganizationsAccessResponse> {
32110  32190   
            serializeWith = UpdateCapacityManagerOrganizationsAccessOperationSerializer()
32111  32191   
            deserializeWith = UpdateCapacityManagerOrganizationsAccessOperationDeserializer()
32112  32192   
            operationName = "UpdateCapacityManagerOrganizationsAccess"
32113  32193   
            serviceName = ServiceId
32114  32194   
            telemetry {

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

@@ -1053,1053 +1112,1114 @@
 1073   1073   
import aws.sdk.kotlin.services.ec2.model.GetAssociatedIpv6PoolCidrsRequest
 1074   1074   
import aws.sdk.kotlin.services.ec2.model.GetAssociatedIpv6PoolCidrsResponse
 1075   1075   
import aws.sdk.kotlin.services.ec2.model.GetAwsNetworkPerformanceDataRequest
 1076   1076   
import aws.sdk.kotlin.services.ec2.model.GetAwsNetworkPerformanceDataResponse
 1077   1077   
import aws.sdk.kotlin.services.ec2.model.GetCapacityManagerAttributesRequest
 1078   1078   
import aws.sdk.kotlin.services.ec2.model.GetCapacityManagerAttributesResponse
 1079   1079   
import aws.sdk.kotlin.services.ec2.model.GetCapacityManagerMetricDataRequest
 1080   1080   
import aws.sdk.kotlin.services.ec2.model.GetCapacityManagerMetricDataResponse
 1081   1081   
import aws.sdk.kotlin.services.ec2.model.GetCapacityManagerMetricDimensionsRequest
 1082   1082   
import aws.sdk.kotlin.services.ec2.model.GetCapacityManagerMetricDimensionsResponse
        1083  +
import aws.sdk.kotlin.services.ec2.model.GetCapacityManagerMonitoredTagKeysRequest
        1084  +
import aws.sdk.kotlin.services.ec2.model.GetCapacityManagerMonitoredTagKeysResponse
 1083   1085   
import aws.sdk.kotlin.services.ec2.model.GetCapacityReservationUsageRequest
 1084   1086   
import aws.sdk.kotlin.services.ec2.model.GetCapacityReservationUsageResponse
 1085   1087   
import aws.sdk.kotlin.services.ec2.model.GetCoipPoolUsageRequest
 1086   1088   
import aws.sdk.kotlin.services.ec2.model.GetCoipPoolUsageResponse
 1087   1089   
import aws.sdk.kotlin.services.ec2.model.GetConsoleOutputRequest
 1088   1090   
import aws.sdk.kotlin.services.ec2.model.GetConsoleOutputResponse
 1089   1091   
import aws.sdk.kotlin.services.ec2.model.GetConsoleScreenshotRequest
 1090   1092   
import aws.sdk.kotlin.services.ec2.model.GetConsoleScreenshotResponse
 1091   1093   
import aws.sdk.kotlin.services.ec2.model.GetDeclarativePoliciesReportSummaryRequest
 1092   1094   
import aws.sdk.kotlin.services.ec2.model.GetDeclarativePoliciesReportSummaryResponse
@@ -1493,1495 +1600,1604 @@
 1513   1515   
import aws.sdk.kotlin.services.ec2.model.UnassignIpv6AddressesRequest
 1514   1516   
import aws.sdk.kotlin.services.ec2.model.UnassignIpv6AddressesResponse
 1515   1517   
import aws.sdk.kotlin.services.ec2.model.UnassignPrivateIpAddressesRequest
 1516   1518   
import aws.sdk.kotlin.services.ec2.model.UnassignPrivateIpAddressesResponse
 1517   1519   
import aws.sdk.kotlin.services.ec2.model.UnassignPrivateNatGatewayAddressRequest
 1518   1520   
import aws.sdk.kotlin.services.ec2.model.UnassignPrivateNatGatewayAddressResponse
 1519   1521   
import aws.sdk.kotlin.services.ec2.model.UnlockSnapshotRequest
 1520   1522   
import aws.sdk.kotlin.services.ec2.model.UnlockSnapshotResponse
 1521   1523   
import aws.sdk.kotlin.services.ec2.model.UnmonitorInstancesRequest
 1522   1524   
import aws.sdk.kotlin.services.ec2.model.UnmonitorInstancesResponse
        1525  +
import aws.sdk.kotlin.services.ec2.model.UpdateCapacityManagerMonitoredTagKeysRequest
        1526  +
import aws.sdk.kotlin.services.ec2.model.UpdateCapacityManagerMonitoredTagKeysResponse
 1523   1527   
import aws.sdk.kotlin.services.ec2.model.UpdateCapacityManagerOrganizationsAccessRequest
 1524   1528   
import aws.sdk.kotlin.services.ec2.model.UpdateCapacityManagerOrganizationsAccessResponse
 1525   1529   
import aws.sdk.kotlin.services.ec2.model.UpdateInterruptibleCapacityReservationAllocationRequest
 1526   1530   
import aws.sdk.kotlin.services.ec2.model.UpdateInterruptibleCapacityReservationAllocationResponse
 1527   1531   
import aws.sdk.kotlin.services.ec2.model.UpdateSecurityGroupRuleDescriptionsEgressRequest
 1528   1532   
import aws.sdk.kotlin.services.ec2.model.UpdateSecurityGroupRuleDescriptionsEgressResponse
 1529   1533   
import aws.sdk.kotlin.services.ec2.model.UpdateSecurityGroupRuleDescriptionsIngressRequest
 1530   1534   
import aws.sdk.kotlin.services.ec2.model.UpdateSecurityGroupRuleDescriptionsIngressResponse
 1531   1535   
import aws.sdk.kotlin.services.ec2.model.WithdrawByoipCidrRequest
 1532   1536   
import aws.sdk.kotlin.services.ec2.model.WithdrawByoipCidrResponse
 1533   1537   
import aws.smithy.kotlin.runtime.auth.AuthSchemeId
 1534   1538   
import aws.smithy.kotlin.runtime.auth.awscredentials.CredentialsProvider
 1535   1539   
import aws.smithy.kotlin.runtime.auth.awscredentials.CredentialsProviderConfig
 1536   1540   
import aws.smithy.kotlin.runtime.awsprotocol.ClockSkewInterceptor
 1537   1541   
import aws.smithy.kotlin.runtime.client.AbstractSdkClientBuilder
 1538   1542   
import aws.smithy.kotlin.runtime.client.AbstractSdkClientFactory
 1539   1543   
import aws.smithy.kotlin.runtime.client.IdempotencyTokenConfig
 1540   1544   
import aws.smithy.kotlin.runtime.client.IdempotencyTokenProvider
 1541   1545   
import aws.smithy.kotlin.runtime.client.LogMode
 1542   1546   
import aws.smithy.kotlin.runtime.client.RetryClientConfig
 1543   1547   
import aws.smithy.kotlin.runtime.client.RetryStrategyClientConfig
 1544   1548   
import aws.smithy.kotlin.runtime.client.RetryStrategyClientConfigImpl
 1545   1549   
import aws.smithy.kotlin.runtime.client.SdkClient
 1546   1550   
import aws.smithy.kotlin.runtime.client.SdkClientConfig
 1547   1551   
import aws.smithy.kotlin.runtime.client.region.RegionProvider
 1548   1552   
import aws.smithy.kotlin.runtime.http.auth.AuthScheme
 1549   1553   
import aws.smithy.kotlin.runtime.http.auth.HttpAuthConfig
 1550   1554   
import aws.smithy.kotlin.runtime.http.config.HttpClientConfig
 1551   1555   
import aws.smithy.kotlin.runtime.http.config.HttpEngineConfig
 1552   1556   
import aws.smithy.kotlin.runtime.http.config.TimeoutConfig
 1553   1557   
import aws.smithy.kotlin.runtime.http.engine.HttpClientEngine
 1554   1558   
import aws.smithy.kotlin.runtime.http.engine.HttpEngineConfigImpl
 1555   1559   
import aws.smithy.kotlin.runtime.http.interceptors.HttpInterceptor
 1556   1560   
import aws.smithy.kotlin.runtime.net.url.Url
 1557   1561   
import aws.smithy.kotlin.runtime.retries.RetryStrategy
 1558   1562   
import aws.smithy.kotlin.runtime.retries.policy.RetryPolicy
 1559   1563   
import aws.smithy.kotlin.runtime.telemetry.Global
 1560   1564   
import aws.smithy.kotlin.runtime.telemetry.TelemetryConfig
 1561   1565   
import aws.smithy.kotlin.runtime.telemetry.TelemetryProvider
 1562   1566   
import aws.smithy.kotlin.runtime.util.LazyAsyncValue
 1563   1567   
import kotlin.collections.List
 1564   1568   
import kotlin.jvm.JvmStatic
 1565   1569   
import kotlin.time.Duration
 1566   1570   
import kotlinx.coroutines.runBlocking
 1567   1571   
 1568   1572   
 1569   1573   
public const val ServiceId: String = "EC2"
 1570         -
public const val SdkVersion: String = "1.6.48-SNAPSHOT"
        1574  +
public const val SdkVersion: String = "1.6.60-SNAPSHOT"
 1571   1575   
public const val ServiceApiVersion: String = "2016-11-15"
 1572   1576   
 1573   1577   
/**
 1574   1578   
 * # Amazon Elastic Compute Cloud
 1575   1579   
 * You can access the features of Amazon Elastic Compute Cloud (Amazon EC2) programmatically. For more information, see the [Amazon EC2 Developer Guide](https://docs.aws.amazon.com/ec2/latest/devguide).
 1576   1580   
 */
 1577   1581   
public interface Ec2Client : SdkClient {
 1578   1582   
    /**
 1579   1583   
     * Ec2Client's configuration
 1580   1584   
     */
@@ -2163,2167 +2223,2227 @@
 2183   2187   
     * @sample aws.sdk.kotlin.services.ec2.samples.AuthorizeSecurityGroupIngress.sample2
 2184   2188   
     * @sample aws.sdk.kotlin.services.ec2.samples.AuthorizeSecurityGroupIngress.sample3
 2185   2189   
     */
 2186   2190   
    public suspend fun authorizeSecurityGroupIngress(input: AuthorizeSecurityGroupIngressRequest = AuthorizeSecurityGroupIngressRequest { }): AuthorizeSecurityGroupIngressResponse
 2187   2191   
 2188   2192   
    /**
 2189   2193   
     * Bundles an Amazon instance store-backed Windows instance.
 2190   2194   
     *
 2191   2195   
     * During bundling, only the root device volume (C:\) is bundled. Data on other instance store volumes is not preserved.
 2192   2196   
     *
 2193         -
     * This action is not applicable for Linux/Unix instances or Windows instances that are backed by Amazon EBS.
        2197  +
     * This action is no longer supported. To create an AMI, use [CreateImage](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateImage.html). For more information, see [ Create an Amazon EBS-backed AMI](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-an-ami-ebs.html) in the *Amazon EC2 User Guide*.
 2194   2198   
     */
 2195   2199   
    public suspend fun bundleInstance(input: BundleInstanceRequest): BundleInstanceResponse
 2196   2200   
 2197   2201   
    /**
 2198   2202   
     * Cancels a bundling operation for an instance store-backed Windows instance.
 2199   2203   
     */
 2200   2204   
    public suspend fun cancelBundleTask(input: CancelBundleTaskRequest): CancelBundleTaskResponse
 2201   2205   
 2202   2206   
    /**
 2203   2207   
     * Cancels the specified Capacity Reservation, releases the reserved capacity, and changes the Capacity Reservation's state to `cancelled`.
@@ -5805,5809 +5864,5873 @@
 5825   5829   
    /**
 5826   5830   
     * Retrieves capacity usage metrics for your EC2 resources. Returns time-series data for metrics like unused capacity, utilization rates, and costs across On-Demand, Spot, and Capacity Reservations. Data can be grouped and filtered by various dimensions such as region, account, and instance family.
 5827   5831   
     */
 5828   5832   
    public suspend fun getCapacityManagerMetricData(input: GetCapacityManagerMetricDataRequest): GetCapacityManagerMetricDataResponse
 5829   5833   
 5830   5834   
    /**
 5831   5835   
     * Retrieves the available dimension values for capacity metrics within a specified time range. This is useful for discovering what accounts, regions, instance families, and other dimensions have data available for filtering and grouping.
 5832   5836   
     */
 5833   5837   
    public suspend fun getCapacityManagerMetricDimensions(input: GetCapacityManagerMetricDimensionsRequest): GetCapacityManagerMetricDimensionsResponse
 5834   5838   
        5839  +
    /**
        5840  +
     * Retrieves the tag keys that are currently being monitored by EC2 Capacity Manager. Monitored tag keys are included as dimensions in capacity metric data, enabling you to group and filter metrics by tag values.
        5841  +
     */
        5842  +
    public suspend fun getCapacityManagerMonitoredTagKeys(input: GetCapacityManagerMonitoredTagKeysRequest = GetCapacityManagerMonitoredTagKeysRequest { }): GetCapacityManagerMonitoredTagKeysResponse
        5843  +
 5835   5844   
    /**
 5836   5845   
     * Gets usage information about a Capacity Reservation. If the Capacity Reservation is shared, it shows usage information for the Capacity Reservation owner and each Amazon Web Services account that is currently using the shared capacity. If the Capacity Reservation is not shared, it shows only the Capacity Reservation owner's usage.
 5837   5846   
     */
 5838   5847   
    public suspend fun getCapacityReservationUsage(input: GetCapacityReservationUsageRequest): GetCapacityReservationUsageResponse
 5839   5848   
 5840   5849   
    /**
 5841   5850   
     * Describes the allocations from the specified customer-owned address pool.
 5842   5851   
     */
 5843   5852   
    public suspend fun getCoipPoolUsage(input: GetCoipPoolUsageRequest): GetCoipPoolUsageResponse
 5844   5853   
@@ -7539,7548 +7598,7612 @@
 7559   7568   
    /**
 7560   7569   
     * Unlocks a snapshot that is locked in governance mode or that is locked in compliance mode but still in the cooling-off period. You can't unlock a snapshot that is locked in compliance mode after the cooling-off period has expired.
 7561   7570   
     */
 7562   7571   
    public suspend fun unlockSnapshot(input: UnlockSnapshotRequest): UnlockSnapshotResponse
 7563   7572   
 7564   7573   
    /**
 7565   7574   
     * Disables detailed monitoring for a running instance. For more information, see [Monitoring your instances and volumes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-cloudwatch.html) in the *Amazon EC2 User Guide*.
 7566   7575   
     */
 7567   7576   
    public suspend fun unmonitorInstances(input: UnmonitorInstancesRequest): UnmonitorInstancesResponse
 7568   7577   
        7578  +
    /**
        7579  +
     * Activates or deactivates tag keys for monitoring by EC2 Capacity Manager. Activated tag keys are included as dimensions in capacity metric data, enabling you to group and filter metrics by tag values.
        7580  +
     */
        7581  +
    public suspend fun updateCapacityManagerMonitoredTagKeys(input: UpdateCapacityManagerMonitoredTagKeysRequest = UpdateCapacityManagerMonitoredTagKeysRequest { }): UpdateCapacityManagerMonitoredTagKeysResponse
        7582  +
 7569   7583   
    /**
 7570   7584   
     * Updates the Organizations access setting for EC2 Capacity Manager. This controls whether Capacity Manager can aggregate data from all accounts in your Amazon Web Services Organization or only from the current account.
 7571   7585   
     */
 7572   7586   
    public suspend fun updateCapacityManagerOrganizationsAccess(input: UpdateCapacityManagerOrganizationsAccessRequest): UpdateCapacityManagerOrganizationsAccessResponse
 7573   7587   
 7574   7588   
    /**
 7575   7589   
     * Modifies the number of instances allocated to an interruptible reservation, allowing you to add more capacity or reclaim capacity to your source Capacity Reservation.
 7576   7590   
     */
 7577   7591   
    public suspend fun updateInterruptibleCapacityReservationAllocation(input: UpdateInterruptibleCapacityReservationAllocationRequest): UpdateInterruptibleCapacityReservationAllocationResponse
 7578   7592   
@@ -7964,7978 +8024,8038 @@
 7984   7998   
 * @sample aws.sdk.kotlin.services.ec2.samples.AuthorizeSecurityGroupIngress.sample2
 7985   7999   
 * @sample aws.sdk.kotlin.services.ec2.samples.AuthorizeSecurityGroupIngress.sample3
 7986   8000   
 */
 7987   8001   
public suspend inline fun Ec2Client.authorizeSecurityGroupIngress(crossinline block: AuthorizeSecurityGroupIngressRequest.Builder.() -> Unit): AuthorizeSecurityGroupIngressResponse = authorizeSecurityGroupIngress(AuthorizeSecurityGroupIngressRequest.Builder().apply(block).build())
 7988   8002   
 7989   8003   
/**
 7990   8004   
 * Bundles an Amazon instance store-backed Windows instance.
 7991   8005   
 *
 7992   8006   
 * During bundling, only the root device volume (C:\) is bundled. Data on other instance store volumes is not preserved.
 7993   8007   
 *
 7994         -
 * This action is not applicable for Linux/Unix instances or Windows instances that are backed by Amazon EBS.
        8008  +
 * This action is no longer supported. To create an AMI, use [CreateImage](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateImage.html). For more information, see [ Create an Amazon EBS-backed AMI](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-an-ami-ebs.html) in the *Amazon EC2 User Guide*.
 7995   8009   
 */
 7996   8010   
public suspend inline fun Ec2Client.bundleInstance(crossinline block: BundleInstanceRequest.Builder.() -> Unit): BundleInstanceResponse = bundleInstance(BundleInstanceRequest.Builder().apply(block).build())
 7997   8011   
 7998   8012   
/**
 7999   8013   
 * Cancels a bundling operation for an instance store-backed Windows instance.
 8000   8014   
 */
 8001   8015   
public suspend inline fun Ec2Client.cancelBundleTask(crossinline block: CancelBundleTaskRequest.Builder.() -> Unit): CancelBundleTaskResponse = cancelBundleTask(CancelBundleTaskRequest.Builder().apply(block).build())
 8002   8016   
 8003   8017   
/**
 8004   8018   
 * Cancels the specified Capacity Reservation, releases the reserved capacity, and changes the Capacity Reservation's state to `cancelled`.
@@ -11606,11620 +11665,11684 @@
11626  11640   
/**
11627  11641   
 * Retrieves capacity usage metrics for your EC2 resources. Returns time-series data for metrics like unused capacity, utilization rates, and costs across On-Demand, Spot, and Capacity Reservations. Data can be grouped and filtered by various dimensions such as region, account, and instance family.
11628  11642   
 */
11629  11643   
public suspend inline fun Ec2Client.getCapacityManagerMetricData(crossinline block: GetCapacityManagerMetricDataRequest.Builder.() -> Unit): GetCapacityManagerMetricDataResponse = getCapacityManagerMetricData(GetCapacityManagerMetricDataRequest.Builder().apply(block).build())
11630  11644   
11631  11645   
/**
11632  11646   
 * Retrieves the available dimension values for capacity metrics within a specified time range. This is useful for discovering what accounts, regions, instance families, and other dimensions have data available for filtering and grouping.
11633  11647   
 */
11634  11648   
public suspend inline fun Ec2Client.getCapacityManagerMetricDimensions(crossinline block: GetCapacityManagerMetricDimensionsRequest.Builder.() -> Unit): GetCapacityManagerMetricDimensionsResponse = getCapacityManagerMetricDimensions(GetCapacityManagerMetricDimensionsRequest.Builder().apply(block).build())
11635  11649   
       11650  +
/**
       11651  +
 * Retrieves the tag keys that are currently being monitored by EC2 Capacity Manager. Monitored tag keys are included as dimensions in capacity metric data, enabling you to group and filter metrics by tag values.
       11652  +
 */
       11653  +
public suspend inline fun Ec2Client.getCapacityManagerMonitoredTagKeys(crossinline block: GetCapacityManagerMonitoredTagKeysRequest.Builder.() -> Unit): GetCapacityManagerMonitoredTagKeysResponse = getCapacityManagerMonitoredTagKeys(GetCapacityManagerMonitoredTagKeysRequest.Builder().apply(block).build())
       11654  +
11636  11655   
/**
11637  11656   
 * Gets usage information about a Capacity Reservation. If the Capacity Reservation is shared, it shows usage information for the Capacity Reservation owner and each Amazon Web Services account that is currently using the shared capacity. If the Capacity Reservation is not shared, it shows only the Capacity Reservation owner's usage.
11638  11657   
 */
11639  11658   
public suspend inline fun Ec2Client.getCapacityReservationUsage(crossinline block: GetCapacityReservationUsageRequest.Builder.() -> Unit): GetCapacityReservationUsageResponse = getCapacityReservationUsage(GetCapacityReservationUsageRequest.Builder().apply(block).build())
11640  11659   
11641  11660   
/**
11642  11661   
 * Describes the allocations from the specified customer-owned address pool.
11643  11662   
 */
11644  11663   
public suspend inline fun Ec2Client.getCoipPoolUsage(crossinline block: GetCoipPoolUsageRequest.Builder.() -> Unit): GetCoipPoolUsageResponse = getCoipPoolUsage(GetCoipPoolUsageRequest.Builder().apply(block).build())
11645  11664   
@@ -13340,13359 +13399,13423 @@
13360  13379   
/**
13361  13380   
 * Unlocks a snapshot that is locked in governance mode or that is locked in compliance mode but still in the cooling-off period. You can't unlock a snapshot that is locked in compliance mode after the cooling-off period has expired.
13362  13381   
 */
13363  13382   
public suspend inline fun Ec2Client.unlockSnapshot(crossinline block: UnlockSnapshotRequest.Builder.() -> Unit): UnlockSnapshotResponse = unlockSnapshot(UnlockSnapshotRequest.Builder().apply(block).build())
13364  13383   
13365  13384   
/**
13366  13385   
 * Disables detailed monitoring for a running instance. For more information, see [Monitoring your instances and volumes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-cloudwatch.html) in the *Amazon EC2 User Guide*.
13367  13386   
 */
13368  13387   
public suspend inline fun Ec2Client.unmonitorInstances(crossinline block: UnmonitorInstancesRequest.Builder.() -> Unit): UnmonitorInstancesResponse = unmonitorInstances(UnmonitorInstancesRequest.Builder().apply(block).build())
13369  13388   
       13389  +
/**
       13390  +
 * Activates or deactivates tag keys for monitoring by EC2 Capacity Manager. Activated tag keys are included as dimensions in capacity metric data, enabling you to group and filter metrics by tag values.
       13391  +
 */
       13392  +
public suspend inline fun Ec2Client.updateCapacityManagerMonitoredTagKeys(crossinline block: UpdateCapacityManagerMonitoredTagKeysRequest.Builder.() -> Unit): UpdateCapacityManagerMonitoredTagKeysResponse = updateCapacityManagerMonitoredTagKeys(UpdateCapacityManagerMonitoredTagKeysRequest.Builder().apply(block).build())
       13393  +
13370  13394   
/**
13371  13395   
 * Updates the Organizations access setting for EC2 Capacity Manager. This controls whether Capacity Manager can aggregate data from all accounts in your Amazon Web Services Organization or only from the current account.
13372  13396   
 */
13373  13397   
public suspend inline fun Ec2Client.updateCapacityManagerOrganizationsAccess(crossinline block: UpdateCapacityManagerOrganizationsAccessRequest.Builder.() -> Unit): UpdateCapacityManagerOrganizationsAccessResponse = updateCapacityManagerOrganizationsAccess(UpdateCapacityManagerOrganizationsAccessRequest.Builder().apply(block).build())
13374  13398   
13375  13399   
/**
13376  13400   
 * Modifies the number of instances allocated to an interruptible reservation, allowing you to add more capacity or reclaim capacity to your source Capacity Reservation.
13377  13401   
 */
13378  13402   
public suspend inline fun Ec2Client.updateInterruptibleCapacityReservationAllocation(crossinline block: UpdateInterruptibleCapacityReservationAllocationRequest.Builder.() -> Unit): UpdateInterruptibleCapacityReservationAllocationResponse = updateInterruptibleCapacityReservationAllocation(UpdateInterruptibleCapacityReservationAllocationRequest.Builder().apply(block).build())
13379  13403   

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

@@ -1,1 +259,283 @@
    7      7   
    8      8   
    9      9   
/**
   10     10   
 * Represents dimension values for capacity metrics, including resource identifiers, geographic information, and reservation details used for grouping and filtering capacity data.
   11     11   
 */
   12     12   
public class CapacityManagerDimension private constructor(builder: Builder) {
   13     13   
    /**
   14     14   
     * The Amazon Web Services account ID that owns the capacity resource.
   15     15   
     */
   16     16   
    public val accountId: kotlin.String? = builder.accountId
          17  +
    /**
          18  +
     * The name of the Amazon Web Services account that owns the capacity resource. This dimension is only available when Organizations access is enabled for Capacity Manager.
          19  +
     */
          20  +
    public val accountName: kotlin.String? = builder.accountName
   17     21   
    /**
   18     22   
     * The unique identifier of the Availability Zone where the capacity resource is located.
   19     23   
     */
   20     24   
    public val availabilityZoneId: kotlin.String? = builder.availabilityZoneId
   21     25   
    /**
   22     26   
     * The EC2 instance family of the capacity resource.
   23     27   
     */
   24     28   
    public val instanceFamily: kotlin.String? = builder.instanceFamily
   25     29   
    /**
   26     30   
     * The platform or operating system of the instance.
   27     31   
     */
   28     32   
    public val instancePlatform: kotlin.String? = builder.instancePlatform
   29     33   
    /**
   30     34   
     * The specific EC2 instance type of the capacity resource.
   31     35   
     */
   32     36   
    public val instanceType: kotlin.String? = builder.instanceType
   33     37   
    /**
   34     38   
     * The Amazon Resource Name (ARN) of the capacity reservation. This provides a unique identifier that can be used across Amazon Web Services services to reference the specific reservation.
   35     39   
     */
   36     40   
    public val reservationArn: kotlin.String? = builder.reservationArn
   37     41   
    /**
   38     42   
     * The timestamp when the capacity reservation was originally created, in milliseconds since epoch. This differs from the start timestamp as reservations can be created before they become active.
   39     43   
     */
   40     44   
    public val reservationCreateTimestamp: aws.smithy.kotlin.runtime.time.Instant? = builder.reservationCreateTimestamp
   41     45   
    /**
   42     46   
     * The type of end date for the capacity reservation. This indicates whether the reservation has a fixed end date, is open-ended, or follows a specific termination pattern.
   43     47   
     */
   44     48   
    public val reservationEndDateType: aws.sdk.kotlin.services.ec2.model.ReservationEndDateType? = builder.reservationEndDateType
   45     49   
    /**
   46     50   
     * The timestamp when the capacity reservation expires and is no longer available, in milliseconds since epoch. After this time, the reservation will not provide any capacity.
   47     51   
     */
   48     52   
    public val reservationEndTimestamp: aws.smithy.kotlin.runtime.time.Instant? = builder.reservationEndTimestamp
   49     53   
    /**
   50     54   
     * The unique identifier of the capacity reservation.
   51     55   
     */
   52     56   
    public val reservationId: kotlin.String? = builder.reservationId
   53     57   
    /**
   54     58   
     * The instance matching criteria for the capacity reservation, determining how instances are matched to the reservation.
   55     59   
     */
   56     60   
    public val reservationInstanceMatchCriteria: kotlin.String? = builder.reservationInstanceMatchCriteria
   57     61   
    /**
   58     62   
     * The timestamp when the capacity reservation becomes active and available for use, in milliseconds since epoch. This is when the reservation begins providing capacity.
   59     63   
     */
   60     64   
    public val reservationStartTimestamp: aws.smithy.kotlin.runtime.time.Instant? = builder.reservationStartTimestamp
   61     65   
    /**
   62     66   
     * The current state of the capacity reservation.
   63     67   
     */
   64     68   
    public val reservationState: aws.sdk.kotlin.services.ec2.model.ReservationState? = builder.reservationState
   65     69   
    /**
   66     70   
     * The type of capacity reservation.
   67     71   
     */
   68     72   
    public val reservationType: aws.sdk.kotlin.services.ec2.model.ReservationType? = builder.reservationType
   69     73   
    /**
   70     74   
     * The Amazon Web Services account ID that is financially responsible for unused capacity reservation costs.
   71     75   
     */
   72     76   
    public val reservationUnusedFinancialOwner: kotlin.String? = builder.reservationUnusedFinancialOwner
   73     77   
    /**
   74     78   
     * The Amazon Web Services Region where the capacity resource is located.
   75     79   
     */
   76     80   
    public val resourceRegion: kotlin.String? = builder.resourceRegion
          81  +
    /**
          82  +
     * The tags associated with the capacity resource, represented as key-value pairs. Only tags that have been activated for monitoring via `UpdateCapacityManagerMonitoredTagKeys` are included.
          83  +
     */
          84  +
    public val tags: List<CapacityManagerTagDimension>? = builder.tags
   77     85   
    /**
   78     86   
     * The tenancy of the EC2 instances associated with this capacity dimension. Valid values are 'default' for shared tenancy, 'dedicated' for dedicated instances, or 'host' for dedicated hosts.
   79     87   
     */
   80     88   
    public val tenancy: aws.sdk.kotlin.services.ec2.model.CapacityTenancy? = builder.tenancy
   81     89   
   82     90   
    public companion object {
   83     91   
        public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.ec2.model.CapacityManagerDimension = Builder().apply(block).build()
   84     92   
    }
   85     93   
   86     94   
    override fun toString(): kotlin.String = buildString {
   87     95   
        append("CapacityManagerDimension(")
   88     96   
        append("accountId=$accountId,")
          97  +
        append("accountName=$accountName,")
   89     98   
        append("availabilityZoneId=$availabilityZoneId,")
   90     99   
        append("instanceFamily=$instanceFamily,")
   91    100   
        append("instancePlatform=$instancePlatform,")
   92    101   
        append("instanceType=$instanceType,")
   93    102   
        append("reservationArn=$reservationArn,")
   94    103   
        append("reservationCreateTimestamp=$reservationCreateTimestamp,")
   95    104   
        append("reservationEndDateType=$reservationEndDateType,")
   96    105   
        append("reservationEndTimestamp=$reservationEndTimestamp,")
   97    106   
        append("reservationId=$reservationId,")
   98    107   
        append("reservationInstanceMatchCriteria=$reservationInstanceMatchCriteria,")
   99    108   
        append("reservationStartTimestamp=$reservationStartTimestamp,")
  100    109   
        append("reservationState=$reservationState,")
  101    110   
        append("reservationType=$reservationType,")
  102    111   
        append("reservationUnusedFinancialOwner=$reservationUnusedFinancialOwner,")
  103    112   
        append("resourceRegion=$resourceRegion,")
         113  +
        append("tags=$tags,")
  104    114   
        append("tenancy=$tenancy")
  105    115   
        append(")")
  106    116   
    }
  107    117   
  108    118   
    override fun hashCode(): kotlin.Int {
  109    119   
        var result = accountId?.hashCode() ?: 0
         120  +
        result = 31 * result + (this.accountName?.hashCode() ?: 0)
  110    121   
        result = 31 * result + (this.availabilityZoneId?.hashCode() ?: 0)
  111    122   
        result = 31 * result + (this.instanceFamily?.hashCode() ?: 0)
  112    123   
        result = 31 * result + (this.instancePlatform?.hashCode() ?: 0)
  113    124   
        result = 31 * result + (this.instanceType?.hashCode() ?: 0)
  114    125   
        result = 31 * result + (this.reservationArn?.hashCode() ?: 0)
  115    126   
        result = 31 * result + (this.reservationCreateTimestamp?.hashCode() ?: 0)
  116    127   
        result = 31 * result + (this.reservationEndDateType?.hashCode() ?: 0)
  117    128   
        result = 31 * result + (this.reservationEndTimestamp?.hashCode() ?: 0)
  118    129   
        result = 31 * result + (this.reservationId?.hashCode() ?: 0)
  119    130   
        result = 31 * result + (this.reservationInstanceMatchCriteria?.hashCode() ?: 0)
  120    131   
        result = 31 * result + (this.reservationStartTimestamp?.hashCode() ?: 0)
  121    132   
        result = 31 * result + (this.reservationState?.hashCode() ?: 0)
  122    133   
        result = 31 * result + (this.reservationType?.hashCode() ?: 0)
  123    134   
        result = 31 * result + (this.reservationUnusedFinancialOwner?.hashCode() ?: 0)
  124    135   
        result = 31 * result + (this.resourceRegion?.hashCode() ?: 0)
         136  +
        result = 31 * result + (this.tags?.hashCode() ?: 0)
  125    137   
        result = 31 * result + (this.tenancy?.hashCode() ?: 0)
  126    138   
        return result
  127    139   
    }
  128    140   
  129    141   
    override fun equals(other: kotlin.Any?): kotlin.Boolean {
  130    142   
        if (this === other) return true
  131    143   
        if (other == null || this::class != other::class) return false
  132    144   
  133    145   
        other as CapacityManagerDimension
  134    146   
  135    147   
        if (accountId != other.accountId) return false
         148  +
        if (accountName != other.accountName) return false
  136    149   
        if (availabilityZoneId != other.availabilityZoneId) return false
  137    150   
        if (instanceFamily != other.instanceFamily) return false
  138    151   
        if (instancePlatform != other.instancePlatform) return false
  139    152   
        if (instanceType != other.instanceType) return false
  140    153   
        if (reservationArn != other.reservationArn) return false
  141    154   
        if (reservationCreateTimestamp != other.reservationCreateTimestamp) return false
  142    155   
        if (reservationEndDateType != other.reservationEndDateType) return false
  143    156   
        if (reservationEndTimestamp != other.reservationEndTimestamp) return false
  144    157   
        if (reservationId != other.reservationId) return false
  145    158   
        if (reservationInstanceMatchCriteria != other.reservationInstanceMatchCriteria) return false
  146    159   
        if (reservationStartTimestamp != other.reservationStartTimestamp) return false
  147    160   
        if (reservationState != other.reservationState) return false
  148    161   
        if (reservationType != other.reservationType) return false
  149    162   
        if (reservationUnusedFinancialOwner != other.reservationUnusedFinancialOwner) return false
  150    163   
        if (resourceRegion != other.resourceRegion) return false
         164  +
        if (tags != other.tags) return false
  151    165   
        if (tenancy != other.tenancy) return false
  152    166   
  153    167   
        return true
  154    168   
    }
  155    169   
  156    170   
    public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.ec2.model.CapacityManagerDimension = Builder(this).apply(block).build()
  157    171   
  158    172   
    @SdkDsl
  159    173   
    public class Builder {
  160    174   
        /**
  161    175   
         * The Amazon Web Services account ID that owns the capacity resource.
  162    176   
         */
  163    177   
        public var accountId: kotlin.String? = null
         178  +
        /**
         179  +
         * The name of the Amazon Web Services account that owns the capacity resource. This dimension is only available when Organizations access is enabled for Capacity Manager.
         180  +
         */
         181  +
        public var accountName: kotlin.String? = null
  164    182   
        /**
  165    183   
         * The unique identifier of the Availability Zone where the capacity resource is located.
  166    184   
         */
  167    185   
        public var availabilityZoneId: kotlin.String? = null
  168    186   
        /**
  169    187   
         * The EC2 instance family of the capacity resource.
  170    188   
         */
  171    189   
        public var instanceFamily: kotlin.String? = null
  172    190   
        /**
  173    191   
         * The platform or operating system of the instance.
  174    192   
         */
  175    193   
        public var instancePlatform: kotlin.String? = null
  176    194   
        /**
  177    195   
         * The specific EC2 instance type of the capacity resource.
  178    196   
         */
  179    197   
        public var instanceType: kotlin.String? = null
  180    198   
        /**
  181    199   
         * The Amazon Resource Name (ARN) of the capacity reservation. This provides a unique identifier that can be used across Amazon Web Services services to reference the specific reservation.
  182    200   
         */
  183    201   
        public var reservationArn: kotlin.String? = null
  184    202   
        /**
  185    203   
         * The timestamp when the capacity reservation was originally created, in milliseconds since epoch. This differs from the start timestamp as reservations can be created before they become active.
  186    204   
         */
  187    205   
        public var reservationCreateTimestamp: aws.smithy.kotlin.runtime.time.Instant? = null
  188    206   
        /**
  189    207   
         * The type of end date for the capacity reservation. This indicates whether the reservation has a fixed end date, is open-ended, or follows a specific termination pattern.
  190    208   
         */
  191    209   
        public var reservationEndDateType: aws.sdk.kotlin.services.ec2.model.ReservationEndDateType? = null
  192    210   
        /**
  193    211   
         * The timestamp when the capacity reservation expires and is no longer available, in milliseconds since epoch. After this time, the reservation will not provide any capacity.
  194    212   
         */
  195    213   
        public var reservationEndTimestamp: aws.smithy.kotlin.runtime.time.Instant? = null
  196    214   
        /**
  197    215   
         * The unique identifier of the capacity reservation.
  198    216   
         */
  199    217   
        public var reservationId: kotlin.String? = null
  200    218   
        /**
  201    219   
         * The instance matching criteria for the capacity reservation, determining how instances are matched to the reservation.
  202    220   
         */
  203    221   
        public var reservationInstanceMatchCriteria: kotlin.String? = null
  204    222   
        /**
  205    223   
         * The timestamp when the capacity reservation becomes active and available for use, in milliseconds since epoch. This is when the reservation begins providing capacity.
  206    224   
         */
  207    225   
        public var reservationStartTimestamp: aws.smithy.kotlin.runtime.time.Instant? = null
  208    226   
        /**
  209    227   
         * The current state of the capacity reservation.
  210    228   
         */
  211    229   
        public var reservationState: aws.sdk.kotlin.services.ec2.model.ReservationState? = null
  212    230   
        /**
  213    231   
         * The type of capacity reservation.
  214    232   
         */
  215    233   
        public var reservationType: aws.sdk.kotlin.services.ec2.model.ReservationType? = null
  216    234   
        /**
  217    235   
         * The Amazon Web Services account ID that is financially responsible for unused capacity reservation costs.
  218    236   
         */
  219    237   
        public var reservationUnusedFinancialOwner: kotlin.String? = null
  220    238   
        /**
  221    239   
         * The Amazon Web Services Region where the capacity resource is located.
  222    240   
         */
  223    241   
        public var resourceRegion: kotlin.String? = null
         242  +
        /**
         243  +
         * The tags associated with the capacity resource, represented as key-value pairs. Only tags that have been activated for monitoring via `UpdateCapacityManagerMonitoredTagKeys` are included.
         244  +
         */
         245  +
        public var tags: List<CapacityManagerTagDimension>? = null
  224    246   
        /**
  225    247   
         * The tenancy of the EC2 instances associated with this capacity dimension. Valid values are 'default' for shared tenancy, 'dedicated' for dedicated instances, or 'host' for dedicated hosts.
  226    248   
         */
  227    249   
        public var tenancy: aws.sdk.kotlin.services.ec2.model.CapacityTenancy? = null
  228    250   
  229    251   
        @PublishedApi
  230    252   
        internal constructor()
  231    253   
        @PublishedApi
  232    254   
        internal constructor(x: aws.sdk.kotlin.services.ec2.model.CapacityManagerDimension) : this() {
  233    255   
            this.accountId = x.accountId
         256  +
            this.accountName = x.accountName
  234    257   
            this.availabilityZoneId = x.availabilityZoneId
  235    258   
            this.instanceFamily = x.instanceFamily
  236    259   
            this.instancePlatform = x.instancePlatform
  237    260   
            this.instanceType = x.instanceType
  238    261   
            this.reservationArn = x.reservationArn
  239    262   
            this.reservationCreateTimestamp = x.reservationCreateTimestamp
  240    263   
            this.reservationEndDateType = x.reservationEndDateType
  241    264   
            this.reservationEndTimestamp = x.reservationEndTimestamp
  242    265   
            this.reservationId = x.reservationId
  243    266   
            this.reservationInstanceMatchCriteria = x.reservationInstanceMatchCriteria
  244    267   
            this.reservationStartTimestamp = x.reservationStartTimestamp
  245    268   
            this.reservationState = x.reservationState
  246    269   
            this.reservationType = x.reservationType
  247    270   
            this.reservationUnusedFinancialOwner = x.reservationUnusedFinancialOwner
  248    271   
            this.resourceRegion = x.resourceRegion
         272  +
            this.tags = x.tags
  249    273   
            this.tenancy = x.tenancy
  250    274   
        }
  251    275   
  252    276   
        @PublishedApi
  253    277   
        internal fun build(): aws.sdk.kotlin.services.ec2.model.CapacityManagerDimension = CapacityManagerDimension(this)
  254    278   
  255    279   
        internal fun correctErrors(): Builder {
  256    280   
            return this
  257    281   
        }
  258    282   
    }

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

@@ -1,1 +44,49 @@
    5      5   
import kotlin.collections.List
    6      6   
    7      7   
public sealed class FilterByDimension {
    8      8   
    public abstract val value: kotlin.String
    9      9   
   10     10   
    public object AccountId : aws.sdk.kotlin.services.ec2.model.FilterByDimension() {
   11     11   
        override val value: kotlin.String = "account-id"
   12     12   
        override fun toString(): kotlin.String = "AccountId"
   13     13   
    }
   14     14   
          15  +
    public object AccountName : aws.sdk.kotlin.services.ec2.model.FilterByDimension() {
          16  +
        override val value: kotlin.String = "account-name"
          17  +
        override fun toString(): kotlin.String = "AccountName"
          18  +
    }
          19  +
   15     20   
    public object AvailabilityZoneId : aws.sdk.kotlin.services.ec2.model.FilterByDimension() {
   16     21   
        override val value: kotlin.String = "availability-zone-id"
   17     22   
        override fun toString(): kotlin.String = "AvailabilityZoneId"
   18     23   
    }
   19     24   
   20     25   
    public object InstanceFamily : aws.sdk.kotlin.services.ec2.model.FilterByDimension() {
   21     26   
        override val value: kotlin.String = "instance-family"
   22     27   
        override fun toString(): kotlin.String = "InstanceFamily"
   23     28   
    }
   24     29   
@@ -75,80 +149,156 @@
   95    100   
    public data class SdkUnknown(override val value: kotlin.String) : aws.sdk.kotlin.services.ec2.model.FilterByDimension() {
   96    101   
        override fun toString(): kotlin.String = "SdkUnknown($value)"
   97    102   
    }
   98    103   
   99    104   
    public companion object {
  100    105   
        /**
  101    106   
         * Convert a raw value to one of the sealed variants or [SdkUnknown]
  102    107   
         */
  103    108   
        public fun fromValue(value: kotlin.String): aws.sdk.kotlin.services.ec2.model.FilterByDimension = when (value) {
  104    109   
            "account-id" -> AccountId
         110  +
            "account-name" -> AccountName
  105    111   
            "availability-zone-id" -> AvailabilityZoneId
  106    112   
            "instance-family" -> InstanceFamily
  107    113   
            "instance-platform" -> InstancePlatform
  108    114   
            "instance-type" -> InstanceType
  109    115   
            "reservation-arn" -> ReservationArn
  110    116   
            "reservation-create-timestamp" -> ReservationCreateTimestamp
  111    117   
            "reservation-end-date-type" -> ReservationEndDateType
  112    118   
            "reservation-end-timestamp" -> ReservationEndTimestamp
  113    119   
            "reservation-id" -> ReservationId
  114    120   
            "reservation-instance-match-criteria" -> ReservationInstanceMatchCriteria
  115    121   
            "reservation-start-timestamp" -> ReservationStartTimestamp
  116    122   
            "reservation-state" -> ReservationState
  117    123   
            "reservation-type" -> ReservationType
  118    124   
            "reservation-unused-financial-owner" -> ReservationUnusedFinancialOwner
  119    125   
            "resource-region" -> ResourceRegion
  120    126   
            "tenancy" -> Tenancy
  121    127   
            else -> SdkUnknown(value)
  122    128   
        }
  123    129   
  124    130   
        /**
  125    131   
         * Get a list of all possible variants
  126    132   
         */
  127    133   
        public fun values(): kotlin.collections.List<aws.sdk.kotlin.services.ec2.model.FilterByDimension> = values
  128    134   
  129    135   
        private val values: kotlin.collections.List<aws.sdk.kotlin.services.ec2.model.FilterByDimension> = listOf(
  130    136   
            AccountId,
         137  +
            AccountName,
  131    138   
            AvailabilityZoneId,
  132    139   
            InstanceFamily,
  133    140   
            InstancePlatform,
  134    141   
            InstanceType,
  135    142   
            ReservationArn,
  136    143   
            ReservationCreateTimestamp,
  137    144   
            ReservationEndDateType,
  138    145   
            ReservationEndTimestamp,
  139    146   
            ReservationId,
  140    147   
            ReservationInstanceMatchCriteria,

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

@@ -1,1 +44,49 @@
    5      5   
import kotlin.collections.List
    6      6   
    7      7   
public sealed class GroupBy {
    8      8   
    public abstract val value: kotlin.String
    9      9   
   10     10   
    public object AccountId : aws.sdk.kotlin.services.ec2.model.GroupBy() {
   11     11   
        override val value: kotlin.String = "account-id"
   12     12   
        override fun toString(): kotlin.String = "AccountId"
   13     13   
    }
   14     14   
          15  +
    public object AccountName : aws.sdk.kotlin.services.ec2.model.GroupBy() {
          16  +
        override val value: kotlin.String = "account-name"
          17  +
        override fun toString(): kotlin.String = "AccountName"
          18  +
    }
          19  +
   15     20   
    public object AvailabilityZoneId : aws.sdk.kotlin.services.ec2.model.GroupBy() {
   16     21   
        override val value: kotlin.String = "availability-zone-id"
   17     22   
        override fun toString(): kotlin.String = "AvailabilityZoneId"
   18     23   
    }
   19     24   
   20     25   
    public object InstanceFamily : aws.sdk.kotlin.services.ec2.model.GroupBy() {
   21     26   
        override val value: kotlin.String = "instance-family"
   22     27   
        override fun toString(): kotlin.String = "InstanceFamily"
   23     28   
    }
   24     29   
@@ -75,80 +149,156 @@
   95    100   
    public data class SdkUnknown(override val value: kotlin.String) : aws.sdk.kotlin.services.ec2.model.GroupBy() {
   96    101   
        override fun toString(): kotlin.String = "SdkUnknown($value)"
   97    102   
    }
   98    103   
   99    104   
    public companion object {
  100    105   
        /**
  101    106   
         * Convert a raw value to one of the sealed variants or [SdkUnknown]
  102    107   
         */
  103    108   
        public fun fromValue(value: kotlin.String): aws.sdk.kotlin.services.ec2.model.GroupBy = when (value) {
  104    109   
            "account-id" -> AccountId
         110  +
            "account-name" -> AccountName
  105    111   
            "availability-zone-id" -> AvailabilityZoneId
  106    112   
            "instance-family" -> InstanceFamily
  107    113   
            "instance-platform" -> InstancePlatform
  108    114   
            "instance-type" -> InstanceType
  109    115   
            "reservation-arn" -> ReservationArn
  110    116   
            "reservation-create-timestamp" -> ReservationCreateTimestamp
  111    117   
            "reservation-end-date-type" -> ReservationEndDateType
  112    118   
            "reservation-end-timestamp" -> ReservationEndTimestamp
  113    119   
            "reservation-id" -> ReservationId
  114    120   
            "reservation-instance-match-criteria" -> ReservationInstanceMatchCriteria
  115    121   
            "reservation-start-timestamp" -> ReservationStartTimestamp
  116    122   
            "reservation-state" -> ReservationState
  117    123   
            "reservation-type" -> ReservationType
  118    124   
            "reservation-unused-financial-owner" -> ReservationUnusedFinancialOwner
  119    125   
            "resource-region" -> ResourceRegion
  120    126   
            "tenancy" -> Tenancy
  121    127   
            else -> SdkUnknown(value)
  122    128   
        }
  123    129   
  124    130   
        /**
  125    131   
         * Get a list of all possible variants
  126    132   
         */
  127    133   
        public fun values(): kotlin.collections.List<aws.sdk.kotlin.services.ec2.model.GroupBy> = values
  128    134   
  129    135   
        private val values: kotlin.collections.List<aws.sdk.kotlin.services.ec2.model.GroupBy> = listOf(
  130    136   
            AccountId,
         137  +
            AccountName,
  131    138   
            AvailabilityZoneId,
  132    139   
            InstanceFamily,
  133    140   
            InstancePlatform,
  134    141   
            InstanceType,
  135    142   
            ReservationArn,
  136    143   
            ReservationCreateTimestamp,
  137    144   
            ReservationEndDateType,
  138    145   
            ReservationEndTimestamp,
  139    146   
            ReservationId,
  140    147   
            ReservationInstanceMatchCriteria,

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

@@ -1,1 +48,49 @@
    9      9   
import aws.sdk.kotlin.services.ec2.model.AllowedPrincipal
   10     10   
import aws.sdk.kotlin.services.ec2.model.AuthorizationRule
   11     11   
import aws.sdk.kotlin.services.ec2.model.ByoipCidr
   12     12   
import aws.sdk.kotlin.services.ec2.model.CapacityBlock
   13     13   
import aws.sdk.kotlin.services.ec2.model.CapacityBlockExtension
   14     14   
import aws.sdk.kotlin.services.ec2.model.CapacityBlockExtensionOffering
   15     15   
import aws.sdk.kotlin.services.ec2.model.CapacityBlockOffering
   16     16   
import aws.sdk.kotlin.services.ec2.model.CapacityBlockStatus
   17     17   
import aws.sdk.kotlin.services.ec2.model.CapacityManagerDataExportResponse
   18     18   
import aws.sdk.kotlin.services.ec2.model.CapacityManagerDimension
          19  +
import aws.sdk.kotlin.services.ec2.model.CapacityManagerMonitoredTagKey
   19     20   
import aws.sdk.kotlin.services.ec2.model.CapacityReservation
   20     21   
import aws.sdk.kotlin.services.ec2.model.CapacityReservationBillingRequest
   21     22   
import aws.sdk.kotlin.services.ec2.model.CapacityReservationFleet
   22     23   
import aws.sdk.kotlin.services.ec2.model.CapacityReservationGroup
   23     24   
import aws.sdk.kotlin.services.ec2.model.CarrierGateway
   24     25   
import aws.sdk.kotlin.services.ec2.model.ClassicLinkDnsSupport
   25     26   
import aws.sdk.kotlin.services.ec2.model.ClassicLinkInstance
   26     27   
import aws.sdk.kotlin.services.ec2.model.ClientVpnConnection
   27     28   
import aws.sdk.kotlin.services.ec2.model.ClientVpnEndpoint
   28     29   
import aws.sdk.kotlin.services.ec2.model.ClientVpnRoute
@@ -289,290 +348,351 @@
  309    310   
import aws.sdk.kotlin.services.ec2.model.FlowLog
  310    311   
import aws.sdk.kotlin.services.ec2.model.FpgaImage
  311    312   
import aws.sdk.kotlin.services.ec2.model.GetAssociatedIpv6PoolCidrsRequest
  312    313   
import aws.sdk.kotlin.services.ec2.model.GetAssociatedIpv6PoolCidrsResponse
  313    314   
import aws.sdk.kotlin.services.ec2.model.GetAwsNetworkPerformanceDataRequest
  314    315   
import aws.sdk.kotlin.services.ec2.model.GetAwsNetworkPerformanceDataResponse
  315    316   
import aws.sdk.kotlin.services.ec2.model.GetCapacityManagerMetricDataRequest
  316    317   
import aws.sdk.kotlin.services.ec2.model.GetCapacityManagerMetricDataResponse
  317    318   
import aws.sdk.kotlin.services.ec2.model.GetCapacityManagerMetricDimensionsRequest
  318    319   
import aws.sdk.kotlin.services.ec2.model.GetCapacityManagerMetricDimensionsResponse
         320  +
import aws.sdk.kotlin.services.ec2.model.GetCapacityManagerMonitoredTagKeysRequest
         321  +
import aws.sdk.kotlin.services.ec2.model.GetCapacityManagerMonitoredTagKeysResponse
  319    322   
import aws.sdk.kotlin.services.ec2.model.GetGroupsForCapacityReservationRequest
  320    323   
import aws.sdk.kotlin.services.ec2.model.GetGroupsForCapacityReservationResponse
  321    324   
import aws.sdk.kotlin.services.ec2.model.GetInstanceTypesFromInstanceRequirementsRequest
  322    325   
import aws.sdk.kotlin.services.ec2.model.GetInstanceTypesFromInstanceRequirementsResponse
  323    326   
import aws.sdk.kotlin.services.ec2.model.GetIpamAddressHistoryRequest
  324    327   
import aws.sdk.kotlin.services.ec2.model.GetIpamAddressHistoryResponse
  325    328   
import aws.sdk.kotlin.services.ec2.model.GetIpamDiscoveredAccountsRequest
  326    329   
import aws.sdk.kotlin.services.ec2.model.GetIpamDiscoveredAccountsResponse
  327    330   
import aws.sdk.kotlin.services.ec2.model.GetIpamDiscoveredResourceCidrsRequest
  328    331   
import aws.sdk.kotlin.services.ec2.model.GetIpamDiscoveredResourceCidrsResponse
@@ -7989,7992 +8048,8105 @@
 8009   8012   
 * @return A [kotlinx.coroutines.flow.Flow] that can collect [CapacityManagerDimension]
 8010   8013   
 */
 8011   8014   
@JvmName("getCapacityManagerMetricDimensionsResponseCapacityManagerDimension")
 8012   8015   
public fun Flow<GetCapacityManagerMetricDimensionsResponse>.metricDimensionResults(): Flow<CapacityManagerDimension> =
 8013   8016   
    transform() { response ->
 8014   8017   
        response.metricDimensionResults?.forEach {
 8015   8018   
            emit(it)
 8016   8019   
        }
 8017   8020   
    }
 8018   8021   
        8022  +
/**
        8023  +
 * Paginate over [GetCapacityManagerMonitoredTagKeysResponse] results.
        8024  +
 *
        8025  +
 * When this operation is called, a [kotlinx.coroutines.Flow] is created. Flows are lazy (cold) so no service
        8026  +
 * calls are made until the flow is collected. This also means there is no guarantee that the request is valid
        8027  +
 * until then. Once you start collecting the flow, the SDK will lazily load response pages by making service
        8028  +
 * calls until there are no pages left or the flow is cancelled. If there are errors in your request, you will
        8029  +
 * see the failures only after you start collection.
        8030  +
 * @param initialRequest A [GetCapacityManagerMonitoredTagKeysRequest] to start pagination
        8031  +
 * @return A [kotlinx.coroutines.flow.Flow] that can collect [GetCapacityManagerMonitoredTagKeysResponse]
        8032  +
 */
        8033  +
public fun Ec2Client.getCapacityManagerMonitoredTagKeysPaginated(initialRequest: GetCapacityManagerMonitoredTagKeysRequest = GetCapacityManagerMonitoredTagKeysRequest { }): Flow<GetCapacityManagerMonitoredTagKeysResponse> =
        8034  +
    flow {
        8035  +
        var cursor: kotlin.String? = initialRequest.nextToken
        8036  +
        var hasNextPage: Boolean = true
        8037  +
        8038  +
        while (hasNextPage) {
        8039  +
            val req = initialRequest.copy {
        8040  +
                this.nextToken = cursor
        8041  +
            }
        8042  +
            val result = this@getCapacityManagerMonitoredTagKeysPaginated.getCapacityManagerMonitoredTagKeys(req)
        8043  +
            cursor = result.nextToken
        8044  +
            hasNextPage = cursor?.isNotEmpty() == true
        8045  +
            emit(result)
        8046  +
        }
        8047  +
    }
        8048  +
        8049  +
/**
        8050  +
 * Paginate over [GetCapacityManagerMonitoredTagKeysResponse] results.
        8051  +
 *
        8052  +
 * When this operation is called, a [kotlinx.coroutines.Flow] is created. Flows are lazy (cold) so no service
        8053  +
 * calls are made until the flow is collected. This also means there is no guarantee that the request is valid
        8054  +
 * until then. Once you start collecting the flow, the SDK will lazily load response pages by making service
        8055  +
 * calls until there are no pages left or the flow is cancelled. If there are errors in your request, you will
        8056  +
 * see the failures only after you start collection.
        8057  +
 * @param block A builder block used for DSL-style invocation of the operation
        8058  +
 * @return A [kotlinx.coroutines.flow.Flow] that can collect [GetCapacityManagerMonitoredTagKeysResponse]
        8059  +
 */
        8060  +
public fun Ec2Client.getCapacityManagerMonitoredTagKeysPaginated(block: GetCapacityManagerMonitoredTagKeysRequest.Builder.() -> Unit): Flow<GetCapacityManagerMonitoredTagKeysResponse> =
        8061  +
    getCapacityManagerMonitoredTagKeysPaginated(GetCapacityManagerMonitoredTagKeysRequest.Builder().apply(block).build())
        8062  +
        8063  +
/**
        8064  +
 * This paginator transforms the flow returned by [getCapacityManagerMonitoredTagKeysPaginated]
        8065  +
 * to access the nested member [CapacityManagerMonitoredTagKey]
        8066  +
 * @return A [kotlinx.coroutines.flow.Flow] that can collect [CapacityManagerMonitoredTagKey]
        8067  +
 */
        8068  +
@JvmName("getCapacityManagerMonitoredTagKeysResponseCapacityManagerMonitoredTagKey")
        8069  +
public fun Flow<GetCapacityManagerMonitoredTagKeysResponse>.capacityManagerTagKeys(): Flow<CapacityManagerMonitoredTagKey> =
        8070  +
    transform() { response ->
        8071  +
        response.capacityManagerTagKeys?.forEach {
        8072  +
            emit(it)
        8073  +
        }
        8074  +
    }
        8075  +
 8019   8076   
/**
 8020   8077   
 * Paginate over [GetGroupsForCapacityReservationResponse] results.
 8021   8078   
 *
 8022   8079   
 * When this operation is called, a [kotlinx.coroutines.Flow] is created. Flows are lazy (cold) so no service
 8023   8080   
 * calls are made until the flow is collected. This also means there is no guarantee that the request is valid
 8024   8081   
 * until then. Once you start collecting the flow, the SDK will lazily load response pages by making service
 8025   8082   
 * calls until there are no pages left or the flow is cancelled. If there are errors in your request, you will
 8026   8083   
 * see the failures only after you start collection.
 8027   8084   
 * @param initialRequest A [GetGroupsForCapacityReservationRequest] to start pagination
 8028   8085   
 * @return A [kotlinx.coroutines.flow.Flow] that can collect [GetGroupsForCapacityReservationResponse]

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

@@ -2,2 +87,92 @@
   22     22   
        when (curr.tagName) {
   23     23   
            // ResourceRegion com.amazonaws.ec2#CapacityManagerDimension$ResourceRegion
   24     24   
            "resourceRegion" -> builder.resourceRegion = curr.tryData()
   25     25   
                .getOrDeserializeErr { "expected (string: `com.amazonaws.ec2#String`)" }
   26     26   
            // AvailabilityZoneId com.amazonaws.ec2#CapacityManagerDimension$AvailabilityZoneId
   27     27   
            "availabilityZoneId" -> builder.availabilityZoneId = curr.tryData()
   28     28   
                .getOrDeserializeErr { "expected (string: `com.amazonaws.ec2#String`)" }
   29     29   
            // AccountId com.amazonaws.ec2#CapacityManagerDimension$AccountId
   30     30   
            "accountId" -> builder.accountId = curr.tryData()
   31     31   
                .getOrDeserializeErr { "expected (string: `com.amazonaws.ec2#String`)" }
          32  +
            // AccountName com.amazonaws.ec2#CapacityManagerDimension$AccountName
          33  +
            "accountName" -> builder.accountName = curr.tryData()
          34  +
                .getOrDeserializeErr { "expected (string: `com.amazonaws.ec2#String`)" }
   32     35   
            // InstanceFamily com.amazonaws.ec2#CapacityManagerDimension$InstanceFamily
   33     36   
            "instanceFamily" -> builder.instanceFamily = curr.tryData()
   34     37   
                .getOrDeserializeErr { "expected (string: `com.amazonaws.ec2#String`)" }
   35     38   
            // InstanceType com.amazonaws.ec2#CapacityManagerDimension$InstanceType
   36     39   
            "instanceType" -> builder.instanceType = curr.tryData()
   37     40   
                .getOrDeserializeErr { "expected (string: `com.amazonaws.ec2#String`)" }
   38     41   
            // InstancePlatform com.amazonaws.ec2#CapacityManagerDimension$InstancePlatform
   39     42   
            "instancePlatform" -> builder.instancePlatform = curr.tryData()
   40     43   
                .getOrDeserializeErr { "expected (string: `com.amazonaws.ec2#String`)" }
   41     44   
            // ReservationArn com.amazonaws.ec2#CapacityManagerDimension$ReservationArn
   42     45   
            "reservationArn" -> builder.reservationArn = curr.tryData()
   43     46   
                .getOrDeserializeErr { "expected (string: `com.amazonaws.ec2#String`)" }
   44     47   
            // ReservationId com.amazonaws.ec2#CapacityManagerDimension$ReservationId
   45     48   
            "reservationId" -> builder.reservationId = curr.tryData()
   46     49   
                .getOrDeserializeErr { "expected (string: `com.amazonaws.ec2#String`)" }
   47     50   
            // ReservationType com.amazonaws.ec2#CapacityManagerDimension$ReservationType
   48     51   
            "reservationType" -> builder.reservationType = curr.tryData()
   49     52   
                .parse { ReservationType.fromValue(it) }
   50     53   
                .getOrDeserializeErr { "expected (enum: `com.amazonaws.ec2#ReservationType`)" }
   51     54   
            // ReservationCreateTimestamp com.amazonaws.ec2#CapacityManagerDimension$ReservationCreateTimestamp
   52     55   
            "reservationCreateTimestamp" -> builder.reservationCreateTimestamp = curr.tryData()
   53     56   
                .parseTimestamp(TimestampFormat.ISO_8601)
   54     57   
                .getOrDeserializeErr { "expected (timestamp: `com.amazonaws.ec2#MillisecondDateTime`)" }
   55     58   
            // ReservationStartTimestamp com.amazonaws.ec2#CapacityManagerDimension$ReservationStartTimestamp
   56     59   
            "reservationStartTimestamp" -> builder.reservationStartTimestamp = curr.tryData()
   57     60   
                .parseTimestamp(TimestampFormat.ISO_8601)
   58     61   
                .getOrDeserializeErr { "expected (timestamp: `com.amazonaws.ec2#MillisecondDateTime`)" }
   59     62   
            // ReservationEndTimestamp com.amazonaws.ec2#CapacityManagerDimension$ReservationEndTimestamp
   60     63   
            "reservationEndTimestamp" -> builder.reservationEndTimestamp = curr.tryData()
   61     64   
                .parseTimestamp(TimestampFormat.ISO_8601)
   62     65   
                .getOrDeserializeErr { "expected (timestamp: `com.amazonaws.ec2#MillisecondDateTime`)" }
   63     66   
            // ReservationEndDateType com.amazonaws.ec2#CapacityManagerDimension$ReservationEndDateType
   64     67   
            "reservationEndDateType" -> builder.reservationEndDateType = curr.tryData()
   65     68   
                .parse { ReservationEndDateType.fromValue(it) }
   66     69   
                .getOrDeserializeErr { "expected (enum: `com.amazonaws.ec2#ReservationEndDateType`)" }
   67     70   
            // Tenancy com.amazonaws.ec2#CapacityManagerDimension$Tenancy
   68     71   
            "tenancy" -> builder.tenancy = curr.tryData()
   69     72   
                .parse { CapacityTenancy.fromValue(it) }
   70     73   
                .getOrDeserializeErr { "expected (enum: `com.amazonaws.ec2#CapacityTenancy`)" }
   71     74   
            // ReservationState com.amazonaws.ec2#CapacityManagerDimension$ReservationState
   72     75   
            "reservationState" -> builder.reservationState = curr.tryData()
   73     76   
                .parse { ReservationState.fromValue(it) }
   74     77   
                .getOrDeserializeErr { "expected (enum: `com.amazonaws.ec2#ReservationState`)" }
   75     78   
            // ReservationInstanceMatchCriteria com.amazonaws.ec2#CapacityManagerDimension$ReservationInstanceMatchCriteria
   76     79   
            "reservationInstanceMatchCriteria" -> builder.reservationInstanceMatchCriteria = curr.tryData()
   77     80   
                .getOrDeserializeErr { "expected (string: `com.amazonaws.ec2#String`)" }
   78     81   
            // ReservationUnusedFinancialOwner com.amazonaws.ec2#CapacityManagerDimension$ReservationUnusedFinancialOwner
   79     82   
            "reservationUnusedFinancialOwner" -> builder.reservationUnusedFinancialOwner = curr.tryData()
   80     83   
                .getOrDeserializeErr { "expected (string: `com.amazonaws.ec2#String`)" }
          84  +
            // Tags com.amazonaws.ec2#CapacityManagerDimension$Tags
          85  +
            "tagSet" -> builder.tags = deserializeCapacityManagerTagDimensionSetShape(curr)
   81     86   
            else -> {}
   82     87   
        }
   83     88   
        curr.drop()
   84     89   
    }
   85     90   
    builder.correctErrors()
   86     91   
    return builder.build()
   87     92   
}

tmp-codegen-diff/services/kinesis/e2eTest/src/KinesisSubscribeToShardTest.kt

@@ -1,1 +105,106 @@
    1      1   
/*
    2      2   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
    3      3   
 * SPDX-License-Identifier: Apache-2.0
    4      4   
 */
    5      5   
package aws.sdk.kotlin.services.kinesis
    6      6   
    7      7   
import aws.sdk.kotlin.services.kinesis.model.*
    8      8   
import aws.sdk.kotlin.services.kinesis.waiters.waitUntilStreamExists
    9      9   
import aws.sdk.kotlin.testing.withAllEngines
   10     10   
import aws.smithy.kotlin.runtime.retries.getOrThrow
          11  +
import aws.smithy.kotlin.runtime.testing.AfterAll
          12  +
import aws.smithy.kotlin.runtime.testing.BeforeAll
          13  +
import aws.smithy.kotlin.runtime.testing.TestInstance
          14  +
import aws.smithy.kotlin.runtime.testing.TestLifecycle
   11     15   
import kotlinx.coroutines.*
   12     16   
import kotlinx.coroutines.flow.first
   13         -
import org.junit.jupiter.api.AfterAll
   14         -
import org.junit.jupiter.api.BeforeAll
   15         -
import org.junit.jupiter.api.TestInstance
   16     17   
import java.util.*
   17     18   
import kotlin.test.Test
   18     19   
import kotlin.test.assertEquals
   19     20   
import kotlin.time.Duration.Companion.seconds
   20     21   
   21     22   
private val WAIT_TIMEOUT = 30.seconds
   22     23   
private val POLLING_RATE = 3.seconds
   23     24   
   24     25   
private val STREAM_NAME_PREFIX = "aws-sdk-kotlin-e2e-test-stream-"
   25     26   
private val STREAM_CONSUMER_NAME_PREFIX = "aws-sdk-kotlin-e2e-test-"
   26     27   
   27     28   
private val TEST_DATA = "Bees, bees, bees, bees!"
   28     29   
   29     30   
/**
   30     31   
 * Tests for Kinesis SubscribeToShard (an RPC-bound protocol)
   31     32   
 */
   32         -
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
          33  +
@TestInstance(TestLifecycle.PER_CLASS)
   33     34   
class KinesisSubscribeToShardTest {
   34     35   
    private val client = KinesisClient { region = "us-east-1" }
   35     36   
   36     37   
    private lateinit var dataStreamArn: String
   37     38   
    private lateinit var dataStreamConsumerArn: String
   38     39   
   39     40   
    /**
   40     41   
     * Create infrastructure required for the test, if it doesn't exist already.
   41     42   
     */
   42     43   
    @BeforeAll
   43     44   
    fun setup(): Unit = runBlocking {
   44     45   
        dataStreamArn = client.getOrCreateStream()
   45     46   
        dataStreamConsumerArn = client.getOrRegisterStreamConsumer()
   46     47   
    }
   47     48   
   48     49   
    /**
   49     50   
     * Delete infrastructure used for the test.
   50     51   
     */
   51     52   
    @AfterAll
   52     53   
    fun cleanUp(): Unit = runBlocking {
   53     54   
        client.deregisterStreamConsumer {
   54     55   
            streamArn = dataStreamArn
   55     56   
            consumerArn = dataStreamConsumerArn
   56     57   
        }
   57     58   
   58     59   
        client.deleteStream {
   59     60   
            streamArn = dataStreamArn
   60     61   
        }
   61     62   
    }
   62     63   
   63     64   
    /**
   64     65   
     * Select the single shard ID associated with the data stream, and subscribe to it.
   65     66   
     * Read one event and make sure the data matches what's expected.
   66     67   
     */
   67     68   
    @Test
   68     69   
    fun testSubscribeToShard(): Unit = runBlocking {
   69     70   
        val dataStreamShardId = client.listShards {
   70     71   
            streamArn = dataStreamArn
   71     72   
        }.shards?.single()!!.shardId
   72     73   
   73         -
        withAllEngines { engine ->
          74  +
        withAllEngines { context ->
   74     75   
            client.withConfig {
   75         -
                httpClient = engine
          76  +
                httpClient = context.engine
   76     77   
            }.use { clientWithTestEngine ->
   77     78   
                clientWithTestEngine.subscribeToShard(
   78     79   
                    SubscribeToShardRequest {
   79     80   
                        consumerArn = dataStreamConsumerArn
   80     81   
                        shardId = dataStreamShardId
   81     82   
                        startingPosition = StartingPosition {
   82     83   
                            type = ShardIteratorType.TrimHorizon
   83     84   
                        }
   84     85   
                    },
   85     86   
                ) {

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

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