AWS SDK

AWS SDK

rev. 27102829f69b2cfe3a9ca9e69ae64d1ea40f9865 (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/tag_resource.rs

@@ -229,229 +290,317 @@
  249    249   
                _input
  250    250   
                    .resource_arn
  251    251   
                    .clone()
  252    252   
                    .filter(|f| !AsRef::<str>::as_ref(f).trim().is_empty())
  253    253   
                    .ok_or_else(|| ::aws_smithy_types::error::operation::BuildError::missing_field("resource_arn", "A required field was not set"))?,
  254    254   
            ))
  255    255   
            .build()
  256    256   
            .map_err(|err| {
  257    257   
                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  258    258   
            })?;
         259  +
         260  +
        match cfg
         261  +
            .load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
         262  +
            .cloned()
         263  +
            .unwrap_or_default()
         264  +
        {
         265  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Preferred => {
         266  +
                cfg.interceptor_state()
         267  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModePreferred);
         268  +
            }
         269  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Required => {
         270  +
                cfg.interceptor_state()
         271  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeRequired);
         272  +
            }
         273  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Disabled => {
         274  +
                cfg.interceptor_state()
         275  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeDisabled);
         276  +
            }
         277  +
            otherwise => {
         278  +
                ::tracing::warn!(
         279  +
                    "Attempted to track an SDK feature for `{otherwise:?}`, which is not recognized in the current version of the SDK. \
         280  +
                                            Consider upgrading to the latest version to ensure that it is properly tracked."
         281  +
                );
         282  +
            }
         283  +
        }
         284  +
  259    285   
        cfg.interceptor_state()
  260    286   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
         287  +
  261    288   
        ::std::result::Result::Ok(())
  262    289   
    }
  263    290   
}
  264    291   
  265    292   
// The get_* functions below are generated from JMESPath expressions in the
  266    293   
// operationContextParams trait. They target the operation's input shape.
  267    294   
  268    295   
/// Error type for the `TagResourceError` operation.
  269    296   
#[non_exhaustive]
  270    297   
#[derive(::std::fmt::Debug)]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/transact_get_items.rs

@@ -226,226 +287,314 @@
  246    246   
                cfg.load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
  247    247   
                    .cloned()
  248    248   
                    .unwrap_or_default()
  249    249   
                    .to_string(),
  250    250   
            ))
  251    251   
            .set_resource_arn_list(get_resource_arn_list(_input).map(|v| v.into_iter().cloned().collect::<Vec<_>>()))
  252    252   
            .build()
  253    253   
            .map_err(|err| {
  254    254   
                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  255    255   
            })?;
         256  +
         257  +
        match cfg
         258  +
            .load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
         259  +
            .cloned()
         260  +
            .unwrap_or_default()
         261  +
        {
         262  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Preferred => {
         263  +
                cfg.interceptor_state()
         264  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModePreferred);
         265  +
            }
         266  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Required => {
         267  +
                cfg.interceptor_state()
         268  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeRequired);
         269  +
            }
         270  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Disabled => {
         271  +
                cfg.interceptor_state()
         272  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeDisabled);
         273  +
            }
         274  +
            otherwise => {
         275  +
                ::tracing::warn!(
         276  +
                    "Attempted to track an SDK feature for `{otherwise:?}`, which is not recognized in the current version of the SDK. \
         277  +
                                            Consider upgrading to the latest version to ensure that it is properly tracked."
         278  +
                );
         279  +
            }
         280  +
        }
         281  +
  256    282   
        cfg.interceptor_state()
  257    283   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
         284  +
  258    285   
        ::std::result::Result::Ok(())
  259    286   
    }
  260    287   
}
  261    288   
  262    289   
// The get_* functions below are generated from JMESPath expressions in the
  263    290   
// operationContextParams trait. They target the operation's input shape.
  264    291   
  265    292   
// Generated from JMESPath Expression: TransactItems[*].Get.TableName
  266    293   
