Client Test

Client Test

rev. dfb5149b65b7bcc09edd15b8e071ad43b5ac5943

Files changed:

tmp-codegen-diff/codegen-client-test/dynamo/rust-client-codegen/src/operation/restore_table_to_point_in_time.rs

@@ -1,1 +40,49 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* OperationGenerator.kt:77 */
    2      3   
/// Orchestration and serialization glue logic for `RestoreTableToPointInTime`.
           4  +
/* RustType.kt:516 */
    3      5   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
           6  +
/* RustType.kt:516 */
    4      7   
#[non_exhaustive]
           8  +
/* OperationGenerator.kt:84 */
    5      9   
pub struct RestoreTableToPointInTime;
          10  +
/* OperationGenerator.kt:85 */
    6     11   
impl RestoreTableToPointInTime {
    7         -
    /// Creates a new `RestoreTableToPointInTime`
          12  +
    /// /* OperationGenerator.kt:86 */Creates a new `RestoreTableToPointInTime`
          13  +
    /* OperationGenerator.kt:87 */
    8     14   
    pub fn new() -> Self {
          15  +
        /* OperationGenerator.kt:88 */
    9     16   
        Self
          17  +
        /* OperationGenerator.kt:87 */
   10     18   
    }
          19  +
    /* OperationGenerator.kt:138 */
   11     20   
    pub(crate) async fn orchestrate(
   12     21   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     22   
        input: crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeInput,
   14     23   
    ) -> ::std::result::Result<
   15     24   
        crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeOutput,
   16     25   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     26   
            crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeError,
   18     27   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     28   
        >,
   20     29   
    > {
@@ -63,72 +425,688 @@
   83     92   
                runtime_plugins = runtime_plugins.with_operation_plugin(plugin);
   84     93   
            }
   85     94   
            runtime_plugins = runtime_plugins.with_operation_plugin(crate::config::ConfigOverrideRuntimePlugin::new(
   86     95   
                config_override,
   87     96   
                client_config.config.clone(),
   88     97   
                &client_config.runtime_components,
   89     98   
            ));
   90     99   
        }
   91    100   
        runtime_plugins
   92    101   
    }
         102  +
    /* OperationGenerator.kt:85 */
   93    103   
}
         104  +
/* OperationRuntimePluginGenerator.kt:55 */
   94    105   
impl ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin for RestoreTableToPointInTime {
   95    106   
    fn config(&self) -> ::std::option::Option<::aws_smithy_types::config_bag::FrozenLayer> {
   96    107   
        let mut cfg = ::aws_smithy_types::config_bag::Layer::new("RestoreTableToPointInTime");
   97    108   
   98    109   
        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedRequestSerializer::new(
   99    110   
            RestoreTableToPointInTimeRequestSerializer,
  100    111   
        ));
  101    112   
        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer::new(
  102    113   
            RestoreTableToPointInTimeResponseDeserializer,
  103    114   
        ));
  104    115   
  105    116   
        cfg.store_put(::aws_smithy_runtime_api::client::auth::AuthSchemeOptionResolverParams::new(
  106    117   
            ::aws_smithy_runtime_api::client::auth::static_resolver::StaticAuthSchemeOptionResolverParams::new(),
  107    118   
        ));
  108    119   
  109    120   
        cfg.store_put(::aws_smithy_runtime_api::client::orchestrator::Metadata::new(
  110    121   
            "RestoreTableToPointInTime",
  111    122   
            "DynamoDB",
  112    123   
        ));
  113    124   
  114    125   
        ::std::option::Option::Some(cfg.freeze())
  115    126   
    }
  116    127   
  117    128   
    fn runtime_components(
  118    129   
        &self,
  119    130   
        _: &::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder,
  120    131   
    ) -> ::std::borrow::Cow<'_, ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder> {
  121    132   
        #[allow(unused_mut)]
  122    133   
        let mut rcb = ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder::new("RestoreTableToPointInTime")
  123    134   
            .with_interceptor(::aws_smithy_runtime::client::stalled_stream_protection::StalledStreamProtectionInterceptor::default())
  124    135   
            .with_interceptor(RestoreTableToPointInTimeEndpointParamsInterceptor)
  125    136   
            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::TransientErrorClassifier::<
  126    137   
                crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeError,
  127    138   
            >::new())
  128    139   
            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::ModeledAsRetryableClassifier::<
  129    140   
                crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeError,
  130    141   
            >::new());
  131    142   
  132    143   
        ::std::borrow::Cow::Owned(rcb)
  133    144   
    }
  134    145   
}
  135    146   
         147  +
/* ResponseDeserializerGenerator.kt:64 */
  136    148   
#[derive(Debug)]
  137    149   
struct RestoreTableToPointInTimeResponseDeserializer;
  138    150   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for RestoreTableToPointInTimeResponseDeserializer {
  139    151   
    fn deserialize_nonstreaming(
  140    152   
        &self,
  141    153   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
  142    154   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  143    155   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  144    156   
        let headers = response.headers();
  145    157   
        let body = response.body().bytes().expect("body loaded");
  146    158   
        #[allow(unused_mut)]
  147    159   
        let mut force_error = false;
  148    160   
  149    161   
        let parse_result = if !success && status != 200 || force_error {
  150    162   
            crate::protocol_serde::shape_restore_table_to_point_in_time::de_restore_table_to_point_in_time_http_error(status, headers, body)
  151    163   
        } else {
  152    164   
            crate::protocol_serde::shape_restore_table_to_point_in_time::de_restore_table_to_point_in_time_http_response(status, headers, body)
  153    165   
        };
  154    166   
        crate::protocol_serde::type_erase_result(parse_result)
  155    167   
    }
  156    168   
}
         169  +
/* RequestSerializerGenerator.kt:67 */
  157    170   
#[derive(Debug)]
  158    171   
struct RestoreTableToPointInTimeRequestSerializer;
  159    172   
impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for RestoreTableToPointInTimeRequestSerializer {
  160    173   
    #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)]
  161    174   
    fn serialize_input(
  162    175   
        &self,
  163    176   
        input: ::aws_smithy_runtime_api::client::interceptors::context::Input,
  164    177   
        _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  165    178   
    ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> {
  166    179   
        let input = input
  167    180   
            .downcast::<crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeInput>()
  168    181   
            .expect("correct type");
  169    182   
        let _header_serialization_settings = _cfg
  170    183   
            .load::<crate::serialization_settings::HeaderSerializationSettings>()
  171    184   
            .cloned()
  172    185   
            .unwrap_or_default();
  173    186   
        let mut request_builder = {
  174    187   
            fn uri_base(
  175    188   
                _input: &crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeInput,
  176    189   
                output: &mut ::std::string::String,
  177    190   
            ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> {
  178    191   
                use ::std::fmt::Write as _;
  179    192   
                ::std::write!(output, "/").expect("formatting should succeed");
  180    193   
                ::std::result::Result::Ok(())
  181    194   
            }
  182    195   
            #[allow(clippy::unnecessary_wraps)]
  183    196   
            fn update_http_builder(
  184    197   
                input: &crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeInput,
  185    198   
                builder: ::http::request::Builder,
  186    199   
            ) -> ::std::result::Result<::http::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
  187    200   
                let mut uri = ::std::string::String::new();
  188    201   
                uri_base(input, &mut uri)?;
  189    202   
                ::std::result::Result::Ok(builder.method("POST").uri(uri))
  190    203   
            }
  191    204   
            let mut builder = update_http_builder(&input, ::http::request::Builder::new())?;
  192    205   
            builder = _header_serialization_settings.set_default_header(builder, ::http::header::CONTENT_TYPE, "application/x-amz-json-1.0");
  193    206   
            builder = _header_serialization_settings.set_default_header(
  194    207   
                builder,
  195    208   
                ::http::header::HeaderName::from_static("x-amz-target"),
  196    209   
                "DynamoDB_20120810.RestoreTableToPointInTime",
  197    210   
            );
  198    211   
            builder
  199    212   
        };
  200    213   
        let body = ::aws_smithy_types::body::SdkBody::from(
  201    214   
            crate::protocol_serde::shape_restore_table_to_point_in_time::ser_restore_table_to_point_in_time_input(&input)?,
  202    215   
        );
  203    216   
        if let Some(content_length) = body.content_length() {
  204    217   
            let content_length = content_length.to_string();
  205    218   
            request_builder = _header_serialization_settings.set_default_header(request_builder, ::http::header::CONTENT_LENGTH, &content_length);
  206    219   
        }
  207    220   
        ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap())
  208    221   
    }
  209    222   
}
         223  +
/* EndpointParamsInterceptorGenerator.kt:86 */
  210    224   
#[derive(Debug)]
  211    225   
struct RestoreTableToPointInTimeEndpointParamsInterceptor;
  212    226   
  213    227   
impl ::aws_smithy_runtime_api::client::interceptors::Intercept for RestoreTableToPointInTimeEndpointParamsInterceptor {
  214    228   
    fn name(&self) -> &'static str {
  215    229   
        "RestoreTableToPointInTimeEndpointParamsInterceptor"
  216    230   
    }
  217    231   
  218    232   
    fn read_before_execution(
  219    233   
        &self,
  220    234   
        context: &::aws_smithy_runtime_api::client::interceptors::context::BeforeSerializationInterceptorContextRef<
  221    235   
            '_,
  222    236   
            ::aws_smithy_runtime_api::client::interceptors::context::Input,
  223    237   
            ::aws_smithy_runtime_api::client::interceptors::context::Output,
  224    238   
            ::aws_smithy_runtime_api::client::interceptors::context::Error,
  225    239   
        >,
  226    240   
        cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  227    241   
    ) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> {
  228    242   
        let _input = context
  229    243   
            .input()
  230    244   
            .downcast_ref::<RestoreTableToPointInTimeInput>()
  231    245   
            .ok_or("failed to downcast to RestoreTableToPointInTimeInput")?;
  232    246   
  233    247   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  234    248   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  235    249   
        })?;
  236    250   
        cfg.interceptor_state()
  237    251   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  238    252   
        ::std::result::Result::Ok(())
  239    253   
    }
  240    254   
}
  241    255   
  242    256   
// The get_* functions below are generated from JMESPath expressions in the
  243    257   
// operationContextParams trait. They target the operation's input shape.
  244    258   
         259  +
/* OperationErrorGenerator.kt:79 */
  245    260   
/// Error type for the `RestoreTableToPointInTimeError` operation.
         261  +
/* RustType.kt:516 */
  246    262   
#[non_exhaustive]
         263  +
/* RustType.kt:516 */
  247    264   
#[derive(::std::fmt::Debug)]
  248         -
pub enum RestoreTableToPointInTimeError {
  249         -
    /// <p>An error occurred on the server side.</p>
         265  +
pub /* OperationErrorGenerator.kt:81 */ enum RestoreTableToPointInTimeError {
         266  +
    /// /* OperationErrorGenerator.kt:83 */<p>An error occurred on the server side.</p>
         267  +
    /* OperationErrorGenerator.kt:86 */
  250    268   
    InternalServerError(crate::types::error::InternalServerError),
         269  +
    /* OperationErrorGenerator.kt:83 */
  251    270   
    #[allow(missing_docs)] // documentation missing in model
         271  +
    /* OperationErrorGenerator.kt:86 */
  252    272   
    InvalidEndpointError(crate::types::error::InvalidEndpointError),
  253         -
    /// <p>An invalid restore time was specified. RestoreDateTime must be between EarliestRestorableDateTime and LatestRestorableDateTime.</p>
         273  +
    /// /* OperationErrorGenerator.kt:83 */<p>An invalid restore time was specified. RestoreDateTime must be between EarliestRestorableDateTime and LatestRestorableDateTime.</p>
         274  +
    /* OperationErrorGenerator.kt:86 */
  254    275   
    InvalidRestoreTimeError(crate::types::error::InvalidRestoreTimeError),
  255         -
    /// <p>There is no limit to the number of daily on-demand backups that can be taken.</p>
         276  +
    /// /* OperationErrorGenerator.kt:83 */<p>There is no limit to the number of daily on-demand backups that can be taken.</p>
  256    277   
    /// <p>Up to 50 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>
  257    278   
    /// <p>The only exception is when you are creating a table with one or more secondary indexes. You can have up to 25 such requests running at a time; however, if the table or index specifications are complex, DynamoDB might temporarily reduce the number of concurrent operations.</p>
  258    279   
    /// <p>There is a soft account quota of 256 tables.</p>
         280  +
    /* OperationErrorGenerator.kt:86 */
  259    281   
    LimitExceededError(crate::types::error::LimitExceededError),
  260         -
    /// <p>Point in time recovery has not yet been enabled for this source table.</p>
         282  +
    /// /* OperationErrorGenerator.kt:83 */<p>Point in time recovery has not yet been enabled for this source table.</p>
         283  +
    /* OperationErrorGenerator.kt:86 */
  261    284   
    PointInTimeRecoveryUnavailableError(crate::types::error::PointInTimeRecoveryUnavailableError),
  262         -
    /// <p>A target table with the specified name already exists.</p>
         285  +
    /// /* OperationErrorGenerator.kt:83 */<p>A target table with the specified name already exists.</p>
         286  +
    /* OperationErrorGenerator.kt:86 */
  263    287   
    TableAlreadyExistsError(crate::types::error::TableAlreadyExistsError),
  264         -
    /// <p>A target table with the specified name is either being created or deleted.</p>
         288  +
    /// /* OperationErrorGenerator.kt:83 */<p>A target table with the specified name is either being created or deleted.</p>
         289  +
    /* OperationErrorGenerator.kt:86 */
  265    290   
    TableInUseError(crate::types::error::TableInUseError),
  266         -
    /// <p>A source table with the name <code>TableName</code> does not currently exist within the subscriber's account.</p>
         291  +
    /// /* OperationErrorGenerator.kt:83 */<p>A source table with the name <code>TableName</code> does not currently exist within the subscriber's account.</p>
         292  +
    /* OperationErrorGenerator.kt:86 */
  267    293   
    TableNotFoundError(crate::types::error::TableNotFoundError),
         294  +
    /* OperationErrorGenerator.kt:88 */
  268    295   
    /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).
  269    296   
    #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \
  270    297   
    variable wildcard pattern and check `.code()`:
  271    298   
     \
  272    299   
    &nbsp;&nbsp;&nbsp;`err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }`
  273    300   
     \
  274    301   
    See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-RestoreTableToPointInTimeError) for what information is available for the error.")]
  275    302   
    Unhandled(crate::error::sealed_unhandled::Unhandled),
         303  +
    /* OperationErrorGenerator.kt:81 */
  276    304   
}
         305  +
/* OperationErrorGenerator.kt:218 */
  277    306   
