146 146 | import aws.smithy.kotlin.runtime.client.IdempotencyTokenProvider
|
147 147 | import aws.smithy.kotlin.runtime.client.LogMode
|
148 148 | import aws.smithy.kotlin.runtime.client.RetryClientConfig
|
149 149 | import aws.smithy.kotlin.runtime.client.RetryStrategyClientConfig
|
150 150 | import aws.smithy.kotlin.runtime.client.RetryStrategyClientConfigImpl
|
151 151 | import aws.smithy.kotlin.runtime.client.SdkClient
|
152 152 | import aws.smithy.kotlin.runtime.client.SdkClientConfig
|
153 153 | import aws.smithy.kotlin.runtime.client.region.RegionProvider
|
154 154 | import aws.smithy.kotlin.runtime.http.auth.AuthScheme
|
155 155 | import aws.smithy.kotlin.runtime.http.auth.HttpAuthConfig
|
156 156 | import aws.smithy.kotlin.runtime.http.config.HttpClientConfig
|
157 157 | import aws.smithy.kotlin.runtime.http.config.HttpEngineConfig
|
158 158 | import aws.smithy.kotlin.runtime.http.config.TimeoutConfig
|
159 159 | import aws.smithy.kotlin.runtime.http.engine.HttpClientEngine
|
160 160 | import aws.smithy.kotlin.runtime.http.engine.HttpEngineConfigImpl
|
161 161 | import aws.smithy.kotlin.runtime.http.interceptors.HttpInterceptor
|
162 162 | import aws.smithy.kotlin.runtime.net.url.Url
|
163 163 | import aws.smithy.kotlin.runtime.retries.RetryStrategy
|
164 164 | import aws.smithy.kotlin.runtime.retries.policy.RetryPolicy
|
165 165 | import aws.smithy.kotlin.runtime.telemetry.Global
|
166 166 | import aws.smithy.kotlin.runtime.telemetry.TelemetryConfig
|
167 167 | import aws.smithy.kotlin.runtime.telemetry.TelemetryProvider
|
168 168 | import aws.smithy.kotlin.runtime.util.LazyAsyncValue
|
169 169 | import kotlin.collections.List
|
170 170 | import kotlin.jvm.JvmStatic
|
171 171 | import kotlin.time.Duration
|
172 172 | import kotlinx.coroutines.runBlocking
|
173 173 |
|
174 174 |
|
175 175 | public const val ServiceId: String = "DynamoDB"
|
176 - | public const val SdkVersion: String = "1.5.48-SNAPSHOT"
|
176 + | public const val SdkVersion: String = "1.5.49-SNAPSHOT"
|
177 177 | public const val ServiceApiVersion: String = "2012-08-10"
|
178 178 |
|
179 179 | /**
|
180 180 | * # Amazon DynamoDB
|
181 181 | * 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.
|
182 182 | *
|
183 183 | * 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.
|
184 184 | *
|
185 185 | * 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.
|
186 186 | */
|
187 187 | public interface DynamoDbClient : SdkClient {
|
188 188 | /**
|
189 189 | * DynamoDbClient's configuration
|
190 190 | */
|
191 191 | public override val config: Config
|
192 192 |
|
193 193 | public companion object : AbstractAwsSdkClientFactory<Config, Config.Builder, DynamoDbClient, Builder>()
|
194 194 | {
|
195 195 | @JvmStatic
|
196 196 | override fun builder(): Builder = Builder()
|
197 197 |
|
198 198 | override fun finalizeConfig(builder: Builder) {
|
199 199 | super.finalizeConfig(builder)
|
200 200 | builder.config.interceptors.add(0, ClockSkewInterceptor())
|
201 201 | }
|
202 202 |
|
203 203 | override suspend fun finalizeEnvironmentalConfig(builder: Builder, sharedConfig: LazyAsyncValue<AwsSharedConfig>, activeProfile: LazyAsyncValue<AwsProfile>) {
|
204 204 | super.finalizeEnvironmentalConfig(builder, sharedConfig, activeProfile)
|
205 205 | builder.config.endpointUrl = builder.config.endpointUrl ?: resolveEndpointUrl(
|
206 206 | sharedConfig,
|