fn get_resource_arn_list(input: &crate::operation::transact_get_items::TransactGetItemsInput) -> Option<::std::vec::Vec<&::std::string::String>> {
  267    294   
    let _fld_1 = input.transact_items.as_ref()?;

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/transact_write_items.rs

@@ -233,233 +294,321 @@
  253    253   
            .set_account_id_endpoint_mode(::std::option::Option::Some(
  254    254   
                cfg.load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
  255    255   
                    .cloned()
  256    256   
                    .unwrap_or_default()
  257    257   
                    .to_string(),
  258    258   
            ))
  259    259   
            .build()
  260    260   
            .map_err(|err| {
  261    261   
                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  262    262   
            })?;
         263  +
         264  +
        match cfg
         265  +
            .load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
         266  +
            .cloned()
         267  +
            .unwrap_or_default()
         268  +
        {
         269  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Preferred => {
         270  +
                cfg.interceptor_state()
         271  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModePreferred);
         272  +
            }
         273  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Required => {
         274  +
                cfg.interceptor_state()
         275  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeRequired);
         276  +
            }
         277  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Disabled => {
         278  +
                cfg.interceptor_state()
         279  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeDisabled);
         280  +
            }
         281  +
            otherwise => {
         282  +
                ::tracing::warn!(
         283  +
                    "Attempted to track an SDK feature for `{otherwise:?}`, which is not recognized in the current version of the SDK. \
         284  +
                                            Consider upgrading to the latest version to ensure that it is properly tracked."
         285  +
                );
         286  +
            }
         287  +
        }
         288  +
  263    289   
        cfg.interceptor_state()
  264    290   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
         291  +
  265    292   
        ::std::result::Result::Ok(())
  266    293   
    }
  267    294   
}
  268    295   
  269    296   
// The get_* functions below are generated from JMESPath expressions in the
  270    297   
// operationContextParams trait. They target the operation's input shape.
  271    298   
  272    299   
/// Error type for the `TransactWriteItemsError` operation.
  273    300   
#[non_exhaustive]
  274    301   
#[derive(::std::fmt::Debug)]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/untag_resource.rs

@@ -229,229 +290,317 @@
  249    249   
                _input
  250    250   
                    .resource_arn
  251    251   
                    .clone()
  252    252   
                    .filter(|f| !AsRef::<str>::as_ref(f).trim().is_empty())
  253    253   
                    .ok_or_else(|| ::aws_smithy_types::error::operation::BuildError::missing_field("resource_arn", "A required field was not set"))?,
  254    254   
            ))
  255    255   
            .build()
  256    256   
            .map_err(|err| {
  257    257   
                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  258    258   
            })?;
         259  +
         260  +
        match cfg
         261  +
            .load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
         262  +
            .cloned()
         263  +
            .unwrap_or_default()
         264  +
        {
         265  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Preferred => {
         266  +
                cfg.interceptor_state()
         267  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModePreferred);
         268  +
            }
         269  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Required => {
         270  +
                cfg.interceptor_state()
         271  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeRequired);
         272  +
            }
         273  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Disabled => {
         274  +
                cfg.interceptor_state()
         275  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeDisabled);
         276  +
            }
         277  +
            otherwise => {
         278  +
                ::tracing::warn!(
         279  +
                    "Attempted to track an SDK feature for `{otherwise:?}`, which is not recognized in the current version of the SDK. \
         280  +
                                            Consider upgrading to the latest version to ensure that it is properly tracked."
         281  +
                );
         282  +
            }
         283  +
        }
         284  +
  259    285   
        cfg.interceptor_state()
  260    286   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
         287  +
  261    288   
        ::std::result::Result::Ok(())
  262    289   
    }
  263    290   
}
  264    291   
  265    292   
// The get_* functions below are generated from JMESPath expressions in the
  266    293   
// operationContextParams trait. They target the operation's input shape.
  267    294   
  268    295   
/// Error type for the `UntagResourceError` operation.
  269    296   
#[non_exhaustive]
  270    297   
#[derive(::std::fmt::Debug)]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_continuous_backups.rs

@@ -234,234 +295,322 @@
  254    254   
                _input
  255    255   
                    .table_name
  256    256   
                    .clone()
  257    257   
                    .filter(|f| !AsRef::<str>::as_ref(f).trim().is_empty())
  258    258   
                    .ok_or_else(|| ::aws_smithy_types::error::operation::BuildError::missing_field("table_name", "A required field was not set"))?,
  259    259   
            ))
  260    260   
            .build()
  261    261   
            .map_err(|err| {
  262    262   
                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  263    263   
            })?;
         264  +
         265  +
        match cfg
         266  +
            .load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
         267  +
            .cloned()
         268  +
            .unwrap_or_default()
         269  +
        {
         270  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Preferred => {
         271  +
                cfg.interceptor_state()
         272  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModePreferred);
         273  +
            }
         274  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Required => {
         275  +
                cfg.interceptor_state()
         276  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeRequired);
         277  +
            }
         278  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Disabled => {
         279  +
                cfg.interceptor_state()
         280  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeDisabled);
         281  +
            }
         282  +
            otherwise => {
         283  +
                ::tracing::warn!(
         284  +
                    "Attempted to track an SDK feature for `{otherwise:?}`, which is not recognized in the current version of the SDK. \
         285  +
                                            Consider upgrading to the latest version to ensure that it is properly tracked."
         286  +
                );
         287  +
            }
         288  +
        }
         289  +
  264    290   
        cfg.interceptor_state()
  265    291   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
         292  +
  266    293   
        ::std::result::Result::Ok(())
  267    294   
    }
  268    295   
}
  269    296   
  270    297   