impl RestoreTableToPointInTimeError {
         307  +
    /* OperationErrorGenerator.kt:219 */
  278    308   
    /// Creates the `RestoreTableToPointInTimeError::Unhandled` variant from any error type.
  279    309   
    pub fn unhandled(
  280    310   
        err: impl ::std::convert::Into<::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>>,
  281    311   
    ) -> Self {
  282    312   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  283    313   
            source: err.into(),
  284    314   
            meta: ::std::default::Default::default(),
  285    315   
        })
  286    316   
    }
  287    317   
  288    318   
    /// Creates the `RestoreTableToPointInTimeError::Unhandled` variant from an [`ErrorMetadata`](::aws_smithy_types::error::ErrorMetadata).
  289    319   
    pub fn generic(err: ::aws_smithy_types::error::ErrorMetadata) -> Self {
  290    320   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  291    321   
            source: err.clone().into(),
  292    322   
            meta: err,
  293    323   
        })
  294    324   
    }
  295         -
    ///
         325  +
    /// /* OperationErrorGenerator.kt:236 */
  296    326   
    /// Returns error metadata, which includes the error code, message,
  297    327   
    /// request ID, and potentially additional information.
  298    328   
    ///
         329  +
    /* OperationErrorGenerator.kt:242 */
  299    330   
    pub fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
         331  +
        /* OperationErrorGenerator.kt:243 */
  300    332   
        match self {
         333  +
            /* OperationErrorGenerator.kt:246 */
  301    334   
            Self::InternalServerError(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
         335  +
            /* OperationErrorGenerator.kt:246 */
  302    336   
            Self::InvalidEndpointError(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
         337  +
            /* OperationErrorGenerator.kt:246 */
  303    338   
            Self::InvalidRestoreTimeError(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
         339  +
            /* OperationErrorGenerator.kt:246 */
  304    340   
            Self::LimitExceededError(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
         341  +
            /* OperationErrorGenerator.kt:246 */
  305    342   
            Self::PointInTimeRecoveryUnavailableError(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
         343  +
            /* OperationErrorGenerator.kt:246 */
  306    344   
            Self::TableAlreadyExistsError(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
  307         -
            Self::TableInUseError(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
         345  +
            /* OperationErrorGenerator.kt:246 */ Self::TableInUseError(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
         346  +
            /* OperationErrorGenerator.kt:246 */
  308    347   
            Self::TableNotFoundError(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
  309         -
            Self::Unhandled(e) => &e.meta,
         348  +
            /* OperationErrorGenerator.kt:251 */ Self::Unhandled(e) => &e.meta,
         349  +
            /* OperationErrorGenerator.kt:243 */
  310    350   
        }
         351  +
        /* OperationErrorGenerator.kt:242 */
  311    352   
    }
         353  +
    /* OperationErrorGenerator.kt:257 */
  312    354   
    /// Returns `true` if the error kind is `RestoreTableToPointInTimeError::InternalServerError`.
         355  +
    /* OperationErrorGenerator.kt:258 */
  313    356   
    pub fn is_internal_server_error(&self) -> bool {
         357  +
        /* OperationErrorGenerator.kt:259 */
  314    358   
        matches!(self, Self::InternalServerError(_))
         359  +
        /* OperationErrorGenerator.kt:258 */
  315    360   
    }
         361  +
    /* OperationErrorGenerator.kt:257 */
  316    362   
    /// Returns `true` if the error kind is `RestoreTableToPointInTimeError::InvalidEndpointError`.
         363  +
    /* OperationErrorGenerator.kt:258 */
  317    364   
    pub fn is_invalid_endpoint_error(&self) -> bool {
         365  +
        /* OperationErrorGenerator.kt:259 */
  318    366   
        matches!(self, Self::InvalidEndpointError(_))
         367  +
        /* OperationErrorGenerator.kt:258 */
  319    368   
    }
         369  +
    /* OperationErrorGenerator.kt:257 */
  320    370   
    /// Returns `true` if the error kind is `RestoreTableToPointInTimeError::InvalidRestoreTimeError`.
         371  +
    /* OperationErrorGenerator.kt:258 */
  321    372   
    pub fn is_invalid_restore_time_error(&self) -> bool {
         373  +
        /* OperationErrorGenerator.kt:259 */
  322    374   
        matches!(self, Self::InvalidRestoreTimeError(_))
         375  +
        /* OperationErrorGenerator.kt:258 */
  323    376   
    }
         377  +
    /* OperationErrorGenerator.kt:257 */
  324    378   
    /// Returns `true` if the error kind is `RestoreTableToPointInTimeError::LimitExceededError`.
         379  +
    /* OperationErrorGenerator.kt:258 */
  325    380   
    pub fn is_limit_exceeded_error(&self) -> bool {
         381  +
        /* OperationErrorGenerator.kt:259 */
  326    382   
        matches!(self, Self::LimitExceededError(_))
         383  +
        /* OperationErrorGenerator.kt:258 */
  327    384   
    }
         385  +
    /* OperationErrorGenerator.kt:257 */
  328    386   
    /// Returns `true` if the error kind is `RestoreTableToPointInTimeError::PointInTimeRecoveryUnavailableError`.
         387  +
    /* OperationErrorGenerator.kt:258 */
  329    388   
    pub fn is_point_in_time_recovery_unavailable_error(&self) -> bool {
         389  +
        /* OperationErrorGenerator.kt:259 */
  330    390   
        matches!(self, Self::PointInTimeRecoveryUnavailableError(_))
         391  +
        /* OperationErrorGenerator.kt:258 */
  331    392   
    }
         393  +
    /* OperationErrorGenerator.kt:257 */
  332    394   
    /// Returns `true` if the error kind is `RestoreTableToPointInTimeError::TableAlreadyExistsError`.
         395  +
    /* OperationErrorGenerator.kt:258 */
  333    396   
    pub fn is_table_already_exists_error(&self) -> bool {
         397  +
        /* OperationErrorGenerator.kt:259 */
  334    398   
        matches!(self, Self::TableAlreadyExistsError(_))
         399  +
        /* OperationErrorGenerator.kt:258 */
  335    400   
    }
         401  +
    /* OperationErrorGenerator.kt:257 */
  336    402   
    /// Returns `true` if the error kind is `RestoreTableToPointInTimeError::TableInUseError`.
         403  +
    /* OperationErrorGenerator.kt:258 */
  337    404   
    pub fn is_table_in_use_error(&self) -> bool {
         405  +
        /* OperationErrorGenerator.kt:259 */
  338    406   
        matches!(self, Self::TableInUseError(_))
         407  +
        /* OperationErrorGenerator.kt:258 */
  339    408   
    }
         409  +
    /* OperationErrorGenerator.kt:257 */
  340    410   
    /// Returns `true` if the error kind is `RestoreTableToPointInTimeError::TableNotFoundError`.
         411  +
    /* OperationErrorGenerator.kt:258 */
  341    412   
    pub fn is_table_not_found_error(&self) -> bool {
         413  +
        /* OperationErrorGenerator.kt:259 */
  342    414   
        matches!(self, Self::TableNotFoundError(_))
         415  +
        /* OperationErrorGenerator.kt:258 */
  343    416   
    }
         417  +
    /* OperationErrorGenerator.kt:218 */
  344    418   
}
         419  +
/* OperationErrorGenerator.kt:269 */
  345    420   
impl ::std::error::Error for RestoreTableToPointInTimeError {
         421  +
    /* OperationErrorGenerator.kt:270 */
  346    422   
    fn source(&self) -> ::std::option::Option<&(dyn ::std::error::Error + 'static)> {
         423  +
        /* OperationErrorGenerator.kt:318 */
  347    424   
        match self {
  348         -
            Self::InternalServerError(_inner) => ::std::option::Option::Some(_inner),
  349         -
            Self::InvalidEndpointError(_inner) => ::std::option::Option::Some(_inner),
  350         -
            Self::InvalidRestoreTimeError(_inner) => ::std::option::Option::Some(_inner),
  351         -
            Self::LimitExceededError(_inner) => ::std::option::Option::Some(_inner),
  352         -
            Self::PointInTimeRecoveryUnavailableError(_inner) => ::std::option::Option::Some(_inner),
  353         -
            Self::TableAlreadyExistsError(_inner) => ::std::option::Option::Some(_inner),
  354         -
            Self::TableInUseError(_inner) => ::std::option::Option::Some(_inner),
  355         -
            Self::TableNotFoundError(_inner) => ::std::option::Option::Some(_inner),
  356         -
            Self::Unhandled(_inner) => ::std::option::Option::Some(&*_inner.source),
         425  +
            /* OperationErrorGenerator.kt:321 */
         426  +
            Self::InternalServerError(_inner) =>
         427  +
            /* OperationErrorGenerator.kt:283 */
         428  +
            {
         429  +
                ::std::option::Option::Some(_inner)
         430  +
            }
         431  +
            ,
         432  +
            /* OperationErrorGenerator.kt:321 */
         433  +
            Self::InvalidEndpointError(_inner) =>
         434  +
            /* OperationErrorGenerator.kt:283 */
         435  +
            {
         436  +
                ::std::option::Option::Some(_inner)
         437  +
            }
         438  +
            ,
         439  +
            /* OperationErrorGenerator.kt:321 */
         440  +
            Self::InvalidRestoreTimeError(_inner) =>
         441  +
            /* OperationErrorGenerator.kt:283 */
         442  +
            {
         443  +
                ::std::option::Option::Some(_inner)
         444  +
            }
         445  +
            ,
         446  +
            /* OperationErrorGenerator.kt:321 */
         447  +
            Self::LimitExceededError(_inner) =>
         448  +
            /* OperationErrorGenerator.kt:283 */
         449  +
            {
         450  +
                ::std::option::Option::Some(_inner)
         451  +
            }
         452  +
            ,
         453  +
            /* OperationErrorGenerator.kt:321 */
         454  +
            Self::PointInTimeRecoveryUnavailableError(_inner) =>
         455  +
            /* OperationErrorGenerator.kt:283 */
         456  +
            {
         457  +
                ::std::option::Option::Some(_inner)
         458  +
            }
         459  +
            ,
         460  +
            /* OperationErrorGenerator.kt:321 */
         461  +
            Self::TableAlreadyExistsError(_inner) =>
         462  +
            /* OperationErrorGenerator.kt:283 */
         463  +
            {
         464  +
                ::std::option::Option::Some(_inner)
         465  +
            }
         466  +
            ,
         467  +
            /* OperationErrorGenerator.kt:321 */
         468  +
            Self::TableInUseError(_inner) =>
         469  +
            /* OperationErrorGenerator.kt:283 */
         470  +
            {
         471  +
                ::std::option::Option::Some(_inner)
         472  +
            }
         473  +
            ,
         474  +
            /* OperationErrorGenerator.kt:321 */
         475  +
            Self::TableNotFoundError(_inner) =>
         476  +
            /* OperationErrorGenerator.kt:283 */
         477  +
            {
         478  +
                ::std::option::Option::Some(_inner)
         479  +
            }
         480  +
            ,
         481  +
            /* OperationErrorGenerator.kt:326 */
         482  +
            Self::Unhandled(_inner) => {
         483  +
                /* OperationErrorGenerator.kt:279 */
         484  +
                ::std::option::Option::Some(&*_inner.source)
         485  +
                /* OperationErrorGenerator.kt:326 */
         486  +
            } /* OperationErrorGenerator.kt:318 */
  357    487   
        }
         488  +
        /* OperationErrorGenerator.kt:270 */
  358    489   
    }
         490  +
    /* OperationErrorGenerator.kt:269 */
  359    491   
}
         492  +
/* OperationErrorGenerator.kt:133 */
  360    493   
impl ::std::fmt::Display for RestoreTableToPointInTimeError {
         494  +
    /* OperationErrorGenerator.kt:134 */
  361    495   
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         496  +
        /* OperationErrorGenerator.kt:318 */
  362    497   
        match self {
  363         -
            Self::InternalServerError(_inner) => _inner.fmt(f),
  364         -
            Self::InvalidEndpointError(_inner) => _inner.fmt(f),
  365         -
            Self::InvalidRestoreTimeError(_inner) => _inner.fmt(f),
  366         -
            Self::LimitExceededError(_inner) => _inner.fmt(f),
  367         -
            Self::PointInTimeRecoveryUnavailableError(_inner) => _inner.fmt(f),
  368         -
            Self::TableAlreadyExistsError(_inner) => _inner.fmt(f),
  369         -
            Self::TableInUseError(_inner) => _inner.fmt(f),
  370         -
            Self::TableNotFoundError(_inner) => _inner.fmt(f),
         498  +
            /* OperationErrorGenerator.kt:321 */
         499  +
            Self::InternalServerError(_inner) =>
         500  +
            /* OperationErrorGenerator.kt:151 */
         501  +
            {
         502  +
                _inner.fmt(f)
         503  +
            }
         504  +
            ,
         505  +
            /* OperationErrorGenerator.kt:321 */
         506  +
            Self::InvalidEndpointError(_inner) =>
         507  +
            /* OperationErrorGenerator.kt:151 */
         508  +
            {
         509  +
                _inner.fmt(f)
         510  +
            }
         511  +
            ,
         512  +
            /* OperationErrorGenerator.kt:321 */
         513  +
            Self::InvalidRestoreTimeError(_inner) =>
         514  +
            /* OperationErrorGenerator.kt:151 */
         515  +
            {
         516  +
                _inner.fmt(f)
         517  +
            }
         518  +
            ,
         519  +
            /* OperationErrorGenerator.kt:321 */
         520  +
            Self::LimitExceededError(_inner) =>
         521  +
            /* OperationErrorGenerator.kt:151 */
         522  +
            {
         523  +
                _inner.fmt(f)
         524  +
            }
         525  +
            ,
         526  +
            /* OperationErrorGenerator.kt:321 */
         527  +
            Self::PointInTimeRecoveryUnavailableError(_inner) =>
         528  +
            /* OperationErrorGenerator.kt:151 */
         529  +
            {
         530  +
                _inner.fmt(f)
         531  +
            }
         532  +
            ,
         533  +
            /* OperationErrorGenerator.kt:321 */
         534  +
            Self::TableAlreadyExistsError(_inner) =>
         535  +
            /* OperationErrorGenerator.kt:151 */
         536  +
            {
         537  +
                _inner.fmt(f)
         538  +
            }
         539  +
            ,
         540  +
            /* OperationErrorGenerator.kt:321 */
         541  +
            Self::TableInUseError(_inner) =>
         542  +
            /* OperationErrorGenerator.kt:151 */
         543  +
            {
         544  +
                _inner.fmt(f)
         545  +
            }
         546  +
            ,
         547  +
            /* OperationErrorGenerator.kt:321 */
         548  +
            Self::TableNotFoundError(_inner) =>
         549  +
            /* OperationErrorGenerator.kt:151 */
         550  +
            {
         551  +
                _inner.fmt(f)
         552  +
            }
         553  +
            ,
         554  +
            /* OperationErrorGenerator.kt:326 */
  371    555   
            Self::Unhandled(_inner) => {
         556  +
                /* OperationErrorGenerator.kt:139 */
  372    557   
                if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) {
  373    558   
                    write!(f, "unhandled error ({code})")
  374    559   
                } else {
  375    560   
                    f.write_str("unhandled error")
  376    561   
                }
  377         -
            }
         562  +
                /* OperationErrorGenerator.kt:326 */
         563  +
            } /* OperationErrorGenerator.kt:318 */
  378    564   
        }
         565  +
        /* OperationErrorGenerator.kt:134 */
  379    566   
    }
         567  +
    /* OperationErrorGenerator.kt:133 */
  380    568   
}
         569  +
/* OperationErrorGenerator.kt:182 */
  381    570   
impl ::aws_smithy_types::retry::ProvideErrorKind for RestoreTableToPointInTimeError {
         571  +
    /* OperationErrorGenerator.kt:186 */
  382    572   
    fn code(&self) -> ::std::option::Option<&str> {
         573  +
        /* OperationErrorGenerator.kt:187 */
  383    574   
        ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self)
         575  +
        /* OperationErrorGenerator.kt:186 */
  384    576   
    }
         577  +
    /* OperationErrorGenerator.kt:190 */
  385    578   
    fn retryable_error_kind(&self) -> ::std::option::Option<::aws_smithy_types::retry::ErrorKind> {
         579  +
        /* OperationErrorGenerator.kt:197 */
  386    580   
        ::std::option::Option::None
         581  +
        /* OperationErrorGenerator.kt:190 */
  387    582   
    }
         583  +
    /* OperationErrorGenerator.kt:182 */
  388    584   
}
         585  +
/* OperationErrorGenerator.kt:163 */
  389    586   
impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for RestoreTableToPointInTimeError {
         587  +
    /* OperationErrorGenerator.kt:164 */
  390    588   
    fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
         589  +
        /* OperationErrorGenerator.kt:318 */
  391    590   
        match self {
  392         -
            Self::InternalServerError(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  393         -
            Self::InvalidEndpointError(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  394         -
            Self::InvalidRestoreTimeError(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  395         -
            Self::LimitExceededError(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  396         -
            Self::PointInTimeRecoveryUnavailableError(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  397         -
            Self::TableAlreadyExistsError(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  398         -
            Self::TableInUseError(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  399         -
            Self::TableNotFoundError(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  400         -
            Self::Unhandled(_inner) => &_inner.meta,
         591  +
            /* OperationErrorGenerator.kt:321 */
         592  +
            Self::InternalServerError(_inner) =>
         593  +
            /* OperationErrorGenerator.kt:169 */
         594  +
            {
         595  +
                ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner)
         596  +
            }
         597  +
            ,
         598  +
            /* OperationErrorGenerator.kt:321 */
         599  +
            Self::InvalidEndpointError(_inner) =>
         600  +
            /* OperationErrorGenerator.kt:169 */
         601  +
            {
         602  +
                ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner)
         603  +
            }
         604  +
            ,
         605  +
            /* OperationErrorGenerator.kt:321 */
         606  +
            Self::InvalidRestoreTimeError(_inner) =>
         607  +
            /* OperationErrorGenerator.kt:169 */
         608  +
            {
         609  +
                ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner)
         610  +
            }
         611  +
            ,
         612  +
            /* OperationErrorGenerator.kt:321 */
         613  +
            Self::LimitExceededError(_inner) =>
         614  +
            /* OperationErrorGenerator.kt:169 */
         615  +
            {
         616  +
                ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner)
         617  +
            }
         618  +
            ,
         619  +
            /* OperationErrorGenerator.kt:321 */
         620  +
            Self::PointInTimeRecoveryUnavailableError(_inner) =>
         621  +
            /* OperationErrorGenerator.kt:169 */
         622  +
            {
         623  +
                ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner)
         624  +
            }
         625  +
            ,
         626  +
            /* OperationErrorGenerator.kt:321 */
         627  +
            Self::TableAlreadyExistsError(_inner) =>
         628  +
            /* OperationErrorGenerator.kt:169 */
         629  +
            {
         630  +
                ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner)
         631  +
            }
         632  +
            ,
         633  +
            /* OperationErrorGenerator.kt:321 */
         634  +
            Self::TableInUseError(_inner) =>
         635  +
            /* OperationErrorGenerator.kt:169 */
         636  +
            {
         637  +
                ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner)
         638  +
            }
         639  +
            ,
         640  +
            /* OperationErrorGenerator.kt:321 */
         641  +
            Self::TableNotFoundError(_inner) =>
         642  +
            /* OperationErrorGenerator.kt:169 */
         643  +
            {
         644  +
                ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner)
         645  +
            }
         646  +
            ,
         647  +
            /* OperationErrorGenerator.kt:326 */
         648  +
            Self::Unhandled(_inner) => {
         649  +
                /* OperationErrorGenerator.kt:168 */
         650  +
                &_inner.meta
         651  +
                /* OperationErrorGenerator.kt:326 */
         652  +
            } /* OperationErrorGenerator.kt:318 */
  401    653   
        }
         654  +
        /* OperationErrorGenerator.kt:164 */
  402    655   
    }
         656  +
    /* OperationErrorGenerator.kt:163 */
  403    657   
}
         658  +
/* OperationErrorGenerator.kt:109 */
  404    659   
impl ::aws_smithy_runtime_api::client::result::CreateUnhandledError for RestoreTableToPointInTimeError {
         660  +
    /* OperationErrorGenerator.kt:110 */
  405    661   
    fn create_unhandled_error(
  406    662   
        source: ::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>,
  407    663   
        meta: ::std::option::Option<::aws_smithy_types::error::ErrorMetadata>,
  408    664   
    ) -> Self {
         665  +
        /* OperationErrorGenerator.kt:121 */
  409    666   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  410    667   
            source,
  411    668   
            meta: meta.unwrap_or_default(),
  412    669   
        })
         670  +
        /* OperationErrorGenerator.kt:110 */
  413    671   
    }
         672  +
    /* OperationErrorGenerator.kt:109 */
  414    673   
}
  415    674   
         675  +
