242 242 | >,
|
243 243 | cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
|
244 244 | ) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> {
|
245 245 | let _input = context
|
246 246 | .input()
|
247 247 | .downcast_ref::<ExportTableToPointInTimeInput>()
|
248 248 | .ok_or("failed to downcast to ExportTableToPointInTimeInput")?;
|
249 249 |
|
250 250 | let params = crate::config::endpoint::Params::builder()
|
251 251 | .set_region(cfg.load::<::aws_types::region::Region>().map(|r| r.as_ref().to_owned()))
|
252 252 | .set_use_dual_stack(cfg.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0))
|
253 253 | .set_use_fips(cfg.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0))
|
254 254 | .set_endpoint(cfg.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()))
|
255 255 | .set_account_id_endpoint_mode(::std::option::Option::Some(
|
256 256 | cfg.load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
|
257 257 | .cloned()
|
258 258 | .unwrap_or_default()
|
259 259 | .to_string(),
|
260 260 | ))
|
261 261 | .set_resource_arn(Some(
|
262 262 | _input
|
263 263 | .table_arn
|
264 264 | .clone()
|
265 265 | .filter(|f| !AsRef::<str>::as_ref(f).trim().is_empty())
|
266 266 | .ok_or_else(|| ::aws_smithy_types::error::operation::BuildError::missing_field("table_arn", "A required field was not set"))?,
|
267 267 | ))
|
268 268 | .build()
|
269 269 | .map_err(|err| {
|
270 270 | ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
|
271 271 | })?;
|
272 + |
|
273 + | match cfg
|
274 + | .load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
|
275 + | .cloned()
|
276 + | .unwrap_or_default()
|
277 + | {
|
278 + | ::aws_types::endpoint_config::AccountIdEndpointMode::Preferred => {
|
279 + | cfg.interceptor_state()
|
280 + | .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModePreferred);
|
281 + | }
|
282 + | ::aws_types::endpoint_config::AccountIdEndpointMode::Required => {
|
283 + | cfg.interceptor_state()
|
284 + | .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeRequired);
|
285 + | }
|
286 + | ::aws_types::endpoint_config::AccountIdEndpointMode::Disabled => {
|
287 + | cfg.interceptor_state()
|
288 + | .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeDisabled);
|
289 + | }
|
290 + | otherwise => {
|
291 + | ::tracing::warn!(
|
292 + | "Attempted to track an SDK feature for `{otherwise:?}`, which is not recognized in the current version of the SDK. \
|
293 + | Consider upgrading to the latest version to ensure that it is properly tracked."
|
294 + | );
|
295 + | }
|
296 + | }
|
297 + |
|
272 298 | cfg.interceptor_state()
|
273 299 | .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
|
300 + |
|
274 301 | ::std::result::Result::Ok(())
|
275 302 | }
|
276 303 | }
|
277 304 |
|
278 305 | // The get_* functions below are generated from JMESPath expressions in the
|
279 306 | // operationContextParams trait. They target the operation's input shape.
|
280 307 |
|
281 308 | /// Error type for the `ExportTableToPointInTimeError` operation.
|
282 309 | #[non_exhaustive]
|
283 310 | #[derive(::std::fmt::Debug)]
|
284 311 | pub enum ExportTableToPointInTimeError {
|
285 312 | /// <p>There was a conflict when writing to the specified S3 bucket.</p>
|
286 313 | ExportConflictException(crate::types::error::ExportConflictException),
|
287 314 | /// <p>An error occurred on the server side.</p>
|
288 315 | InternalServerError(crate::types::error::InternalServerError),
|
289 316 | /// <p>The specified <code>ExportTime</code> is outside of the point in time recovery window.</p>
|
290 317 | InvalidExportTimeException(crate::types::error::InvalidExportTimeException),
|
291 318 | /// <p>There is no limit to the number of daily on-demand backups that can be taken.</p>
|
292 319 | /// <p>For most purposes, up to 500 simultaneous table operations are allowed per account. These operations include <code>CreateTable</code>, <code>UpdateTable</code>, <code>DeleteTable</code>,<code>UpdateTimeToLive</code>, <code>RestoreTableFromBackup</code>, and <code>RestoreTableToPointInTime</code>.</p>
|
293 320 | /// <p>When you are creating a table with one or more secondary indexes, you can have up to 250 such requests running at a time. However, if the table or index specifications are complex, then DynamoDB might temporarily reduce the number of concurrent operations.</p>
|
294 321 | /// <p>When importing into DynamoDB, up to 50 simultaneous import table operations are allowed per account.</p>
|
295 322 | /// <p>There is a soft account quota of 2,500 tables.</p>
|
296 323 | /// <p>GetRecords was called with a value of more than 1000 for the limit request parameter.</p>
|
297 324 | /// <p>More than 2 processes are reading from the same streams shard at the same time. Exceeding this limit may result in request throttling.</p>
|
298 325 | LimitExceededException(crate::types::error::LimitExceededException),
|
299 326 | /// <p>Point in time recovery has not yet been enabled for this source table.</p>
|
300 327 | PointInTimeRecoveryUnavailableException(crate::types::error::PointInTimeRecoveryUnavailableException),
|
301 328 | /// <p>A source table with the name <code>TableName</code> does not currently exist within the subscriber's account or the subscriber is operating in the wrong Amazon Web Services Region.</p>
|
302 329 | TableNotFoundException(crate::types::error::TableNotFoundException),
|
303 330 | /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).
|