// The get_* functions below are generated from JMESPath expressions in the
  271    298   
// operationContextParams trait. They target the operation's input shape.
  272    299   
  273    300   
/// Error type for the `UpdateContinuousBackupsError` operation.
  274    301   
#[non_exhaustive]
  275    302   
#[derive(::std::fmt::Debug)]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_contributor_insights.rs

@@ -240,240 +301,328 @@
  260    260   
                _input
  261    261   
                    .table_name
  262    262   
                    .clone()
  263    263   
                    .filter(|f| !AsRef::<str>::as_ref(f).trim().is_empty())
  264    264   
                    .ok_or_else(|| ::aws_smithy_types::error::operation::BuildError::missing_field("table_name", "A required field was not set"))?,
  265    265   
            ))
  266    266   
            .build()
  267    267   
            .map_err(|err| {
  268    268   
                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  269    269   
            })?;
         270  +
         271  +
        match cfg
         272  +
            .load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
         273  +
            .cloned()
         274  +
            .unwrap_or_default()
         275  +
        {
         276  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Preferred => {
         277  +
                cfg.interceptor_state()
         278  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModePreferred);
         279  +
            }
         280  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Required => {
         281  +
                cfg.interceptor_state()
         282  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeRequired);
         283  +
            }
         284  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Disabled => {
         285  +
                cfg.interceptor_state()
         286  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeDisabled);
         287  +
            }
         288  +
            otherwise => {
         289  +
                ::tracing::warn!(
         290  +
                    "Attempted to track an SDK feature for `{otherwise:?}`, which is not recognized in the current version of the SDK. \
         291  +
                                            Consider upgrading to the latest version to ensure that it is properly tracked."
         292  +
                );
         293  +
            }
         294  +
        }
         295  +
  270    296   
        cfg.interceptor_state()
  271    297   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
         298  +
  272    299   
        ::std::result::Result::Ok(())
  273    300   
    }
  274    301   
}
  275    302   
  276    303   
// The get_* functions below are generated from JMESPath expressions in the
  277    304   
// operationContextParams trait. They target the operation's input shape.
  278    305   
  279    306   
/// Error type for the `UpdateContributorInsightsError` operation.
  280    307   
#[non_exhaustive]
  281    308   
#[derive(::std::fmt::Debug)]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_global_table.rs

@@ -234,234 +295,322 @@
  254    254   
                    .clone()
  255    255   
                    .filter(|f| !AsRef::<str>::as_ref(f).trim().is_empty())
  256    256   
                    .ok_or_else(|| {
  257    257   
                        ::aws_smithy_types::error::operation::BuildError::missing_field("global_table_name", "A required field was not set")
  258    258   
                    })?,
  259    259   
            ))
  260    260   
            .build()
  261    261   
            .map_err(|err| {
  262    262   
                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  263    263   
            })?;
         264  +
         265  +
        match cfg
         266  +
            .load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
         267  +
            .cloned()
         268  +
            .unwrap_or_default()
         269  +
        {
         270  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Preferred => {
         271  +
                cfg.interceptor_state()
         272  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModePreferred);
         273  +
            }
         274  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Required => {
         275  +
                cfg.interceptor_state()
         276  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeRequired);
         277  +
            }
         278  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Disabled => {
         279  +
                cfg.interceptor_state()
         280  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeDisabled);
         281  +
            }
         282  +
            otherwise => {
         283  +
                ::tracing::warn!(
         284  +
                    "Attempted to track an SDK feature for `{otherwise:?}`, which is not recognized in the current version of the SDK. \
         285  +
                                            Consider upgrading to the latest version to ensure that it is properly tracked."
         286  +
                );
         287  +
            }
         288  +
        }
         289  +
  264    290   
        cfg.interceptor_state()
  265    291   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
         292  +
  266    293   
        ::std::result::Result::Ok(())
  267    294   
    }
  268    295   
}
  269    296   
  270    297   