/* CodegenDelegator.kt:255 */
  416    676   
pub use crate::operation::restore_table_to_point_in_time::_restore_table_to_point_in_time_output::RestoreTableToPointInTimeOutput;
  417    677   
         678  +
/* CodegenDelegator.kt:255 */
  418    679   
pub use crate::operation::restore_table_to_point_in_time::_restore_table_to_point_in_time_input::RestoreTableToPointInTimeInput;
  419    680   
         681  +
/* RustModule.kt:172 */
  420    682   
mod _restore_table_to_point_in_time_input;
  421    683   
         684  +
/* RustModule.kt:172 */
  422    685   
mod _restore_table_to_point_in_time_output;
  423    686   
  424         -
/// Builders
         687  +
/// /* CodegenDelegator.kt:51 */Builders
  425    688   
pub mod builders;

tmp-codegen-diff/codegen-client-test/dynamo/rust-client-codegen/src/operation/restore_table_to_point_in_time/_restore_table_to_point_in_time_input.rs

@@ -1,1 +269,443 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct RestoreTableToPointInTimeInput {
    6         -
    /// <p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
           8  +
pub /* StructureGenerator.kt:201 */ struct RestoreTableToPointInTimeInput {
           9  +
    /// /* StructureGenerator.kt:231 */<p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
    7     10   
    pub source_table_arn: ::std::option::Option<::std::string::String>,
    8         -
    /// <p>Name of the source table that is being restored.</p>
          11  +
    /// /* StructureGenerator.kt:231 */<p>Name of the source table that is being restored.</p>
    9     12   
    pub source_table_name: ::std::option::Option<::std::string::String>,
   10         -
    /// <p>The name of the new table to which it must be restored to.</p>
          13  +
    /// /* StructureGenerator.kt:231 */<p>The name of the new table to which it must be restored to.</p>
   11     14   
    pub target_table_name: ::std::option::Option<::std::string::String>,
   12         -
    /// <p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
          15  +
    /// /* StructureGenerator.kt:231 */<p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
   13     16   
    pub use_latest_restorable_time: ::std::option::Option<bool>,
   14         -
    /// <p>Time in the past to restore the table to.</p>
          17  +
    /// /* StructureGenerator.kt:231 */<p>Time in the past to restore the table to.</p>
   15     18   
    pub restore_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
   16         -
    /// <p>The billing mode of the restored table.</p>
          19  +
    /// /* StructureGenerator.kt:231 */<p>The billing mode of the restored table.</p>
   17     20   
    pub billing_mode_override: ::std::option::Option<crate::types::BillingMode>,
   18         -
    /// <p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
          21  +
    /// /* StructureGenerator.kt:231 */<p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
   19     22   
    pub global_secondary_index_override: ::std::option::Option<::std::vec::Vec<crate::types::GlobalSecondaryIndex>>,
   20         -
    /// <p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
          23  +
    /// /* StructureGenerator.kt:231 */<p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
   21     24   
    pub local_secondary_index_override: ::std::option::Option<::std::vec::Vec<crate::types::LocalSecondaryIndex>>,
   22         -
    /// <p>Provisioned throughput settings for the restored table.</p>
          25  +
    /// /* StructureGenerator.kt:231 */<p>Provisioned throughput settings for the restored table.</p>
   23     26   
    pub provisioned_throughput_override: ::std::option::Option<crate::types::ProvisionedThroughput>,
   24         -
    /// <p>The new server-side encryption settings for the restored table.</p>
          27  +
    /// /* StructureGenerator.kt:231 */<p>The new server-side encryption settings for the restored table.</p>
   25     28   
    pub sse_specification_override: ::std::option::Option<crate::types::SseSpecification>,
          29  +
    /* StructureGenerator.kt:201 */
   26     30   
}
          31  +
/* StructureGenerator.kt:135 */
   27     32   
impl RestoreTableToPointInTimeInput {
   28         -
    /// <p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
          33  +
    /// /* StructureGenerator.kt:231 */<p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
          34  +
    /* StructureGenerator.kt:166 */
   29     35   
    pub fn source_table_arn(&self) -> ::std::option::Option<&str> {
          36  +
        /* StructureGenerator.kt:169 */
   30     37   
        self.source_table_arn.as_deref()
          38  +
        /* StructureGenerator.kt:166 */
   31     39   
    }
   32         -
    /// <p>Name of the source table that is being restored.</p>
          40  +
    /// /* StructureGenerator.kt:231 */<p>Name of the source table that is being restored.</p>
          41  +
    /* StructureGenerator.kt:166 */
   33     42   
    pub fn source_table_name(&self) -> ::std::option::Option<&str> {
          43  +
        /* StructureGenerator.kt:169 */
   34     44   
        self.source_table_name.as_deref()
          45  +
        /* StructureGenerator.kt:166 */
   35     46   
    }
   36         -
    /// <p>The name of the new table to which it must be restored to.</p>
          47  +
    /// /* StructureGenerator.kt:231 */<p>The name of the new table to which it must be restored to.</p>
          48  +
    /* StructureGenerator.kt:166 */
   37     49   
    pub fn target_table_name(&self) -> ::std::option::Option<&str> {
          50  +
        /* StructureGenerator.kt:169 */
   38     51   
        self.target_table_name.as_deref()
          52  +
        /* StructureGenerator.kt:166 */
   39     53   
    }
   40         -
    /// <p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
          54  +
    /// /* StructureGenerator.kt:231 */<p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
          55  +
    /* StructureGenerator.kt:166 */
   41     56   
    pub fn use_latest_restorable_time(&self) -> ::std::option::Option<bool> {
          57  +
        /* StructureGenerator.kt:168 */
   42     58   
        self.use_latest_restorable_time
          59  +
        /* StructureGenerator.kt:166 */
   43     60   
    }
   44         -
    /// <p>Time in the past to restore the table to.</p>
          61  +
    /// /* StructureGenerator.kt:231 */<p>Time in the past to restore the table to.</p>
          62  +
    /* StructureGenerator.kt:166 */
   45     63   
    pub fn restore_date_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
          64  +
        /* StructureGenerator.kt:170 */
   46     65   
        self.restore_date_time.as_ref()
          66  +
        /* StructureGenerator.kt:166 */
   47     67   
    }
   48         -
    /// <p>The billing mode of the restored table.</p>
          68  +
    /// /* StructureGenerator.kt:231 */<p>The billing mode of the restored table.</p>
          69  +
    /* StructureGenerator.kt:166 */
   49     70   
    pub fn billing_mode_override(&self) -> ::std::option::Option<&crate::types::BillingMode> {
          71  +
        /* StructureGenerator.kt:170 */
   50     72   
        self.billing_mode_override.as_ref()
          73  +
        /* StructureGenerator.kt:166 */
   51     74   
    }
   52         -
    /// <p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
   53         -
    ///
   54         -
    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.global_secondary_index_override.is_none()`.
          75  +
    /// /* StructureGenerator.kt:231 */<p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
          76  +
    /// /* StructureGenerator.kt:162 */
          77  +
    /// /* StructureGenerator.kt:163 */If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.global_secondary_index_override.is_none()`.
          78  +
    /* StructureGenerator.kt:166 */
   55     79   
    pub fn global_secondary_index_override(&self) -> &[crate::types::GlobalSecondaryIndex] {
   56         -
        self.global_secondary_index_override.as_deref().unwrap_or_default()
   57         -
    }
   58         -
    /// <p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
   59         -
    ///
   60         -
    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.local_secondary_index_override.is_none()`.
          80  +
        /* StructureGenerator.kt:169 */
          81  +
        self.global_secondary_index_override
          82  +
            .as_deref()
          83  +
            /* StructureGenerator.kt:175 */
          84  +
            .unwrap_or_default()
          85  +
        /* StructureGenerator.kt:166 */
          86  +
    }
          87  +
    /// /* StructureGenerator.kt:231 */<p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
          88  +
    /// /* StructureGenerator.kt:162 */
          89  +
    /// /* StructureGenerator.kt:163 */If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.local_secondary_index_override.is_none()`.
          90  +
    /* StructureGenerator.kt:166 */
   61     91   
    pub fn local_secondary_index_override(&self) -> &[crate::types::LocalSecondaryIndex] {
   62         -
        self.local_secondary_index_override.as_deref().unwrap_or_default()
   63         -
    }
   64         -
    /// <p>Provisioned throughput settings for the restored table.</p>
          92  +
        /* StructureGenerator.kt:169 */
          93  +
        self.local_secondary_index_override
          94  +
            .as_deref()
          95  +
            /* StructureGenerator.kt:175 */
          96  +
            .unwrap_or_default()
          97  +
        /* StructureGenerator.kt:166 */
          98  +
    }
          99  +
    /// /* StructureGenerator.kt:231 */<p>Provisioned throughput settings for the restored table.</p>
         100  +
    /* StructureGenerator.kt:166 */
   65    101   
    pub fn provisioned_throughput_override(&self) -> ::std::option::Option<&crate::types::ProvisionedThroughput> {
         102  +
        /* StructureGenerator.kt:170 */
   66    103   
        self.provisioned_throughput_override.as_ref()
         104  +
        /* StructureGenerator.kt:166 */
   67    105   
    }
   68         -
    /// <p>The new server-side encryption settings for the restored table.</p>
         106  +
    /// /* StructureGenerator.kt:231 */<p>The new server-side encryption settings for the restored table.</p>
         107  +
    /* StructureGenerator.kt:166 */
   69    108   
    pub fn sse_specification_override(&self) -> ::std::option::Option<&crate::types::SseSpecification> {
         109  +
        /* StructureGenerator.kt:170 */
   70    110   
        self.sse_specification_override.as_ref()
         111  +
        /* StructureGenerator.kt:166 */
   71    112   
    }
         113  +
    /* StructureGenerator.kt:135 */
   72    114   
}
         115  +
/* ClientCodegenVisitor.kt:237 */
   73    116   
impl RestoreTableToPointInTimeInput {
   74         -
    /// Creates a new builder-style object to manufacture [`RestoreTableToPointInTimeInput`](crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeInput).
         117  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`RestoreTableToPointInTimeInput`](crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeInput).
         118  +
    /* BuilderGenerator.kt:175 */
   75    119   
    pub fn builder() -> crate::operation::restore_table_to_point_in_time::builders::RestoreTableToPointInTimeInputBuilder {
         120  +
        /* BuilderGenerator.kt:176 */
   76    121   
        crate::operation::restore_table_to_point_in_time::builders::RestoreTableToPointInTimeInputBuilder::default()
         122  +
        /* BuilderGenerator.kt:175 */
   77    123   
    }
         124  +
    /* ClientCodegenVisitor.kt:237 */
   78    125   
}
   79    126   
   80         -
/// A builder for [`RestoreTableToPointInTimeInput`](crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeInput).
         127  +
/// /* BuilderGenerator.kt:342 */A builder for [`RestoreTableToPointInTimeInput`](crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeInput).
         128  +
/* RustType.kt:516 */
   81    129   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
         130  +
/* RustType.kt:516 */
   82    131   
#[non_exhaustive]
         132  +
/* BuilderGenerator.kt:345 */
   83    133   