// The get_* functions below are generated from JMESPath expressions in the
  271    298   
// operationContextParams trait. They target the operation's input shape.
  272    299   
  273    300   
/// Error type for the `UpdateGlobalTableError` operation.
  274    301   
#[non_exhaustive]
  275    302   
#[derive(::std::fmt::Debug)]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_global_table_settings.rs

@@ -242,242 +303,330 @@
  262    262   
                    .clone()
  263    263   
                    .filter(|f| !AsRef::<str>::as_ref(f).trim().is_empty())
  264    264   
                    .ok_or_else(|| {
  265    265   
                        ::aws_smithy_types::error::operation::BuildError::missing_field("global_table_name", "A required field was not set")
  266    266   
                    })?,
  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 `UpdateGlobalTableSettingsError` operation.
  282    309   
#[non_exhaustive]
  283    310   
#[derive(::std::fmt::Debug)]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_item.rs

@@ -227,227 +288,315 @@
  247    247   
                _input
  248    248   
                    .table_name
  249    249   
                    .clone()
  250    250   
                    .filter(|f| !AsRef::<str>::as_ref(f).trim().is_empty())
  251    251   
                    .ok_or_else(|| ::aws_smithy_types::error::operation::BuildError::missing_field("table_name", "A required field was not set"))?,
  252    252   
            ))
  253    253   
            .build()
  254    254   
            .map_err(|err| {
  255    255   
                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  256    256   
            })?;
         257  +
         258  +
        match cfg
         259  +
            .load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
         260  +
            .cloned()
         261  +
            .unwrap_or_default()
         262  +
        {
         263  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Preferred => {
         264  +
                cfg.interceptor_state()
         265  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModePreferred);
         266  +
            }
         267  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Required => {
         268  +
                cfg.interceptor_state()
         269  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeRequired);
         270  +
            }
         271  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Disabled => {
         272  +
                cfg.interceptor_state()
         273  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeDisabled);
         274  +
            }
         275  +
            otherwise => {
         276  +
                ::tracing::warn!(
         277  +
                    "Attempted to track an SDK feature for `{otherwise:?}`, which is not recognized in the current version of the SDK. \
         278  +
                                            Consider upgrading to the latest version to ensure that it is properly tracked."
         279  +
                );
         280  +
            }
         281  +
        }
         282  +
  257    283   
        cfg.interceptor_state()
  258    284   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
         285  +
  259    286   
        ::std::result::Result::Ok(())
  260    287   
    }
  261    288   
}
  262    289   
  263    290   
// The get_* functions below are generated from JMESPath expressions in the
  264    291   
// operationContextParams trait. They target the operation's input shape.
  265    292   
  266    293   
/// Error type for the `UpdateItemError` operation.
  267    294   
#[non_exhaustive]
  268    295   
#[derive(::std::fmt::Debug)]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_kinesis_streaming_destination.rs

@@ -244,244 +305,332 @@
  264    264   
                _input
  265    265   
                    .table_name
  266    266   
                    .clone()
  267    267   
                    .filter(|f| !AsRef::<str>::as_ref(f).trim().is_empty())
  268    268   
                    .ok_or_else(|| ::aws_smithy_types::error::operation::BuildError::missing_field("table_name", "A required field was not set"))?,
  269    269   
            ))
  270    270   
            .build()
  271    271   
            .map_err(|err| {
  272    272   
                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  273    273   
            })?;
         274  +
         275  +
        match cfg
         276  +
            .load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
         277  +
            .cloned()
         278  +
            .unwrap_or_default()
         279  +
        {
         280  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Preferred => {
         281  +
                cfg.interceptor_state()
         282  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModePreferred);
         283  +
            }
         284  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Required => {
         285  +
                cfg.interceptor_state()
         286  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeRequired);
         287  +
            }
         288  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Disabled => {
         289  +
                cfg.interceptor_state()
         290  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeDisabled);
         291  +
            }
         292  +
            otherwise => {
         293  +
                ::tracing::warn!(
         294  +
                    "Attempted to track an SDK feature for `{otherwise:?}`, which is not recognized in the current version of the SDK. \
         295  +
                                            Consider upgrading to the latest version to ensure that it is properly tracked."
         296  +
                );
         297  +
            }
         298  +
        }
         299  +
  274    300   
        cfg.interceptor_state()
  275    301   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
         302  +
  276    303   
        ::std::result::Result::Ok(())
  277    304   
    }
  278    305   
}
  279    306   
  280    307   