pub struct RestoreTableToPointInTimeInputBuilder {
   84         -
    pub(crate) source_table_arn: ::std::option::Option<::std::string::String>,
   85         -
    pub(crate) source_table_name: ::std::option::Option<::std::string::String>,
   86         -
    pub(crate) target_table_name: ::std::option::Option<::std::string::String>,
   87         -
    pub(crate) use_latest_restorable_time: ::std::option::Option<bool>,
   88         -
    pub(crate) restore_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
   89         -
    pub(crate) billing_mode_override: ::std::option::Option<crate::types::BillingMode>,
         134  +
    /* BuilderGenerator.kt:275 */ pub(crate) source_table_arn: ::std::option::Option<::std::string::String>,
         135  +
    /* BuilderGenerator.kt:275 */ pub(crate) source_table_name: ::std::option::Option<::std::string::String>,
         136  +
    /* BuilderGenerator.kt:275 */ pub(crate) target_table_name: ::std::option::Option<::std::string::String>,
         137  +
    /* BuilderGenerator.kt:275 */ pub(crate) use_latest_restorable_time: ::std::option::Option<bool>,
         138  +
    /* BuilderGenerator.kt:275 */ pub(crate) restore_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
         139  +
    /* BuilderGenerator.kt:275 */ pub(crate) billing_mode_override: ::std::option::Option<crate::types::BillingMode>,
         140  +
    /* BuilderGenerator.kt:275 */
   90    141   
    pub(crate) global_secondary_index_override: ::std::option::Option<::std::vec::Vec<crate::types::GlobalSecondaryIndex>>,
         142  +
    /* BuilderGenerator.kt:275 */
   91    143   
    pub(crate) local_secondary_index_override: ::std::option::Option<::std::vec::Vec<crate::types::LocalSecondaryIndex>>,
   92         -
    pub(crate) provisioned_throughput_override: ::std::option::Option<crate::types::ProvisionedThroughput>,
         144  +
    /* BuilderGenerator.kt:275 */ pub(crate) provisioned_throughput_override: ::std::option::Option<crate::types::ProvisionedThroughput>,
         145  +
    /* BuilderGenerator.kt:275 */
   93    146   
    pub(crate) sse_specification_override: ::std::option::Option<crate::types::SseSpecification>,
         147  +
    /* BuilderGenerator.kt:345 */
   94    148   
}
         149  +
/* BuilderGenerator.kt:355 */
   95    150   
impl RestoreTableToPointInTimeInputBuilder {
   96         -
    /// <p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
         151  +
    /// /* BuilderGenerator.kt:286 */<p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
         152  +
    /* BuilderGenerator.kt:291 */
   97    153   
    pub fn source_table_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
         154  +
        /* BuilderGenerator.kt:292 */
   98    155   
        self.source_table_arn = ::std::option::Option::Some(input.into());
         156  +
        /* BuilderGenerator.kt:293 */
   99    157   
        self
         158  +
        /* BuilderGenerator.kt:291 */
  100    159   
    }
  101         -
    /// <p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
         160  +
    /// /* BuilderGenerator.kt:312 */<p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
         161  +
    /* BuilderGenerator.kt:314 */
  102    162   
    pub fn set_source_table_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
         163  +
        /* BuilderGenerator.kt:315 */
  103    164   
        self.source_table_arn = input;
  104    165   
        self
         166  +
        /* BuilderGenerator.kt:314 */
  105    167   
    }
  106         -
    /// <p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
         168  +
    /// /* BuilderGenerator.kt:334 */<p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
         169  +
    /* BuilderGenerator.kt:336 */
  107    170   
    pub fn get_source_table_arn(&self) -> &::std::option::Option<::std::string::String> {
         171  +
        /* BuilderGenerator.kt:337 */
  108    172   
        &self.source_table_arn
         173  +
        /* BuilderGenerator.kt:336 */
  109    174   
    }
  110         -
    /// <p>Name of the source table that is being restored.</p>
         175  +
    /// /* BuilderGenerator.kt:286 */<p>Name of the source table that is being restored.</p>
         176  +
    /* BuilderGenerator.kt:291 */
  111    177   
    pub fn source_table_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
         178  +
        /* BuilderGenerator.kt:292 */
  112    179   
        self.source_table_name = ::std::option::Option::Some(input.into());
         180  +
        /* BuilderGenerator.kt:293 */
  113    181   
        self
         182  +
        /* BuilderGenerator.kt:291 */
  114    183   
    }
  115         -
    /// <p>Name of the source table that is being restored.</p>
         184  +
    /// /* BuilderGenerator.kt:312 */<p>Name of the source table that is being restored.</p>
         185  +
    /* BuilderGenerator.kt:314 */
  116    186   
    pub fn set_source_table_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
         187  +
        /* BuilderGenerator.kt:315 */
  117    188   
        self.source_table_name = input;
  118    189   
        self
         190  +
        /* BuilderGenerator.kt:314 */
  119    191   
    }
  120         -
    /// <p>Name of the source table that is being restored.</p>
         192  +
    /// /* BuilderGenerator.kt:334 */<p>Name of the source table that is being restored.</p>
         193  +
    /* BuilderGenerator.kt:336 */
  121    194   
    pub fn get_source_table_name(&self) -> &::std::option::Option<::std::string::String> {
         195  +
        /* BuilderGenerator.kt:337 */
  122    196   
        &self.source_table_name
         197  +
        /* BuilderGenerator.kt:336 */
  123    198   
    }
  124         -
    /// <p>The name of the new table to which it must be restored to.</p>
  125         -
    /// This field is required.
         199  +
    /// /* BuilderGenerator.kt:286 */<p>The name of the new table to which it must be restored to.</p>
         200  +
    /// /* BuilderGenerator.kt:288 */This field is required.
         201  +
    /* BuilderGenerator.kt:291 */
  126    202   
    pub fn target_table_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
         203  +
        /* BuilderGenerator.kt:292 */
  127    204   
        self.target_table_name = ::std::option::Option::Some(input.into());
         205  +
        /* BuilderGenerator.kt:293 */
  128    206   
        self
         207  +
        /* BuilderGenerator.kt:291 */
  129    208   
    }
  130         -
    /// <p>The name of the new table to which it must be restored to.</p>
         209  +
    /// /* BuilderGenerator.kt:312 */<p>The name of the new table to which it must be restored to.</p>
         210  +
    /* BuilderGenerator.kt:314 */
  131    211   
    pub fn set_target_table_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
         212  +
        /* BuilderGenerator.kt:315 */
  132    213   
        self.target_table_name = input;
  133    214   
        self
         215  +
        /* BuilderGenerator.kt:314 */
  134    216   
    }
  135         -
    /// <p>The name of the new table to which it must be restored to.</p>
         217  +
    /// /* BuilderGenerator.kt:334 */<p>The name of the new table to which it must be restored to.</p>
         218  +
    /* BuilderGenerator.kt:336 */
  136    219   
    pub fn get_target_table_name(&self) -> &::std::option::Option<::std::string::String> {
         220  +
        /* BuilderGenerator.kt:337 */
  137    221   
        &self.target_table_name
         222  +
        /* BuilderGenerator.kt:336 */
  138    223   
    }
  139         -
    /// <p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
         224  +
    /// /* BuilderGenerator.kt:286 */<p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
         225  +
    /* BuilderGenerator.kt:291 */
  140    226   
    pub fn use_latest_restorable_time(mut self, input: bool) -> Self {
         227  +
        /* BuilderGenerator.kt:292 */
  141    228   
        self.use_latest_restorable_time = ::std::option::Option::Some(input);
         229  +
        /* BuilderGenerator.kt:293 */
  142    230   
        self
         231  +
        /* BuilderGenerator.kt:291 */
  143    232   
    }
  144         -
    /// <p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
         233  +
    /// /* BuilderGenerator.kt:312 */<p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
         234  +
    /* BuilderGenerator.kt:314 */
  145    235   
    pub fn set_use_latest_restorable_time(mut self, input: ::std::option::Option<bool>) -> Self {
         236  +
        /* BuilderGenerator.kt:315 */
  146    237   
        self.use_latest_restorable_time = input;
  147    238   
        self
         239  +
        /* BuilderGenerator.kt:314 */
  148    240   
    }
  149         -
    /// <p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
         241  +
    /// /* BuilderGenerator.kt:334 */<p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
         242  +
    /* BuilderGenerator.kt:336 */
  150    243   
    pub fn get_use_latest_restorable_time(&self) -> &::std::option::Option<bool> {
         244  +
        /* BuilderGenerator.kt:337 */
  151    245   
        &self.use_latest_restorable_time
         246  +
        /* BuilderGenerator.kt:336 */
  152    247   
    }
  153         -
    /// <p>Time in the past to restore the table to.</p>
         248  +
    /// /* BuilderGenerator.kt:286 */<p>Time in the past to restore the table to.</p>
         249  +
    /* BuilderGenerator.kt:291 */
  154    250   
    pub fn restore_date_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
         251  +
        /* BuilderGenerator.kt:292 */
  155    252   
        self.restore_date_time = ::std::option::Option::Some(input);
         253  +
        /* BuilderGenerator.kt:293 */
  156    254   
        self
         255  +
        /* BuilderGenerator.kt:291 */
  157    256   
    }
  158         -
    /// <p>Time in the past to restore the table to.</p>
         257  +
    /// /* BuilderGenerator.kt:312 */<p>Time in the past to restore the table to.</p>
         258  +
    /* BuilderGenerator.kt:314 */
  159    259   
    pub fn set_restore_date_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
         260  +
        /* BuilderGenerator.kt:315 */
  160    261   
        self.restore_date_time = input;
  161    262   
        self
         263  +
        /* BuilderGenerator.kt:314 */
  162    264   
    }
  163         -
    /// <p>Time in the past to restore the table to.</p>
         265  +
    /// /* BuilderGenerator.kt:334 */<p>Time in the past to restore the table to.</p>
         266  +
    /* BuilderGenerator.kt:336 */
  164    267   
    pub fn get_restore_date_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
         268  +
        /* BuilderGenerator.kt:337 */
  165    269   
        &self.restore_date_time
         270  +
        /* BuilderGenerator.kt:336 */
  166    271   
    }
  167         -
    /// <p>The billing mode of the restored table.</p>
         272  +
    /// /* BuilderGenerator.kt:286 */<p>The billing mode of the restored table.</p>
         273  +
    /* BuilderGenerator.kt:291 */
  168    274   
    pub fn billing_mode_override(mut self, input: crate::types::BillingMode) -> Self {
         275  +
        /* BuilderGenerator.kt:292 */
  169    276   
        self.billing_mode_override = ::std::option::Option::Some(input);
         277  +
        /* BuilderGenerator.kt:293 */
  170    278   
        self
         279  +
        /* BuilderGenerator.kt:291 */
  171    280   
    }
  172         -
    /// <p>The billing mode of the restored table.</p>
         281  +
    /// /* BuilderGenerator.kt:312 */<p>The billing mode of the restored table.</p>
         282  +
    /* BuilderGenerator.kt:314 */
  173    283   
    pub fn set_billing_mode_override(mut self, input: ::std::option::Option<crate::types::BillingMode>) -> Self {
         284  +
        /* BuilderGenerator.kt:315 */
  174    285   
        self.billing_mode_override = input;
  175    286   
        self
         287  +
        /* BuilderGenerator.kt:314 */
  176    288   
    }
  177         -
    /// <p>The billing mode of the restored table.</p>
         289  +
    /// /* BuilderGenerator.kt:334 */<p>The billing mode of the restored table.</p>
         290  +
    /* BuilderGenerator.kt:336 */
  178    291   
    pub fn get_billing_mode_override(&self) -> &::std::option::Option<crate::types::BillingMode> {
         292  +
        /* BuilderGenerator.kt:337 */
  179    293   
        &self.billing_mode_override
         294  +
        /* BuilderGenerator.kt:336 */
  180    295   
    }
  181         -
    /// Appends an item to `global_secondary_index_override`.
         296  +
    /// /* BuilderGenerator.kt:410 */Appends an item to `global_secondary_index_override`.
         297  +
    /* BuilderGenerator.kt:411 */
  182    298   
    ///
  183         -
    /// To override the contents of this collection use [`set_global_secondary_index_override`](Self::set_global_secondary_index_override).
         299  +
    /// /* BuilderGenerator.kt:412 */To override the contents of this collection use [`set_global_secondary_index_override`](Self::set_global_secondary_index_override).
         300  +
    /* BuilderGenerator.kt:413 */
  184    301   
    ///
  185         -
    /// <p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         302  +
    /// /* BuilderGenerator.kt:414 */<p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         303  +
    /* BuilderGenerator.kt:418 */
  186    304   
    pub fn global_secondary_index_override(mut self, input: crate::types::GlobalSecondaryIndex) -> Self {
         305  +
        /* BuilderGenerator.kt:419 */
  187    306   
        let mut v = self.global_secondary_index_override.unwrap_or_default();
  188    307   
        v.push(input);
  189    308   
        self.global_secondary_index_override = ::std::option::Option::Some(v);
  190    309   
        self
         310  +
        /* BuilderGenerator.kt:418 */
  191    311   
    }
  192         -
    /// <p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         312  +
    /// /* BuilderGenerator.kt:312 */<p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         313  +
    /* BuilderGenerator.kt:314 */
  193    314   
    pub fn set_global_secondary_index_override(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::GlobalSecondaryIndex>>) -> Self {
         315  +
        /* BuilderGenerator.kt:315 */
  194    316   
        self.global_secondary_index_override = input;
  195    317   
        self
         318  +
        /* BuilderGenerator.kt:314 */
  196    319   
    }
  197         -
    /// <p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         320  +
    /// /* BuilderGenerator.kt:334 */<p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         321  +
    /* BuilderGenerator.kt:336 */
  198    322   
    pub fn get_global_secondary_index_override(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::GlobalSecondaryIndex>> {
         323  +
        /* BuilderGenerator.kt:337 */
  199    324   
        &self.global_secondary_index_override
         325  +
        /* BuilderGenerator.kt:336 */
  200    326   
    }
  201         -
    /// Appends an item to `local_secondary_index_override`.
         327  +
    /// /* BuilderGenerator.kt:410 */Appends an item to `local_secondary_index_override`.
         328  +
    /* BuilderGenerator.kt:411 */
  202    329   
    ///
  203         -
    /// To override the contents of this collection use [`set_local_secondary_index_override`](Self::set_local_secondary_index_override).
         330  +
    /// /* BuilderGenerator.kt:412 */To override the contents of this collection use [`set_local_secondary_index_override`](Self::set_local_secondary_index_override).
         331  +
    /* BuilderGenerator.kt:413 */
  204    332   
    ///
  205         -
    /// <p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         333  +
    /// /* BuilderGenerator.kt:414 */<p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         334  +
    /* BuilderGenerator.kt:418 */
  206    335   
    pub fn local_secondary_index_override(mut self, input: crate::types::LocalSecondaryIndex) -> Self {
         336  +
        /* BuilderGenerator.kt:419 */
  207    337   
        let mut v = self.local_secondary_index_override.unwrap_or_default();
  208    338   
        v.push(input);
  209    339   
        self.local_secondary_index_override = ::std::option::Option::Some(v);
  210    340   
        self
         341  +
        /* BuilderGenerator.kt:418 */
  211    342   
    }
  212         -
    /// <p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         343  +
    /// /* BuilderGenerator.kt:312 */<p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         344  +
    /* BuilderGenerator.kt:314 */
  213    345   
    pub fn set_local_secondary_index_override(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::LocalSecondaryIndex>>) -> Self {
         346  +
        /* BuilderGenerator.kt:315 */
  214    347   
        self.local_secondary_index_override = input;
  215    348   
        self
         349  +
        /* BuilderGenerator.kt:314 */
  216    350   
    }
  217         -
    /// <p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         351  +
    /// /* BuilderGenerator.kt:334 */<p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         352  +
    /* BuilderGenerator.kt:336 */
  218    353   
    pub fn get_local_secondary_index_override(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::LocalSecondaryIndex>> {
         354  +
        /* BuilderGenerator.kt:337 */
  219    355   
        &self.local_secondary_index_override
         356  +
        /* BuilderGenerator.kt:336 */
  220    357   
    }
  221         -
    /// <p>Provisioned throughput settings for the restored table.</p>
         358  +
    /// /* BuilderGenerator.kt:286 */<p>Provisioned throughput settings for the restored table.</p>
         359  +
    /* BuilderGenerator.kt:291 */
  222    360   
    pub fn provisioned_throughput_override(mut self, input: crate::types::ProvisionedThroughput) -> Self {
         361  +
        /* BuilderGenerator.kt:292 */
  223    362   
        self.provisioned_throughput_override = ::std::option::Option::Some(input);
         363  +
        /* BuilderGenerator.kt:293 */
  224    364   
        self
         365  +
        /* BuilderGenerator.kt:291 */
  225    366   
    }
  226         -
    /// <p>Provisioned throughput settings for the restored table.</p>
         367  +
    /// /* BuilderGenerator.kt:312 */<p>Provisioned throughput settings for the restored table.</p>
         368  +
    /* BuilderGenerator.kt:314 */
  227    369   
    pub fn set_provisioned_throughput_override(mut self, input: ::std::option::Option<crate::types::ProvisionedThroughput>) -> Self {
         370  +
        /* BuilderGenerator.kt:315 */
  228    371   
        self.provisioned_throughput_override = input;
  229    372   
        self
         373  +
        /* BuilderGenerator.kt:314 */
  230    374   
    }
  231         -
    /// <p>Provisioned throughput settings for the restored table.</p>
         375  +
    /// /* BuilderGenerator.kt:334 */<p>Provisioned throughput settings for the restored table.</p>
         376  +
    /* BuilderGenerator.kt:336 */
  232    377   
    pub fn get_provisioned_throughput_override(&self) -> &::std::option::Option<crate::types::ProvisionedThroughput> {
         378  +
        /* BuilderGenerator.kt:337 */
  233    379   
        &self.provisioned_throughput_override
         380  +
        /* BuilderGenerator.kt:336 */
  234    381   
    }
  235         -
    /// <p>The new server-side encryption settings for the restored table.</p>
         382  +
    /// /* BuilderGenerator.kt:286 */<p>The new server-side encryption settings for the restored table.</p>
         383  +
    /* BuilderGenerator.kt:291 */
  236    384   
    pub fn sse_specification_override(mut self, input: crate::types::SseSpecification) -> Self {
         385  +
        /* BuilderGenerator.kt:292 */
  237    386   
        self.sse_specification_override = ::std::option::Option::Some(input);
         387  +
        /* BuilderGenerator.kt:293 */
  238    388   
        self
         389  +
        /* BuilderGenerator.kt:291 */
  239    390   
    }
  240         -
    /// <p>The new server-side encryption settings for the restored table.</p>
         391  +
    /// /* BuilderGenerator.kt:312 */<p>The new server-side encryption settings for the restored table.</p>
         392  +
    /* BuilderGenerator.kt:314 */
  241    393   
    pub fn set_sse_specification_override(mut self, input: ::std::option::Option<crate::types::SseSpecification>) -> Self {
         394  +
        /* BuilderGenerator.kt:315 */
  242    395   
        self.sse_specification_override = input;
  243    396   
        self
         397  +
        /* BuilderGenerator.kt:314 */
  244    398   
    }
  245         -
    /// <p>The new server-side encryption settings for the restored table.</p>
         399  +
    /// /* BuilderGenerator.kt:334 */<p>The new server-side encryption settings for the restored table.</p>
         400  +
    /* BuilderGenerator.kt:336 */
  246    401   
    pub fn get_sse_specification_override(&self) -> &::std::option::Option<crate::types::SseSpecification> {
         402  +
        /* BuilderGenerator.kt:337 */
  247    403   
        &self.sse_specification_override
         404  +
        /* BuilderGenerator.kt:336 */
  248    405   
    }
  249         -
    /// Consumes the builder and constructs a [`RestoreTableToPointInTimeInput`](crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeInput).
         406  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`RestoreTableToPointInTimeInput`](crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeInput).
         407  +
    /* BuilderGenerator.kt:253 */
  250    408   
    pub fn build(
  251    409   
        self,
  252    410   
    ) -> ::std::result::Result<
  253    411   
        crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeInput,
  254    412   
        ::aws_smithy_types::error::operation::BuildError,
  255    413   
    > {
  256         -
        ::std::result::Result::Ok(crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeInput {
  257         -
            source_table_arn: self.source_table_arn,
  258         -
            source_table_name: self.source_table_name,
  259         -
            target_table_name: self.target_table_name,
  260         -
            use_latest_restorable_time: self.use_latest_restorable_time,
  261         -
            restore_date_time: self.restore_date_time,
  262         -
            billing_mode_override: self.billing_mode_override,
  263         -
            global_secondary_index_override: self.global_secondary_index_override,
  264         -
            local_secondary_index_override: self.local_secondary_index_override,
  265         -
            provisioned_throughput_override: self.provisioned_throughput_override,
  266         -
            sse_specification_override: self.sse_specification_override,
  267         -
        })
  268         -
    }
         414  +
        /* BuilderGenerator.kt:254 */
         415  +
        ::std::result::Result::Ok(
         416  +
            /* BuilderGenerator.kt:477 */
         417  +
            crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeInput {
         418  +
                /* BuilderGenerator.kt:481 */ source_table_arn: self.source_table_arn,
         419  +
                /* BuilderGenerator.kt:481 */
         420  +
                source_table_name: self.source_table_name,
         421  +
                /* BuilderGenerator.kt:481 */
         422  +
                target_table_name: self.target_table_name,
         423  +
                /* BuilderGenerator.kt:481 */
         424  +
                use_latest_restorable_time: self.use_latest_restorable_time,
         425  +
                /* BuilderGenerator.kt:481 */
         426  +
                restore_date_time: self.restore_date_time,
         427  +
                /* BuilderGenerator.kt:481 */
         428  +
                billing_mode_override: self.billing_mode_override,
         429  +
                /* BuilderGenerator.kt:481 */
         430  +
                global_secondary_index_override: self.global_secondary_index_override,
         431  +
                /* BuilderGenerator.kt:481 */
         432  +
                local_secondary_index_override: self.local_secondary_index_override,
         433  +
                /* BuilderGenerator.kt:481 */
         434  +
                provisioned_throughput_override: self.provisioned_throughput_override,
         435  +
                /* BuilderGenerator.kt:481 */
         436  +
                sse_specification_override: self.sse_specification_override,
         437  +
                /* BuilderGenerator.kt:477 */
         438  +
            }, /* BuilderGenerator.kt:254 */
         439  +
        )
         440  +
        /* BuilderGenerator.kt:253 */
         441  +
    }
         442  +
    /* BuilderGenerator.kt:355 */
  269    443   
}