// The get_* functions below are generated from JMESPath expressions in the
  281    308   
// operationContextParams trait. They target the operation's input shape.
  282    309   
  283    310   
/// Error type for the `UpdateKinesisStreamingDestinationError` operation.
  284    311   
#[non_exhaustive]
  285    312   
#[derive(::std::fmt::Debug)]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_table.rs

@@ -229,229 +290,317 @@
  249    249   
                _input
  250    250   
                    .table_name
  251    251   
                    .clone()
  252    252   
                    .filter(|f| !AsRef::<str>::as_ref(f).trim().is_empty())
  253    253   
                    .ok_or_else(|| ::aws_smithy_types::error::operation::BuildError::missing_field("table_name", "A required field was not set"))?,
  254    254   
            ))
  255    255   
            .build()
  256    256   
            .map_err(|err| {
  257    257   
                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  258    258   
            })?;
         259  +
         260  +
        match cfg
         261  +
            .load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
         262  +
            .cloned()
         263  +
            .unwrap_or_default()
         264  +
        {
         265  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Preferred => {
         266  +
                cfg.interceptor_state()
         267  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModePreferred);
         268  +
            }
         269  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Required => {
         270  +
                cfg.interceptor_state()
         271  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeRequired);
         272  +
            }
         273  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Disabled => {
         274  +
                cfg.interceptor_state()
         275  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeDisabled);
         276  +
            }
         277  +
            otherwise => {
         278  +
                ::tracing::warn!(
         279  +
                    "Attempted to track an SDK feature for `{otherwise:?}`, which is not recognized in the current version of the SDK. \
         280  +
                                            Consider upgrading to the latest version to ensure that it is properly tracked."
         281  +
                );
         282  +
            }
         283  +
        }
         284  +
  259    285   
        cfg.interceptor_state()
  260    286   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
         287  +
  261    288   
        ::std::result::Result::Ok(())
  262    289   
    }
  263    290   
}
  264    291   
  265    292   
// The get_* functions below are generated from JMESPath expressions in the
  266    293   
// operationContextParams trait. They target the operation's input shape.
  267    294   
  268    295   
/// Error type for the `UpdateTableError` operation.
  269    296   
#[non_exhaustive]
  270    297   
#[derive(::std::fmt::Debug)]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_table_replica_auto_scaling.rs

@@ -240,240 +301,328 @@
  260    260   
                _input
  261    261   
                    .table_name
  262    262   
                    .clone()
  263    263   
                    .filter(|f| !AsRef::<str>::as_ref(f).trim().is_empty())
  264    264   
                    .ok_or_else(|| ::aws_smithy_types::error::operation::BuildError::missing_field("table_name", "A required field was not set"))?,
  265    265   
            ))
  266    266   
            .build()
  267    267   
            .map_err(|err| {
  268    268   
                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  269    269   
            })?;
         270  +
         271  +
        match cfg
         272  +
            .load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
         273  +
            .cloned()
         274  +
            .unwrap_or_default()
         275  +
        {
         276  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Preferred => {
         277  +
                cfg.interceptor_state()
         278  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModePreferred);
         279  +
            }
         280  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Required => {
         281  +
                cfg.interceptor_state()
         282  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeRequired);
         283  +
            }
         284  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Disabled => {
         285  +
                cfg.interceptor_state()
         286  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeDisabled);
         287  +
            }
         288  +
            otherwise => {
         289  +
                ::tracing::warn!(
         290  +
                    "Attempted to track an SDK feature for `{otherwise:?}`, which is not recognized in the current version of the SDK. \
         291  +
                                            Consider upgrading to the latest version to ensure that it is properly tracked."
         292  +
                );
         293  +
            }
         294  +
        }
         295  +
  270    296   
        cfg.interceptor_state()
  271    297   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
         298  +
  272    299   
        ::std::result::Result::Ok(())
  273    300   
    }
  274    301   
}
  275    302   
  276    303   
// The get_* functions below are generated from JMESPath expressions in the
  277    304   
// operationContextParams trait. They target the operation's input shape.
  278    305   
  279    306   
/// Error type for the `UpdateTableReplicaAutoScalingError` operation.
  280    307   
#[non_exhaustive]
  281    308   
#[derive(::std::fmt::Debug)]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/operation/update_time_to_live.rs