tmp-codegen-diff/codegen-client-test/dynamo/rust-client-codegen/src/operation/restore_table_to_point_in_time/_restore_table_to_point_in_time_output.rs

@@ -1,1 +49,84 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct RestoreTableToPointInTimeOutput {
    6         -
    /// <p>Represents the properties of a table.</p>
           8  +
pub /* StructureGenerator.kt:201 */ struct RestoreTableToPointInTimeOutput {
           9  +
    /// /* StructureGenerator.kt:231 */<p>Represents the properties of a table.</p>
    7     10   
    pub table_description: ::std::option::Option<crate::types::TableDescription>,
          11  +
    /* StructureGenerator.kt:201 */
    8     12   
}
          13  +
/* StructureGenerator.kt:135 */
    9     14   
impl RestoreTableToPointInTimeOutput {
   10         -
    /// <p>Represents the properties of a table.</p>
          15  +
    /// /* StructureGenerator.kt:231 */<p>Represents the properties of a table.</p>
          16  +
    /* StructureGenerator.kt:166 */
   11     17   
    pub fn table_description(&self) -> ::std::option::Option<&crate::types::TableDescription> {
          18  +
        /* StructureGenerator.kt:170 */
   12     19   
        self.table_description.as_ref()
          20  +
        /* StructureGenerator.kt:166 */
   13     21   
    }
          22  +
    /* StructureGenerator.kt:135 */
   14     23   
}
          24  +
/* ClientCodegenVisitor.kt:237 */
   15     25   
impl RestoreTableToPointInTimeOutput {
   16         -
    /// Creates a new builder-style object to manufacture [`RestoreTableToPointInTimeOutput`](crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeOutput).
          26  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`RestoreTableToPointInTimeOutput`](crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeOutput).
          27  +
    /* BuilderGenerator.kt:175 */
   17     28   
    pub fn builder() -> crate::operation::restore_table_to_point_in_time::builders::RestoreTableToPointInTimeOutputBuilder {
          29  +
        /* BuilderGenerator.kt:176 */
   18     30   
        crate::operation::restore_table_to_point_in_time::builders::RestoreTableToPointInTimeOutputBuilder::default()
          31  +
        /* BuilderGenerator.kt:175 */
   19     32   
    }
          33  +
    /* ClientCodegenVisitor.kt:237 */
   20     34   
}
   21     35   
   22         -
/// A builder for [`RestoreTableToPointInTimeOutput`](crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeOutput).
          36  +
/// /* BuilderGenerator.kt:342 */A builder for [`RestoreTableToPointInTimeOutput`](crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeOutput).
          37  +
/* RustType.kt:516 */
   23     38   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
          39  +
/* RustType.kt:516 */
   24     40   
#[non_exhaustive]
          41  +
/* BuilderGenerator.kt:345 */
   25     42   
pub struct RestoreTableToPointInTimeOutputBuilder {
          43  +
    /* BuilderGenerator.kt:275 */
   26     44   
    pub(crate) table_description: ::std::option::Option<crate::types::TableDescription>,
          45  +
    /* BuilderGenerator.kt:345 */
   27     46   
}
          47  +
/* BuilderGenerator.kt:355 */
   28     48   
impl RestoreTableToPointInTimeOutputBuilder {
   29         -
    /// <p>Represents the properties of a table.</p>
          49  +
    /// /* BuilderGenerator.kt:286 */<p>Represents the properties of a table.</p>
          50  +
    /* BuilderGenerator.kt:291 */
   30     51   
    pub fn table_description(mut self, input: crate::types::TableDescription) -> Self {
          52  +
        /* BuilderGenerator.kt:292 */
   31     53   
        self.table_description = ::std::option::Option::Some(input);
          54  +
        /* BuilderGenerator.kt:293 */
   32     55   
        self
          56  +
        /* BuilderGenerator.kt:291 */
   33     57   
    }
   34         -
    /// <p>Represents the properties of a table.</p>
          58  +
    /// /* BuilderGenerator.kt:312 */<p>Represents the properties of a table.</p>
          59  +
    /* BuilderGenerator.kt:314 */
   35     60   
    pub fn set_table_description(mut self, input: ::std::option::Option<crate::types::TableDescription>) -> Self {
          61  +
        /* BuilderGenerator.kt:315 */
   36     62   
        self.table_description = input;
   37     63   
        self
          64  +
        /* BuilderGenerator.kt:314 */
   38     65   
    }
   39         -
    /// <p>Represents the properties of a table.</p>
          66  +
    /// /* BuilderGenerator.kt:334 */<p>Represents the properties of a table.</p>
          67  +
    /* BuilderGenerator.kt:336 */
   40     68   
    pub fn get_table_description(&self) -> &::std::option::Option<crate::types::TableDescription> {
          69  +
        /* BuilderGenerator.kt:337 */
   41     70   
        &self.table_description
          71  +
        /* BuilderGenerator.kt:336 */
   42     72   
    }
   43         -
    /// Consumes the builder and constructs a [`RestoreTableToPointInTimeOutput`](crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeOutput).
          73  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`RestoreTableToPointInTimeOutput`](crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeOutput).
          74  +
    /* BuilderGenerator.kt:253 */
   44     75   
    pub fn build(self) -> crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeOutput {
          76  +
        /* BuilderGenerator.kt:477 */
   45     77   
        crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeOutput {
   46         -
            table_description: self.table_description,
          78  +
            /* BuilderGenerator.kt:481 */ table_description: self.table_description,
          79  +
            /* BuilderGenerator.kt:477 */
   47     80   
        }
          81  +
        /* BuilderGenerator.kt:253 */
   48     82   
    }
          83  +
    /* BuilderGenerator.kt:355 */
   49     84   
}

tmp-codegen-diff/codegen-client-test/dynamo/rust-client-codegen/src/operation/restore_table_to_point_in_time/builders.rs

@@ -1,1 +292,334 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* CodegenDelegator.kt:255 */
    2      3   
pub use crate::operation::restore_table_to_point_in_time::_restore_table_to_point_in_time_output::RestoreTableToPointInTimeOutputBuilder;
    3      4   
           5  +
/* CodegenDelegator.kt:255 */
    4      6   
pub use crate::operation::restore_table_to_point_in_time::_restore_table_to_point_in_time_input::RestoreTableToPointInTimeInputBuilder;
    5      7   
           8  +
/* FluentBuilderGenerator.kt:408 */
    6      9   
impl crate::operation::restore_table_to_point_in_time::builders::RestoreTableToPointInTimeInputBuilder {
    7     10   
    /// Sends a request with this input using the given client.
    8     11   
    pub async fn send_with(
    9     12   
        self,
   10     13   
        client: &crate::Client,
   11     14   
    ) -> ::std::result::Result<
   12     15   
        crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeOutput,
   13     16   
        ::aws_smithy_runtime_api::client::result::SdkError<
   14     17   
            crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeError,
   15     18   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   16     19   
        >,
   17     20   
    > {
   18     21   
        let mut fluent_builder = client.restore_table_to_point_in_time();
   19     22   
        fluent_builder.inner = self;
   20     23   
        fluent_builder.send().await
   21     24   
    }
   22     25   
}
   23         -
/// Fluent builder constructing a request to `RestoreTableToPointInTime`.
          26  +
/// /* FluentBuilderGenerator.kt:129 */Fluent builder constructing a request to `RestoreTableToPointInTime`.
   24     27   
///
   25         -
/// <p>Restores the specified table to the specified point in time within <code>EarliestRestorableDateTime</code> and <code>LatestRestorableDateTime</code>. You can restore your table to any point in time during the last 35 days. Any number of users can execute up to 4 concurrent restores (any type of restore) in a given account.</p>
          28  +
/// /* FluentBuilderGenerator.kt:130 */<p>Restores the specified table to the specified point in time within <code>EarliestRestorableDateTime</code> and <code>LatestRestorableDateTime</code>. You can restore your table to any point in time during the last 35 days. Any number of users can execute up to 4 concurrent restores (any type of restore) in a given account.</p>
   26     29   
/// <p>When you restore using point in time recovery, DynamoDB restores your table data to the state based on the selected date and time (day:hour:minute:second) to a new table.</p>
   27     30   
/// <p>Along with data, the following are also included on the new restored table using point in time recovery:</p>
   28     31   
/// <ul>
   29     32   
/// <li>
   30     33   
/// <p>Global secondary indexes (GSIs)</p></li>
   31     34   
/// <li>
   32     35   
/// <p>Local secondary indexes (LSIs)</p></li>
   33     36   
/// <li>
   34     37   
/// <p>Provisioned read and write capacity</p></li>
   35     38   
/// <li>
   36     39   
/// <p>Encryption settings</p><important>
   37     40   
/// <p>All these settings come from the current settings of the source table at the time of restore.</p>
   38     41   
/// </important></li>
   39     42   
/// </ul>
   40     43   
/// <p>You must manually set up the following on the restored table:</p>
   41     44   
/// <ul>
   42     45   
/// <li>
   43     46   
/// <p>Auto scaling policies</p></li>
   44     47   
/// <li>
   45     48   
/// <p>IAM policies</p></li>
   46     49   
/// <li>
   47     50   
/// <p>Amazon CloudWatch metrics and alarms</p></li>
   48     51   
/// <li>
   49     52   
/// <p>Tags</p></li>
   50     53   
/// <li>
   51     54   
/// <p>Stream settings</p></li>
   52     55   