@@ -232,232 +293,320 @@
  252    252   
                _input
  253    253   
                    .table_name
  254    254   
                    .clone()
  255    255   
                    .filter(|f| !AsRef::<str>::as_ref(f).trim().is_empty())
  256    256   
                    .ok_or_else(|| ::aws_smithy_types::error::operation::BuildError::missing_field("table_name", "A required field was not set"))?,
  257    257   
            ))
  258    258   
            .build()
  259    259   
            .map_err(|err| {
  260    260   
                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  261    261   
            })?;
         262  +
         263  +
        match cfg
         264  +
            .load::<::aws_types::endpoint_config::AccountIdEndpointMode>()
         265  +
            .cloned()
         266  +
            .unwrap_or_default()
         267  +
        {
         268  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Preferred => {
         269  +
                cfg.interceptor_state()
         270  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModePreferred);
         271  +
            }
         272  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Required => {
         273  +
                cfg.interceptor_state()
         274  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeRequired);
         275  +
            }
         276  +
            ::aws_types::endpoint_config::AccountIdEndpointMode::Disabled => {
         277  +
                cfg.interceptor_state()
         278  +
                    .store_append(::aws_runtime::sdk_feature::AwsSdkFeature::AccountIdModeDisabled);
         279  +
            }
         280  +
            otherwise => {
         281  +
                ::tracing::warn!(
         282  +
                    "Attempted to track an SDK feature for `{otherwise:?}`, which is not recognized in the current version of the SDK. \
         283  +
                                            Consider upgrading to the latest version to ensure that it is properly tracked."
         284  +
                );
         285  +
            }
         286  +
        }
         287  +
  262    288   
        cfg.interceptor_state()
  263    289   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
         290  +
  264    291   
        ::std::result::Result::Ok(())
  265    292   
    }
  266    293   
}
  267    294   
  268    295   
// The get_* functions below are generated from JMESPath expressions in the
  269    296   
// operationContextParams trait. They target the operation's input shape.
  270    297   
  271    298   
/// Error type for the `UpdateTimeToLiveError` operation.
  272    299   
#[non_exhaustive]
  273    300   
#[derive(::std::fmt::Debug)]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/tests/account-based-endpoints.rs

@@ -1,1 +117,130 @@
    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   
    6      6   
use aws_config::Region;
    7      7   
use aws_credential_types::Credentials;
           8  +
use aws_runtime::user_agent::test_util::assert_ua_contains_metric_values;
    8      9   
use aws_sdk_dynamodb::{
    9     10   
    config::Builder,
   10     11   
    error::{DisplayErrorContext, SdkError},
   11     12   
    operation::batch_get_item::{BatchGetItemError, BatchGetItemOutput},
   12     13   
    types::{AttributeValue, KeysAndAttributes},
   13     14   
    Client, Config,
   14     15   
};
   15     16   
use aws_smithy_http_client::test_util::{capture_request, CaptureRequestReceiver};
   16     17   
use aws_smithy_runtime::assert_str_contains;
   17     18   
use aws_smithy_runtime_api::http::Response;
   18     19   
use aws_types::endpoint_config::AccountIdEndpointMode;
   19     20   
   20     21   
fn test_client(update_builder: fn(Builder) -> Builder) -> (Client, CaptureRequestReceiver) {
   21     22   
    let (http_client, request) = capture_request(None);
   22     23   
    let builder = Config::builder()
   23     24   
        .region(Region::new("us-east-1"))
   24     25   
        .credentials_provider(
   25     26   
            Credentials::builder()
   26     27   
                .account_id("123456789012")
   27     28   
                .access_key_id("ANOTREAL")
   28     29   
                .secret_access_key("notrealrnrELgWzOk3IfjzDKtFBhDby")
   29     30   
                .provider_name("test")
   30     31   
                .build(),
   31     32   
        )
   32     33   
        .http_client(http_client);
   33     34   
    (Client::from_conf(update_builder(builder).build()), request)
   34     35   
}
   35     36   
   36     37   
async fn call_operation(
   37     38   
    client: Client,
   38     39   
    table_name: &str,
   39     40   
) -> Result<BatchGetItemOutput, SdkError<BatchGetItemError, Response>> {
   40     41   
    let mut attr_v = std::collections::HashMap::new();
   41     42   
    attr_v.insert(":s".to_string(), AttributeValue::S("value".into()));
   42     43   
    let mut kv = std::collections::HashMap::new();
   43     44   
    kv.insert(":pk".to_string(), AttributeValue::M(attr_v));
   44     45   
    client
   45     46   
        .batch_get_item()
   46     47   
        .request_items(
   47     48   
            table_name,
   48     49   
            KeysAndAttributes::builder().keys(kv).build().unwrap(),
   49     50   
        )
   50     51   
        .send()
   51     52   
        .await
   52     53   
}
   53     54   
   54     55   
#[tokio::test]
   55     56   
async fn basic_positive_cases() {
   56         -
    let test_cases: &[(fn(Builder) -> Builder, &str, &str)] = &[
          57  +
    let test_cases: &[(fn(Builder) -> Builder, &str, &str, &[&'static str])] = &[
   57     58   
        (
   58     59   
            std::convert::identity,
   59     60   
            "arn:aws:dynamodb:us-east-1:333333333333:table/table_name",
   60     61   
            "https://333333333333.ddb.us-east-1.amazonaws.com/",
          62  +
            &["P", "T"],
   61     63   
        ),
   62     64   
        (
   63     65   
            std::convert::identity,
   64     66   
            "table_name", // doesn't specify ARN for the table name
   65     67   
            "https://123456789012.ddb.us-east-1.amazonaws.com/", // the account ID should come from credentials
          68  +
            &["P", "T"],
   66     69   
        ),
   67     70   
        (
   68     71   
            |b: Builder| b.credentials_provider(Credentials::for_tests()), // credentials do not provide an account ID
   69     72   
            "arn:aws:dynamodb:us-east-1:333333333333:table/table_name",
   70     73   
            "https://333333333333.ddb.us-east-1.amazonaws.com/",
          74  +
            &["P"],
   71     75   
        ),
   72     76   
        (
   73     77   
            |b: Builder| b.account_id_endpoint_mode(AccountIdEndpointMode::Preferred), // sets the default mode `Preferred` explicitly
   74     78   
            "arn:aws:dynamodb:us-east-1:333333333333:table/table_name",
   75     79   
            "https://333333333333.ddb.us-east-1.amazonaws.com/",
          80  +
            &["P", "T"],
   76     81   
        ),
   77     82   
        (
   78     83   
            |b: Builder| b.account_id_endpoint_mode(AccountIdEndpointMode::Disabled),
   79     84   
            "arn:aws:dynamodb:us-east-1:333333333333:table/table_name",
   80     85   
            "https://dynamodb.us-east-1.amazonaws.com/",
          86  +
            &["Q", "T"],
   81     87   
        ),
   82     88   
        (
   83     89   
            |b: Builder| b.account_id_endpoint_mode(AccountIdEndpointMode::Required),
   84     90   
            "arn:aws:dynamodb:us-east-1:333333333333:table/table_name",
   85     91   
            "https://333333333333.ddb.us-east-1.amazonaws.com/",
          92  +
            &["R", "T"],
   86     93   
        ),
   87     94   
    ];
   88     95   
   89         -
    for (i, (update_builder, table_name, expected_uri)) in test_cases.into_iter().enumerate() {
          96  +
    for (i, (update_builder, table_name, expected_uri, expected_metrics)) in
          97  +
        test_cases.into_iter().enumerate()
          98  +
    {
   90     99   
        let (client, rx) = test_client(*update_builder);
   91    100   
        let _ = call_operation(client, table_name).await;
   92    101   
        let req = rx.expect_request();
   93    102   
        assert_eq!(
   94    103   
            *expected_uri,
   95    104   
            req.uri(),
   96    105   
            "on the {i}th test case where table name is `{table_name}`"
   97    106   
        );
         107  +
         108  +
        // Test User-Agent metrics for account ID tracking
         109  +
        let user_agent = req.headers().get("x-amz-user-agent").unwrap();
         110  +
        assert_ua_contains_metric_values(user_agent, expected_metrics);
   98    111   
    }
   99    112   
}
  100    113   
  101    114   
#[tokio::test]
  102    115   
async fn error_should_be_raised_when_account_id_is_expected_but_not_resolved() {
  103    116   
    let (client, _) = test_client(|b| {
  104    117   
        b.account_id_endpoint_mode(AccountIdEndpointMode::Required)
  105    118   
            .credentials_provider(Credentials::for_tests())
  106    119   
    });
  107    120   
    // doesn't specify ARN for the table name

tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml

@@ -1,1 +116,116 @@
    9      9   
repository = "https://github.com/awslabs/aws-sdk-rust"
   10     10   
rust-version = "1.86.0"
   11     11   
readme = "README.md"
   12     12   
[package.metadata.smithy]
   13     13   
codegen-version = "ci"
   14     14   
[package.metadata.docs.rs]
   15     15   
all-features = true
   16     16   
targets = ["x86_64-unknown-linux-gnu"]
   17     17   
[dependencies.aws-credential-types]
   18     18   
path = "../aws-credential-types"
   19         -
version = "1.2.6"
          19  +
version = "1.2.7"
   20     20   
   21     21   
[dependencies.aws-runtime]
   22     22   
path = "../aws-runtime"
   23         -
version = "1.5.10"
          23  +
version = "1.5.11"
   24     24   
   25     25   
[dependencies.aws-smithy-async]
   26     26   
path = "../aws-smithy-async"
   27     27   
version = "1.2.5"
   28     28   
   29     29   
[dependencies.aws-smithy-http]
   30     30   
path = "../aws-smithy-http"
   31     31   
version = "0.62.3"
   32     32   
   33     33   
[dependencies.aws-smithy-json]
   34     34   
path = "../aws-smithy-json"
   35     35   
version = "0.61.5"
   36     36   
   37     37   
[dependencies.aws-smithy-query]
   38     38   
path = "../aws-smithy-query"
   39     39   
version = "0.60.7"
   40     40   
   41     41   
[dependencies.aws-smithy-runtime]
   42     42   
path = "../aws-smithy-runtime"
   43     43   
features = ["client"]
   44     44   
version = "1.9.2"
   45     45   
   46     46   
[dependencies.aws-smithy-runtime-api]
   47     47   
path = "../aws-smithy-runtime-api"
   48     48   
features = ["client", "http-02x"]
   49     49   
version = "1.9.0"
   50     50   
   51     51   
[dependencies.aws-smithy-types]
   52     52   
path = "../aws-smithy-types"
   53     53   
version = "1.3.2"
   54     54   
   55     55   
[dependencies.aws-smithy-xml]
   56     56   
path = "../aws-smithy-xml"
   57     57   
version = "0.60.10"
   58     58   
   59     59   
[dependencies.aws-types]
   60     60   
path = "../aws-types"
   61     61   
version = "1.3.8"
   62     62   
   63     63   
[dependencies.fastrand]
   64     64   
version = "2.0.0"
   65     65   
   66     66   
[dependencies.http]
   67     67   
version = "0.2.9"
   68     68   
   69     69   
[dependencies.regex-lite]
   70     70   
version = "0.1.5"
   71     71   
   72     72   
[dependencies.tracing]
   73     73   
version = "0.1"
   74     74   
[dev-dependencies.aws-config]
   75     75   
path = "../aws-config"
   76     76   
version = "1.8.7"
   77     77   
   78     78   
[dev-dependencies.aws-credential-types]
   79     79   
path = "../aws-credential-types"
   80     80   
features = ["test-util"]
   81         -
version = "1.2.6"
          81  +
version = "1.2.7"
   82     82   
   83     83   
[dev-dependencies.aws-runtime]
   84     84   
path = "../aws-runtime"
   85     85   
features = ["test-util"]
   86         -
version = "1.5.10"
          86  +
version = "1.5.11"
   87     87   
   88     88   
[dev-dependencies.aws-smithy-async]
   89     89   
path = "../aws-smithy-async"
   90     90   
features = ["test-util"]
   91     91   
version = "1.2.5"
   92     92   
   93     93   
[dev-dependencies.aws-smithy-http-client]
   94     94   
path = "../aws-smithy-http-client"
   95     95   
features = ["test-util", "wire-mock"]
   96     96   
version = "1.1.1"

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/accept_address_transfer.rs

@@ -216,216 +277,279 @@
  236    236   
  237    237   
        let params = crate::config::endpoint::Params::builder()
  238    238   
            .set_region(cfg.load::<::aws_types::region::Region>().map(|r| r.as_ref().to_owned()))
  239    239   
            .set_use_dual_stack(cfg.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0))
  240    240   
            .set_use_fips(cfg.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0))
  241    241   
            .set_endpoint(cfg.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()))
  242    242   
            .build()
  243    243   
            .map_err(|err| {
  244    244   
                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  245    245   
            })?;
         246  +
  246    247   
        cfg.interceptor_state()
  247    248   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
         249  +
  248    250   
        ::std::result::Result::Ok(())
  249    251   
    }
  250    252   
}
  251    253   
  252    254   
// The get_* functions below are generated from JMESPath expressions in the
  253    255   
// operationContextParams trait. They target the operation's input shape.
  254    256   
  255    257   
/// Error type for the `AcceptAddressTransferError` operation.
  256    258   
#[non_exhaustive]
  257    259   
#[derive(::std::fmt::Debug)]