/// <li>
   53     56   
/// <p>Time to Live (TTL) settings</p></li>
   54     57   
/// <li>
   55     58   
/// <p>Point in time recovery settings</p></li>
   56     59   
/// </ul>
          60  +
/* RustType.kt:516 */
   57     61   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
          62  +
/* FluentBuilderGenerator.kt:270 */
   58     63   
pub struct RestoreTableToPointInTimeFluentBuilder {
   59     64   
    handle: ::std::sync::Arc<crate::client::Handle>,
   60     65   
    inner: crate::operation::restore_table_to_point_in_time::builders::RestoreTableToPointInTimeInputBuilder,
   61     66   
    config_override: ::std::option::Option<crate::config::Builder>,
   62     67   
}
          68  +
/* FluentBuilderGenerator.kt:381 */
   63     69   
impl
   64     70   
    crate::client::customize::internal::CustomizableSend<
   65     71   
        crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeOutput,
   66     72   
        crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeError,
   67     73   
    > for RestoreTableToPointInTimeFluentBuilder
   68     74   
{
   69     75   
    fn send(
   70     76   
        self,
   71     77   
        config_override: crate::config::Builder,
   72     78   
    ) -> crate::client::customize::internal::BoxFuture<
   73     79   
        crate::client::customize::internal::SendResult<
   74     80   
            crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeOutput,
   75     81   
            crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeError,
   76     82   
        >,
   77     83   
    > {
   78     84   
        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
   79     85   
    }
   80     86   
}
          87  +
/* FluentBuilderGenerator.kt:282 */
   81     88   
impl RestoreTableToPointInTimeFluentBuilder {
          89  +
    /* FluentBuilderGenerator.kt:288 */
   82     90   
    /// Creates a new `RestoreTableToPointInTimeFluentBuilder`.
   83     91   
    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
   84     92   
        Self {
   85     93   
            handle,
   86     94   
            inner: ::std::default::Default::default(),
   87     95   
            config_override: ::std::option::Option::None,
   88     96   
        }
   89     97   
    }
          98  +
    /* FluentBuilderGenerator.kt:301 */
   90     99   
    /// Access the RestoreTableToPointInTime as a reference.
   91    100   
    pub fn as_input(&self) -> &crate::operation::restore_table_to_point_in_time::builders::RestoreTableToPointInTimeInputBuilder {
   92    101   
        &self.inner
   93    102   
    }
         103  +
    /* FluentBuilderGenerator.kt:145 */
   94    104   
    /// Sends the request and returns the response.
   95    105   
    ///
   96    106   
    /// If an error occurs, an `SdkError` will be returned with additional details that
   97    107   
    /// can be matched against.
   98    108   
    ///
   99    109   
    /// By default, any retryable failures will be retried twice. Retry behavior
  100    110   
    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
  101    111   
    /// set when configuring the client.
  102    112   
    pub async fn send(
  103    113   
        self,
  104    114   
    ) -> ::std::result::Result<
  105    115   
        crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeOutput,
  106    116   
        ::aws_smithy_runtime_api::client::result::SdkError<
  107    117   
            crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeError,
  108    118   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
  109    119   
        >,
  110    120   
    > {
  111    121   
        let input = self
  112    122   
            .inner
  113    123   
            .build()
  114    124   
            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
  115    125   
        let runtime_plugins = crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTime::operation_runtime_plugins(
  116    126   
            self.handle.runtime_plugins.clone(),
  117    127   
            &self.handle.conf,
  118    128   
            self.config_override,
  119    129   
        );
  120    130   
        crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTime::orchestrate(&runtime_plugins, input).await
  121    131   
    }
  122    132   
  123    133   
    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
  124    134   
    pub fn customize(
  125    135   
        self,
  126    136   
    ) -> crate::client::customize::CustomizableOperation<
  127    137   
        crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeOutput,
  128    138   
        crate::operation::restore_table_to_point_in_time::RestoreTableToPointInTimeError,
  129    139   
        Self,
  130    140   
    > {
  131    141   
        crate::client::customize::CustomizableOperation::new(self)
  132    142   
    }
         143  +
    /* FluentBuilderGenerator.kt:315 */
  133    144   
    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
  134    145   
        self.set_config_override(::std::option::Option::Some(config_override.into()));
  135    146   
        self
  136    147   
    }
  137    148   
  138    149   
    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
  139    150   
        self.config_override = config_override;
  140    151   
        self
  141    152   
    }
  142         -
    /// <p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
         153  +
    /// /* FluentBuilderGenerator.kt:498 */<p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
         154  +
    /* FluentBuilderGenerator.kt:500 */
  143    155   
    pub fn source_table_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
  144    156   
        self.inner = self.inner.source_table_arn(input.into());
  145    157   
        self
  146    158   
    }
  147         -
    /// <p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
         159  +
    /// /* FluentBuilderGenerator.kt:498 */<p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
         160  +
    /* FluentBuilderGenerator.kt:500 */
  148    161   
    pub fn set_source_table_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
  149    162   
        self.inner = self.inner.set_source_table_arn(input);
  150    163   
        self
  151    164   
    }
  152         -
    /// <p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
         165  +
    /// /* FluentBuilderGenerator.kt:518 */<p>The DynamoDB table that will be restored. This value is an Amazon Resource Name (ARN).</p>
         166  +
    /* FluentBuilderGenerator.kt:520 */
  153    167   
    pub fn get_source_table_arn(&self) -> &::std::option::Option<::std::string::String> {
  154    168   
        self.inner.get_source_table_arn()
  155    169   
    }
  156         -
    /// <p>Name of the source table that is being restored.</p>
         170  +
    /// /* FluentBuilderGenerator.kt:498 */<p>Name of the source table that is being restored.</p>
         171  +
    /* FluentBuilderGenerator.kt:500 */
  157    172   
    pub fn source_table_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
  158    173   
        self.inner = self.inner.source_table_name(input.into());
  159    174   
        self
  160    175   
    }
  161         -
    /// <p>Name of the source table that is being restored.</p>
         176  +
    /// /* FluentBuilderGenerator.kt:498 */<p>Name of the source table that is being restored.</p>
         177  +
    /* FluentBuilderGenerator.kt:500 */
  162    178   
    pub fn set_source_table_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
  163    179   
        self.inner = self.inner.set_source_table_name(input);
  164    180   
        self
  165    181   
    }
  166         -
    /// <p>Name of the source table that is being restored.</p>
         182  +
    /// /* FluentBuilderGenerator.kt:518 */<p>Name of the source table that is being restored.</p>
         183  +
    /* FluentBuilderGenerator.kt:520 */
  167    184   
    pub fn get_source_table_name(&self) -> &::std::option::Option<::std::string::String> {
  168    185   
        self.inner.get_source_table_name()
  169    186   
    }
  170         -
    /// <p>The name of the new table to which it must be restored to.</p>
         187  +
    /// /* FluentBuilderGenerator.kt:498 */<p>The name of the new table to which it must be restored to.</p>
         188  +
    /* FluentBuilderGenerator.kt:500 */
  171    189   
    pub fn target_table_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
  172    190   
        self.inner = self.inner.target_table_name(input.into());
  173    191   
        self
  174    192   
    }
  175         -
    /// <p>The name of the new table to which it must be restored to.</p>
         193  +
    /// /* FluentBuilderGenerator.kt:498 */<p>The name of the new table to which it must be restored to.</p>
         194  +
    /* FluentBuilderGenerator.kt:500 */
  176    195   
    pub fn set_target_table_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
  177    196   
        self.inner = self.inner.set_target_table_name(input);
  178    197   
        self
  179    198   
    }
  180         -
    /// <p>The name of the new table to which it must be restored to.</p>
         199  +
    /// /* FluentBuilderGenerator.kt:518 */<p>The name of the new table to which it must be restored to.</p>
         200  +
    /* FluentBuilderGenerator.kt:520 */
  181    201   
    pub fn get_target_table_name(&self) -> &::std::option::Option<::std::string::String> {
  182    202   
        self.inner.get_target_table_name()
  183    203   
    }
  184         -
    /// <p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
         204  +
    /// /* FluentBuilderGenerator.kt:498 */<p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
         205  +
    /* FluentBuilderGenerator.kt:500 */
  185    206   
    pub fn use_latest_restorable_time(mut self, input: bool) -> Self {
  186    207   
        self.inner = self.inner.use_latest_restorable_time(input);
  187    208   
        self
  188    209   
    }
  189         -
    /// <p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
         210  +
    /// /* FluentBuilderGenerator.kt:498 */<p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
         211  +
    /* FluentBuilderGenerator.kt:500 */
  190    212   
    pub fn set_use_latest_restorable_time(mut self, input: ::std::option::Option<bool>) -> Self {
  191    213   
        self.inner = self.inner.set_use_latest_restorable_time(input);
  192    214   
        self
  193    215   
    }
  194         -
    /// <p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
         216  +
    /// /* FluentBuilderGenerator.kt:518 */<p>Restore the table to the latest possible time. <code>LatestRestorableDateTime</code> is typically 5 minutes before the current time.</p>
         217  +
    /* FluentBuilderGenerator.kt:520 */
  195    218   
    pub fn get_use_latest_restorable_time(&self) -> &::std::option::Option<bool> {
  196    219   
        self.inner.get_use_latest_restorable_time()
  197    220   
    }
  198         -
    /// <p>Time in the past to restore the table to.</p>
         221  +
    /// /* FluentBuilderGenerator.kt:498 */<p>Time in the past to restore the table to.</p>
         222  +
    /* FluentBuilderGenerator.kt:500 */
  199    223   
    pub fn restore_date_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
  200    224   
        self.inner = self.inner.restore_date_time(input);
  201    225   
        self
  202    226   
    }
  203         -
    /// <p>Time in the past to restore the table to.</p>
         227  +
    /// /* FluentBuilderGenerator.kt:498 */<p>Time in the past to restore the table to.</p>
         228  +
    /* FluentBuilderGenerator.kt:500 */
  204    229   
    pub fn set_restore_date_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
  205    230   
        self.inner = self.inner.set_restore_date_time(input);
  206    231   
        self
  207    232   
    }
  208         -
    /// <p>Time in the past to restore the table to.</p>
         233  +
    /// /* FluentBuilderGenerator.kt:518 */<p>Time in the past to restore the table to.</p>
         234  +
    /* FluentBuilderGenerator.kt:520 */
  209    235   
    pub fn get_restore_date_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
  210    236   
        self.inner.get_restore_date_time()
  211    237   
    }
  212         -
    /// <p>The billing mode of the restored table.</p>
         238  +
    /// /* FluentBuilderGenerator.kt:498 */<p>The billing mode of the restored table.</p>
         239  +
    /* FluentBuilderGenerator.kt:500 */
  213    240   
    pub fn billing_mode_override(mut self, input: crate::types::BillingMode) -> Self {
  214    241   
        self.inner = self.inner.billing_mode_override(input);
  215    242   
        self
  216    243   
    }
  217         -
    /// <p>The billing mode of the restored table.</p>
         244  +
    /// /* FluentBuilderGenerator.kt:498 */<p>The billing mode of the restored table.</p>
         245  +
    /* FluentBuilderGenerator.kt:500 */
  218    246   
    pub fn set_billing_mode_override(mut self, input: ::std::option::Option<crate::types::BillingMode>) -> Self {
  219    247   
        self.inner = self.inner.set_billing_mode_override(input);
  220    248   
        self
  221    249   
    }
  222         -
    /// <p>The billing mode of the restored table.</p>
         250  +
    /// /* FluentBuilderGenerator.kt:518 */<p>The billing mode of the restored table.</p>
         251  +
    /* FluentBuilderGenerator.kt:520 */
  223    252   
    pub fn get_billing_mode_override(&self) -> &::std::option::Option<crate::types::BillingMode> {
  224    253   
        self.inner.get_billing_mode_override()
  225    254   
    }
  226         -
    ///
         255  +
    /// /* FluentBuilderGenerator.kt:436 */
  227    256   
    /// Appends an item to `GlobalSecondaryIndexOverride`.
  228    257   
    ///
  229    258   
    /// To override the contents of this collection use [`set_global_secondary_index_override`](Self::set_global_secondary_index_override).
  230    259   
    ///
  231         -
    /// <p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         260  +
    /// /* FluentBuilderGenerator.kt:443 */<p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         261  +
    /* FluentBuilderGenerator.kt:446 */
  232    262   
    pub fn global_secondary_index_override(mut self, input: crate::types::GlobalSecondaryIndex) -> Self {
  233    263   
        self.inner = self.inner.global_secondary_index_override(input);
  234    264   
        self
  235    265   
    }
  236         -
    /// <p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         266  +
    /// /* FluentBuilderGenerator.kt:498 */<p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         267  +
    /* FluentBuilderGenerator.kt:500 */
  237    268   
    pub fn set_global_secondary_index_override(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::GlobalSecondaryIndex>>) -> Self {
  238    269   
        self.inner = self.inner.set_global_secondary_index_override(input);
  239    270   
        self
  240    271   
    }
  241         -
    /// <p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         272  +
    /// /* FluentBuilderGenerator.kt:518 */<p>List of global secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         273  +
    /* FluentBuilderGenerator.kt:520 */
  242    274   
    pub fn get_global_secondary_index_override(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::GlobalSecondaryIndex>> {
  243    275   
        self.inner.get_global_secondary_index_override()
  244    276   
    }
  245         -
    ///
         277  +
    /// /* FluentBuilderGenerator.kt:436 */
  246    278   
    /// Appends an item to `LocalSecondaryIndexOverride`.
  247    279   
    ///
  248    280   
    /// To override the contents of this collection use [`set_local_secondary_index_override`](Self::set_local_secondary_index_override).
  249    281   
    ///
  250         -
    /// <p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         282  +
    /// /* FluentBuilderGenerator.kt:443 */<p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         283  +
    /* FluentBuilderGenerator.kt:446 */
  251    284   
    pub fn local_secondary_index_override(mut self, input: crate::types::LocalSecondaryIndex) -> Self {
  252    285   
        self.inner = self.inner.local_secondary_index_override(input);
  253    286   
        self
  254    287   
    }
  255         -
    /// <p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         288  +
    /// /* FluentBuilderGenerator.kt:498 */<p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         289  +
    /* FluentBuilderGenerator.kt:500 */
  256    290   
    pub fn set_local_secondary_index_override(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::LocalSecondaryIndex>>) -> Self {
  257    291   
        self.inner = self.inner.set_local_secondary_index_override(input);
  258    292   
        self
  259    293   
    }
  260         -
    /// <p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         294  +
    /// /* FluentBuilderGenerator.kt:518 */<p>List of local secondary indexes for the restored table. The indexes provided should match existing secondary indexes. You can choose to exclude some or all of the indexes at the time of restore.</p>
         295  +
    /* FluentBuilderGenerator.kt:520 */
  261    296   
    pub fn get_local_secondary_index_override(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::LocalSecondaryIndex>> {
  262    297   
        self.inner.get_local_secondary_index_override()
  263    298   
    }
  264         -
    /// <p>Provisioned throughput settings for the restored table.</p>
         299  +
    /// /* FluentBuilderGenerator.kt:498 */<p>Provisioned throughput settings for the restored table.</p>
         300  +
    /* FluentBuilderGenerator.kt:500 */
  265    301   
    pub fn provisioned_throughput_override(mut self, input: crate::types::ProvisionedThroughput) -> Self {
  266    302   
        self.inner = self.inner.provisioned_throughput_override(input);
  267    303   
        self
  268    304   
    }
  269         -
    /// <p>Provisioned throughput settings for the restored table.</p>
         305  +
    /// /* FluentBuilderGenerator.kt:498 */<p>Provisioned throughput settings for the restored table.</p>
         306  +
    /* FluentBuilderGenerator.kt:500 */
  270    307   
    pub fn set_provisioned_throughput_override(mut self, input: ::std::option::Option<crate::types::ProvisionedThroughput>) -> Self {
  271    308   
        self.inner = self.inner.set_provisioned_throughput_override(input);
  272    309   
        self
  273    310   
    }
  274         -
    /// <p>Provisioned throughput settings for the restored table.</p>
         311  +
    /// /* FluentBuilderGenerator.kt:518 */<p>Provisioned throughput settings for the restored table.</p>
         312  +
    /* FluentBuilderGenerator.kt:520 */
  275    313   
    pub fn get_provisioned_throughput_override(&self) -> &::std::option::Option<crate::types::ProvisionedThroughput> {
  276    314   
        self.inner.get_provisioned_throughput_override()
  277    315   
    }
  278         -
    /// <p>The new server-side encryption settings for the restored table.</p>
         316  +
    /// /* FluentBuilderGenerator.kt:498 */<p>The new server-side encryption settings for the restored table.</p>
         317  +
    /* FluentBuilderGenerator.kt:500 */
  279    318   
    pub fn sse_specification_override(mut self, input: crate::types::SseSpecification) -> Self {
  280    319   
        self.inner = self.inner.sse_specification_override(input);
  281    320   
        self
  282    321   
    }
  283         -
    /// <p>The new server-side encryption settings for the restored table.</p>
         322  +
    /// /* FluentBuilderGenerator.kt:498 */<p>The new server-side encryption settings for the restored table.</p>
         323  +
    /* FluentBuilderGenerator.kt:500 */
  284    324   
    pub fn set_sse_specification_override(mut self, input: ::std::option::Option<crate::types::SseSpecification>) -> Self {
  285    325   
        self.inner = self.inner.set_sse_specification_override(input);
  286    326   
        self
  287    327   
    }
  288         -
    /// <p>The new server-side encryption settings for the restored table.</p>
         328  +
    /// /* FluentBuilderGenerator.kt:518 */<p>The new server-side encryption settings for the restored table.</p>
         329  +
    /* FluentBuilderGenerator.kt:520 */
  289    330   
    pub fn get_sse_specification_override(&self) -> &::std::option::Option<crate::types::SseSpecification> {
  290    331   
        self.inner.get_sse_specification_override()
  291    332   
    }
         333  +
    /* FluentBuilderGenerator.kt:282 */
  292    334   
}

tmp-codegen-diff/codegen-client-test/dynamo/rust-client-codegen/src/operation/scan.rs

@@ -1,1 +40,49 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* OperationGenerator.kt:77 */
    2      3   
/// Orchestration and serialization glue logic for `Scan`.
           4  +
/* RustType.kt:516 */
    3      5   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
           6  +
/* RustType.kt:516 */
    4      7   
#[non_exhaustive]
           8  +
/* OperationGenerator.kt:84 */
    5      9   
pub struct Scan;
          10  +
/* OperationGenerator.kt:85 */
    6     11   
impl Scan {
    7         -
    /// Creates a new `Scan`
          12  +
    /// /* OperationGenerator.kt:86 */Creates a new `Scan`
          13  +
    /* OperationGenerator.kt:87 */
    8     14   
    pub fn new() -> Self {
          15  +
        /* OperationGenerator.kt:88 */
    9     16   
        Self
          17  +
        /* OperationGenerator.kt:87 */
   10     18   
    }
          19  +
    /* OperationGenerator.kt:138 */
   11     20   
    pub(crate) async fn orchestrate(
   12     21   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     22   
        input: crate::operation::scan::ScanInput,
   14     23   
    ) -> ::std::result::Result<
   15     24   
        crate::operation::scan::ScanOutput,
   16     25   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     26   
            crate::operation::scan::ScanError,
   18     27   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     28   
        >,
   20     29   
    > {
@@ -48,57 +370,562 @@
   68     77   
                runtime_plugins = runtime_plugins.with_operation_plugin(plugin);
   69     78   
            }
   70     79   
            runtime_plugins = runtime_plugins.with_operation_plugin(crate::config::ConfigOverrideRuntimePlugin::new(
   71     80   
                config_override,
   72     81   
                client_config.config.clone(),
   73     82   
                &client_config.runtime_components,
   74     83   
            ));
   75     84   
        }
   76     85   
        runtime_plugins
   77     86   
    }
          87  +
    /* OperationGenerator.kt:85 */
   78     88   
}
          89  +
/* OperationRuntimePluginGenerator.kt:55 */
   79     90   
impl ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin for Scan {
   80     91   
    fn config(&self) -> ::std::option::Option<::aws_smithy_types::config_bag::FrozenLayer> {
   81     92   
        let mut cfg = ::aws_smithy_types::config_bag::Layer::new("Scan");
   82     93   
   83     94   
        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedRequestSerializer::new(
   84     95   
            ScanRequestSerializer,
   85     96   
        ));
   86     97   
        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer::new(
   87     98   
            ScanResponseDeserializer,
   88     99   
        ));
   89    100   
   90    101   
        cfg.store_put(::aws_smithy_runtime_api::client::auth::AuthSchemeOptionResolverParams::new(
   91    102   
            ::aws_smithy_runtime_api::client::auth::static_resolver::StaticAuthSchemeOptionResolverParams::new(),
   92    103   
        ));
   93    104   
   94    105   
        cfg.store_put(::aws_smithy_runtime_api::client::orchestrator::Metadata::new("Scan", "DynamoDB"));
   95    106   
   96    107   
        ::std::option::Option::Some(cfg.freeze())
   97    108   
    }
   98    109   
   99    110   
    fn runtime_components(
  100    111   
        &self,
  101    112   
        _: &::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder,
  102    113   
    ) -> ::std::borrow::Cow<'_, ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder> {
  103    114   
        #[allow(unused_mut)]
  104    115   
        let mut rcb = ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder::new("Scan")
  105    116   
            .with_interceptor(::aws_smithy_runtime::client::stalled_stream_protection::StalledStreamProtectionInterceptor::default())
  106    117   
            .with_interceptor(ScanEndpointParamsInterceptor)
  107    118   
            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::TransientErrorClassifier::<
  108    119   
                crate::operation::scan::ScanError,
  109    120   
            >::new())
  110    121   
            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::ModeledAsRetryableClassifier::<
  111    122   
                crate::operation::scan::ScanError,
  112    123   
            >::new());
  113    124   
  114    125   
        ::std::borrow::Cow::Owned(rcb)
  115    126   
    }
  116    127   
}
  117    128   
         129  +
/* ResponseDeserializerGenerator.kt:64 */
  118    130   
#[derive(Debug)]
  119    131   
struct ScanResponseDeserializer;
  120    132   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for ScanResponseDeserializer {
  121    133   
    fn deserialize_nonstreaming(
  122    134   
        &self,
  123    135   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
  124    136   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  125    137   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  126    138   
        let headers = response.headers();
  127    139   
        let body = response.body().bytes().expect("body loaded");
  128    140   
        #[allow(unused_mut)]
  129    141   
        let mut force_error = false;
  130    142   
  131    143   
        let parse_result = if !success && status != 200 || force_error {
  132    144   
            crate::protocol_serde::shape_scan::de_scan_http_error(status, headers, body)
  133    145   
        } else {
  134    146   
            crate::protocol_serde::shape_scan::de_scan_http_response(status, headers, body)
  135    147   
        };
  136    148   
        crate::protocol_serde::type_erase_result(parse_result)
  137    149   
    }
  138    150   
}
         151  +
/* RequestSerializerGenerator.kt:67 */
  139    152   
#[derive(Debug)]
  140    153   
struct ScanRequestSerializer;
  141    154   
impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for ScanRequestSerializer {
  142    155   
    #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)]
  143    156   
    fn serialize_input(
  144    157   
        &self,
  145    158   
        input: ::aws_smithy_runtime_api::client::interceptors::context::Input,
  146    159   
        _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  147    160   
    ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> {
  148    161   
        let input = input.downcast::<crate::operation::scan::ScanInput>().expect("correct type");
  149    162   
        let _header_serialization_settings = _cfg
  150    163   
            .load::<crate::serialization_settings::HeaderSerializationSettings>()
  151    164   
            .cloned()
  152    165   
            .unwrap_or_default();
  153    166   
        let mut request_builder = {
  154    167   
            fn uri_base(
  155    168   
                _input: &crate::operation::scan::ScanInput,
  156    169   
                output: &mut ::std::string::String,
  157    170   
            ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> {
  158    171   
                use ::std::fmt::Write as _;
  159    172   
                ::std::write!(output, "/").expect("formatting should succeed");
  160    173   
                ::std::result::Result::Ok(())
  161    174   
            }
  162    175   
            #[allow(clippy::unnecessary_wraps)]
  163    176   
            fn update_http_builder(
  164    177   
                input: &crate::operation::scan::ScanInput,
  165    178   
                builder: ::http::request::Builder,
  166    179   
            ) -> ::std::result::Result<::http::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
  167    180   
                let mut uri = ::std::string::String::new();
  168    181   
                uri_base(input, &mut uri)?;
  169    182   
                ::std::result::Result::Ok(builder.method("POST").uri(uri))
  170    183   
            }
  171    184   
            let mut builder = update_http_builder(&input, ::http::request::Builder::new())?;
  172    185   
            builder = _header_serialization_settings.set_default_header(builder, ::http::header::CONTENT_TYPE, "application/x-amz-json-1.0");
  173    186   
            builder = _header_serialization_settings.set_default_header(
  174    187   
                builder,
  175    188   
                ::http::header::HeaderName::from_static("x-amz-target"),
  176    189   
                "DynamoDB_20120810.Scan",
  177    190   
            );
  178    191   
            builder
  179    192   
        };
  180    193   
        let body = ::aws_smithy_types::body::SdkBody::from(crate::protocol_serde::shape_scan::ser_scan_input(&input)?);
  181    194   
        if let Some(content_length) = body.content_length() {
  182    195   
            let content_length = content_length.to_string();
  183    196   
            request_builder = _header_serialization_settings.set_default_header(request_builder, ::http::header::CONTENT_LENGTH, &content_length);
  184    197   
        }
  185    198   
        ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap())
  186    199   
    }
  187    200   
}
         201  +
/* EndpointParamsInterceptorGenerator.kt:86 */
  188    202   
#[derive(Debug)]
  189    203   
struct ScanEndpointParamsInterceptor;
  190    204   
  191    205   
impl ::aws_smithy_runtime_api::client::interceptors::Intercept for ScanEndpointParamsInterceptor {
  192    206   
    fn name(&self) -> &'static str {
  193    207   
        "ScanEndpointParamsInterceptor"
  194    208   
    }
  195    209   
  196    210   
    fn read_before_execution(
  197    211   
        &self,
  198    212   
        context: &::aws_smithy_runtime_api::client::interceptors::context::BeforeSerializationInterceptorContextRef<
  199    213   
            '_,
  200    214   
            ::aws_smithy_runtime_api::client::interceptors::context::Input,
  201    215   
            ::aws_smithy_runtime_api::client::interceptors::context::Output,
  202    216   
            ::aws_smithy_runtime_api::client::interceptors::context::Error,
  203    217   
        >,
  204    218   
        cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  205    219   
    ) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> {
  206    220   
        let _input = context.input().downcast_ref::<ScanInput>().ok_or("failed to downcast to ScanInput")?;
  207    221   
  208    222   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  209    223   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  210    224   
        })?;
  211    225   
        cfg.interceptor_state()
  212    226   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  213    227   
        ::std::result::Result::Ok(())
  214    228   
    }
  215    229   
}
  216    230   
  217    231   
// The get_* functions below are generated from JMESPath expressions in the
  218    232   
// operationContextParams trait. They target the operation's input shape.
  219    233   
         234  +
/* OperationErrorGenerator.kt:79 */
  220    235   
/// Error type for the `ScanError` operation.
         236  +
/* RustType.kt:516 */
  221    237   
#[non_exhaustive]
         238  +
/* RustType.kt:516 */
  222    239   
#[derive(::std::fmt::Debug)]
  223         -
pub enum ScanError {
  224         -
    /// <p>An error occurred on the server side.</p>
         240  +
pub /* OperationErrorGenerator.kt:81 */ enum ScanError {
         241  +
    /// /* OperationErrorGenerator.kt:83 */<p>An error occurred on the server side.</p>
         242  +
    /* OperationErrorGenerator.kt:86 */
  225    243   
    InternalServerError(crate::types::error::InternalServerError),
         244  +
    /* OperationErrorGenerator.kt:83 */
  226    245   
    #[allow(missing_docs)] // documentation missing in model
         246  +
    /* OperationErrorGenerator.kt:86 */
  227    247   
    InvalidEndpointError(crate::types::error::InvalidEndpointError),
  228         -
    /// <p>Your request rate is too high. The AWS SDKs for DynamoDB automatically retry requests that receive this exception. Your request is eventually successful, unless your retry queue is too large to finish. Reduce the frequency of requests and use exponential backoff. For more information, go to <a href="https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Programming.Errors.html#Programming.Errors.RetryAndBackoff">Error Retries and Exponential Backoff</a> in the <i>Amazon DynamoDB Developer Guide</i>.</p>
         248  +
    /// /* OperationErrorGenerator.kt:83 */<p>Your request rate is too high. The AWS SDKs for DynamoDB automatically retry requests that receive this exception. Your request is eventually successful, unless your retry queue is too large to finish. Reduce the frequency of requests and use exponential backoff. For more information, go to <a href="https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Programming.Errors.html#Programming.Errors.RetryAndBackoff">Error Retries and Exponential Backoff</a> in the <i>Amazon DynamoDB Developer Guide</i>.</p>
         249  +
    /* OperationErrorGenerator.kt:86 */
  229    250   
    ProvisionedThroughputExceededError(crate::types::error::ProvisionedThroughputExceededError),
  230         -
    /// <p>Throughput exceeds the current throughput quota for your account. Please contact AWS Support at <a href="https://aws.amazon.com/support">AWS Support</a> to request a quota increase.</p>
         251  +
    /// /* OperationErrorGenerator.kt:83 */<p>Throughput exceeds the current throughput quota for your account. Please contact AWS Support at <a href="https://aws.amazon.com/support">AWS Support</a> to request a quota increase.</p>
         252  +
    /* OperationErrorGenerator.kt:86 */
  231    253   
    RequestLimitExceeded(crate::types::error::RequestLimitExceeded),
  232         -
    /// <p>The operation tried to access a nonexistent table or index. The resource might not be specified correctly, or its status might not be <code>ACTIVE</code>.</p>
         254  +
    /// /* OperationErrorGenerator.kt:83 */<p>The operation tried to access a nonexistent table or index. The resource might not be specified correctly, or its status might not be <code>ACTIVE</code>.</p>
         255  +
    /* OperationErrorGenerator.kt:86 */
  233    256   
    ResourceNotFoundError(crate::types::error::ResourceNotFoundError),
         257  +
    /* OperationErrorGenerator.kt:88 */
  234    258   
    /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).
  235    259   
    #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \
  236    260   
    variable wildcard pattern and check `.code()`:
  237    261   
     \
  238    262   
    &nbsp;&nbsp;&nbsp;`err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }`
  239    263   
     \
  240    264   
    See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-ScanError) for what information is available for the error.")]
  241    265   
    Unhandled(crate::error::sealed_unhandled::Unhandled),
         266  +
    /* OperationErrorGenerator.kt:81 */
  242    267   
}
         268  +
/* OperationErrorGenerator.kt:218 */
  243    269   
impl ScanError {
         270  +
    /* OperationErrorGenerator.kt:219 */
  244    271   
    /// Creates the `ScanError::Unhandled` variant from any error type.
  245    272   
    pub fn unhandled(
  246    273   
        err: impl ::std::convert::Into<::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>>,
  247    274   
    ) -> Self {
  248    275   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  249    276   
            source: err.into(),
  250    277   
            meta: ::std::default::Default::default(),
  251    278   
        })
  252    279   
    }
  253    280   
  254    281   
    /// Creates the `ScanError::Unhandled` variant from an [`ErrorMetadata`](::aws_smithy_types::error::ErrorMetadata).
  255    282   
    pub fn generic(err: ::aws_smithy_types::error::ErrorMetadata) -> Self {
  256    283   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  257    284   
            source: err.clone().into(),
  258    285   
            meta: err,
  259    286   
        })
  260    287   
    }
  261         -
    ///
         288  +
    /// /* OperationErrorGenerator.kt:236 */
  262    289   
    /// Returns error metadata, which includes the error code, message,
  263    290   
    /// request ID, and potentially additional information.
  264    291   
    ///
         292  +
    /* OperationErrorGenerator.kt:242 */
  265    293   
    pub fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
         294  +
        /* OperationErrorGenerator.kt:243 */
  266    295   
        match self {
         296  +
            /* OperationErrorGenerator.kt:246 */
  267    297   
            Self::InternalServerError(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
         298  +
            /* OperationErrorGenerator.kt:246 */
  268    299   
            Self::InvalidEndpointError(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
         300  +
            /* OperationErrorGenerator.kt:246 */
  269    301   
            Self::ProvisionedThroughputExceededError(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
         302  +
            /* OperationErrorGenerator.kt:246 */
  270    303   
            Self::RequestLimitExceeded(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
         304  +
            /* OperationErrorGenerator.kt:246 */
  271    305   
            Self::ResourceNotFoundError(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
  272         -
            Self::Unhandled(e) => &e.meta,
         306  +
            /* OperationErrorGenerator.kt:251 */ Self::Unhandled(e) => &e.meta,
         307  +
            /* OperationErrorGenerator.kt:243 */
  273    308   
        }
         309  +
        /* OperationErrorGenerator.kt:242 */
  274    310   
    }
         311  +
    /* OperationErrorGenerator.kt:257 */
  275    312   
    /// Returns `true` if the error kind is `ScanError::InternalServerError`.
         313  +
    /* OperationErrorGenerator.kt:258 */
  276    314   
    pub fn is_internal_server_error(&self) -> bool {
         315  +
        /* OperationErrorGenerator.kt:259 */
  277    316   
        matches!(self, Self::InternalServerError(_))
         317  +
        /* OperationErrorGenerator.kt:258 */
  278    318   
    }
         319  +
    /* OperationErrorGenerator.kt:257 */
  279    320   
    /// Returns `true` if the error kind is `ScanError::InvalidEndpointError`.
         321  +
    /* OperationErrorGenerator.kt:258 */
  280    322   
    pub fn is_invalid_endpoint_error(&self) -> bool {
         323  +
        /* OperationErrorGenerator.kt:259 */
  281    324   
        matches!(self, Self::InvalidEndpointError(_))
         325  +
        /* OperationErrorGenerator.kt:258 */
  282    326   
    }
         327  +
    /* OperationErrorGenerator.kt:257 */
  283    328   
    /// Returns `true` if the error kind is `ScanError::ProvisionedThroughputExceededError`.
         329  +
    /* OperationErrorGenerator.kt:258 */
  284    330   
    pub fn is_provisioned_throughput_exceeded_error(&self) -> bool {
         331  +
        /* OperationErrorGenerator.kt:259 */
  285    332   
        matches!(self, Self::ProvisionedThroughputExceededError(_))
         333  +
        /* OperationErrorGenerator.kt:258 */
  286    334   
    }
         335  +
    /* OperationErrorGenerator.kt:257 */
  287    336   
    /// Returns `true` if the error kind is `ScanError::RequestLimitExceeded`.
         337  +
    /* OperationErrorGenerator.kt:258 */
  288    338   
    pub fn is_request_limit_exceeded(&self) -> bool {
         339  +
        /* OperationErrorGenerator.kt:259 */
  289    340   
        matches!(self, Self::RequestLimitExceeded(_))
         341  +
        /* OperationErrorGenerator.kt:258 */
  290    342   
    }
         343  +
    /* OperationErrorGenerator.kt:257 */
  291    344   
    /// Returns `true` if the error kind is `ScanError::ResourceNotFoundError`.
         345  +
    /* OperationErrorGenerator.kt:258 */
  292    346   
    pub fn is_resource_not_found_error(&self) -> bool {
         347  +
        /* OperationErrorGenerator.kt:259 */
  293    348   
        matches!(self, Self::ResourceNotFoundError(_))
         349  +
        /* OperationErrorGenerator.kt:258 */
  294    350   
    }
         351  +
    /* OperationErrorGenerator.kt:218 */
  295    352   
}
         353  +
/* OperationErrorGenerator.kt:269 */
  296    354   
impl ::std::error::Error for ScanError {
         355  +
    /* OperationErrorGenerator.kt:270 */
  297    356   
    fn source(&self) -> ::std::option::Option<&(dyn ::std::error::Error + 'static)> {
         357  +
        /* OperationErrorGenerator.kt:318 */
  298    358   
        match self {
  299         -
            Self::InternalServerError(_inner) => ::std::option::Option::Some(_inner),
  300         -
            Self::InvalidEndpointError(_inner) => ::std::option::Option::Some(_inner),
  301         -
            Self::ProvisionedThroughputExceededError(_inner) => ::std::option::Option::Some(_inner),
  302         -
            Self::RequestLimitExceeded(_inner) => ::std::option::Option::Some(_inner),
  303         -
            Self::ResourceNotFoundError(_inner) => ::std::option::Option::Some(_inner),
  304         -
            Self::Unhandled(_inner) => ::std::option::Option::Some(&*_inner.source),
         359  +
            /* OperationErrorGenerator.kt:321 */
         360  +
            Self::InternalServerError(_inner) =>
         361  +
            /* OperationErrorGenerator.kt:283 */
         362  +
            {
         363  +
                ::std::option::Option::Some(_inner)
         364  +
            }
         365  +
            ,
         366  +
            /* OperationErrorGenerator.kt:321 */
         367  +
            Self::InvalidEndpointError(_inner) =>
         368  +
            /* OperationErrorGenerator.kt:283 */
         369  +
            {
         370  +
                ::std::option::Option::Some(_inner)
         371  +
            }
         372  +
            ,
         373  +
            /* OperationErrorGenerator.kt:321 */
         374  +
            Self::ProvisionedThroughputExceededError(_inner) =>
         375  +
            /* OperationErrorGenerator.kt:283 */
         376  +
            {
         377  +
                ::std::option::Option::Some(_inner)
         378  +
            }
         379  +
            ,
         380  +
            /* OperationErrorGenerator.kt:321 */
         381  +
            Self::RequestLimitExceeded(_inner) =>
         382  +
            /* OperationErrorGenerator.kt:283 */
         383  +
            {
         384  +
                ::std::option::Option::Some(_inner)
         385  +
            }
         386  +
            ,
         387  +
            /* OperationErrorGenerator.kt:321 */
         388  +
            Self::ResourceNotFoundError(_inner) =>
         389  +
            /* OperationErrorGenerator.kt:283 */
         390  +
            {
         391  +
                ::std::option::Option::Some(_inner)
         392  +
            }
         393  +
            ,
         394  +
            /* OperationErrorGenerator.kt:326 */
         395  +
            Self::Unhandled(_inner) => {
         396  +
                /* OperationErrorGenerator.kt:279 */
         397  +
                ::std::option::Option::Some(&*_inner.source)
         398  +
                /* OperationErrorGenerator.kt:326 */
         399  +
            } /* OperationErrorGenerator.kt:318 */
  305    400   
        }
         401  +
        /* OperationErrorGenerator.kt:270 */
  306    402   
    }
         403  +
    /* OperationErrorGenerator.kt:269 */
  307    404   
}
         405  +
/* OperationErrorGenerator.kt:133 */
  308    406   
impl ::std::fmt::Display for ScanError {
         407  +
    /* OperationErrorGenerator.kt:134 */
  309    408   
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         409  +
        /* OperationErrorGenerator.kt:318 */
  310    410   
        match self {
  311         -
            Self::InternalServerError(_inner) => _inner.fmt(f),
  312         -
            Self::InvalidEndpointError(_inner) => _inner.fmt(f),
  313         -
            Self::ProvisionedThroughputExceededError(_inner) => _inner.fmt(f),
  314         -
            Self::RequestLimitExceeded(_inner) => _inner.fmt(f),
  315         -
            Self::ResourceNotFoundError(_inner) => _inner.fmt(f),
         411  +
            /* OperationErrorGenerator.kt:321 */
         412  +
            Self::InternalServerError(_inner) =>
         413  +
            /* OperationErrorGenerator.kt:151 */
         414  +
            {
         415  +
                _inner.fmt(f)
         416  +
            }
         417  +
            ,
         418  +
            /* OperationErrorGenerator.kt:321 */
         419  +
            Self::InvalidEndpointError(_inner) =>
         420  +
            /* OperationErrorGenerator.kt:151 */
         421  +
            {
         422  +
                _inner.fmt(f)
         423  +
            }
         424  +
            ,
         425  +
            /* OperationErrorGenerator.kt:321 */
         426  +
            Self::ProvisionedThroughputExceededError(_inner) =>
         427  +
            /* OperationErrorGenerator.kt:151 */
         428  +
            {
         429  +
                _inner.fmt(f)
         430  +
            }
         431  +
            ,
         432  +
            /* OperationErrorGenerator.kt:321 */
         433  +
            Self::RequestLimitExceeded(_inner) =>
         434  +
            /* OperationErrorGenerator.kt:151 */
         435  +
            {
         436  +
                _inner.fmt(f)
         437  +
            }
         438  +
            ,
         439  +
            /* OperationErrorGenerator.kt:321 */
         440  +
            Self::ResourceNotFoundError(_inner) =>
         441  +
            /* OperationErrorGenerator.kt:151 */
         442  +
            {
         443  +
                _inner.fmt(f)
         444  +
            }
         445  +
            ,
         446  +
            /* OperationErrorGenerator.kt:326 */
  316    447   
            Self::Unhandled(_inner) => {
         448  +
                /* OperationErrorGenerator.kt:139 */
  317    449   
                if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) {
  318    450   
                    write!(f, "unhandled error ({code})")
  319    451   
                } else {
  320    452   
                    f.write_str("unhandled error")
  321    453   
                }
  322         -
            }
         454  +
                /* OperationErrorGenerator.kt:326 */
         455  +
            } /* OperationErrorGenerator.kt:318 */
  323    456   
        }
         457  +
        /* OperationErrorGenerator.kt:134 */
  324    458   
    }
         459  +
    /* OperationErrorGenerator.kt:133 */
  325    460   
}
         461  +
/* OperationErrorGenerator.kt:182 */
  326    462   
impl ::aws_smithy_types::retry::ProvideErrorKind for ScanError {
         463  +
    /* OperationErrorGenerator.kt:186 */
  327    464   
    fn code(&self) -> ::std::option::Option<&str> {
         465  +
        /* OperationErrorGenerator.kt:187 */
  328    466   
        ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self)
         467  +
        /* OperationErrorGenerator.kt:186 */
  329    468   
    }
         469  +
    /* OperationErrorGenerator.kt:190 */
  330    470   
    fn retryable_error_kind(&self) -> ::std::option::Option<::aws_smithy_types::retry::ErrorKind> {
         471  +
        /* OperationErrorGenerator.kt:197 */
  331    472   
        ::std::option::Option::None
         473  +
        /* OperationErrorGenerator.kt:190 */
  332    474   
    }
         475  +
    /* OperationErrorGenerator.kt:182 */
  333    476   
}
         477  +
/* OperationErrorGenerator.kt:163 */
  334    478   
impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for ScanError {
         479  +
    /* OperationErrorGenerator.kt:164 */
  335    480   
    fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
         481  +
        /* OperationErrorGenerator.kt:318 */
  336    482   
        match self {
  337         -
            Self::InternalServerError(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  338         -
            Self::InvalidEndpointError(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  339         -
            Self::ProvisionedThroughputExceededError(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  340         -
            Self::RequestLimitExceeded(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  341         -
            Self::ResourceNotFoundError(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  342         -
            Self::Unhandled(_inner) => &_inner.meta,
         483  +
            /* OperationErrorGenerator.kt:321 */
         484  +
            Self::InternalServerError(_inner) =>
         485  +
            /* OperationErrorGenerator.kt:169 */
         486  +
            {
         487  +
                ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner)
         488  +
            }
         489  +
            ,
         490  +
            /* OperationErrorGenerator.kt:321 */
         491  +
            Self::InvalidEndpointError(_inner) =>
         492  +
            /* OperationErrorGenerator.kt:169 */
         493  +
            {
         494  +
                ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner)
         495  +
            }
         496  +
            ,
         497  +
            /* OperationErrorGenerator.kt:321 */
         498  +
            Self::ProvisionedThroughputExceededError(_inner) =>
         499  +
            /* OperationErrorGenerator.kt:169 */
         500  +
            {
         501  +
                ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner)
         502  +
            }
         503  +
            ,
         504  +
            /* OperationErrorGenerator.kt:321 */
         505  +
            Self::RequestLimitExceeded(_inner) =>
         506  +
            /* OperationErrorGenerator.kt:169 */
         507  +
            {
         508  +
                ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner)
         509  +
            }
         510  +
            ,
         511  +
            /* OperationErrorGenerator.kt:321 */
         512  +
            Self::ResourceNotFoundError(_inner) =>
         513  +
            /* OperationErrorGenerator.kt:169 */
         514  +
            {
         515  +
                ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner)
         516  +
            }
         517  +
            ,
         518  +
            /* OperationErrorGenerator.kt:326 */
         519  +
            Self::Unhandled(_inner) => {
         520  +
                /* OperationErrorGenerator.kt:168 */
         521  +
                &_inner.meta
         522  +
                /* OperationErrorGenerator.kt:326 */
         523  +
            } /* OperationErrorGenerator.kt:318 */
  343    524   
        }
         525  +
        /* OperationErrorGenerator.kt:164 */
  344    526   
    }
         527  +
    /* OperationErrorGenerator.kt:163 */
  345    528   
}
         529  +
/* OperationErrorGenerator.kt:109 */
  346    530   
impl ::aws_smithy_runtime_api::client::result::CreateUnhandledError for ScanError {
         531  +
    /* OperationErrorGenerator.kt:110 */
  347    532   
    fn create_unhandled_error(
  348    533   
        source: ::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>,
  349    534   
        meta: ::std::option::Option<::aws_smithy_types::error::ErrorMetadata>,
  350    535   
    ) -> Self {
         536  +
        /* OperationErrorGenerator.kt:121 */
  351    537   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  352    538   
            source,
  353    539   
            meta: meta.unwrap_or_default(),
  354    540   
        })
         541  +
        /* OperationErrorGenerator.kt:110 */
  355    542   
    }
         543  +
    /* OperationErrorGenerator.kt:109 */
  356    544   
}
  357    545   
         546  +
/* CodegenDelegator.kt:255 */
  358    547   
pub use crate::operation::scan::_scan_output::ScanOutput;
  359    548   
         549  +
/* CodegenDelegator.kt:255 */
  360    550   
pub use crate::operation::scan::_scan_input::ScanInput;
  361    551   
         552  +
/* RustModule.kt:172 */
  362    553   
mod _scan_input;
  363    554   
         555  +
/* RustModule.kt:172 */
  364    556   
mod _scan_output;
  365    557   
  366         -
/// Builders
         558  +
/// /* CodegenDelegator.kt:51 */Builders
  367    559   
pub mod builders;
  368    560   
  369         -
/// Paginator for this operation
         561  +
/// /* CodegenDelegator.kt:51 */Paginator for this operation
  370    562   
pub mod paginator;